Example usage for com.amazonaws.services.ec2.model Image getTags

List of usage examples for com.amazonaws.services.ec2.model Image getTags

Introduction

In this page you can find the example usage for com.amazonaws.services.ec2.model Image getTags.

Prototype


public java.util.List<Tag> getTags() 

Source Link

Document

Any tags assigned to the image.

Usage

From source file:com.axemblr.yab.cli.ListCommand.java

License:Apache License

@Override
public void run() {
    YaB yab = YaB.createWithEnvironmentCredentials(getRegion());

    try {//from w  ww . j  ava2s.c o  m
        System.out.println(";; using region " + getRegion());

        for (Image image : yab.describeBackedImages()) {
            System.out.printf("%s : %s : %s - %s (%s)%n", image.getImageId(),
                    (image.getPublic() ? "public" : "private"), image.getState(), image.getName(),
                    image.getDescription());
            System.out.printf(String.format("tags: %s%n", image.getTags()));
        }

    } finally {
        yab.close();
    }
}

From source file:com.pinterest.arcee.handler.SpecsHandler.java

License:Apache License

public void updateAllImages(Long after) {
    DescribeImagesRequest request = new DescribeImagesRequest();
    request.setOwners(Arrays.asList(OWNER_ID));
    Filter envFilter = new Filter("tag:environment", Arrays.asList("prod"));
    Filter archFilter = new Filter("tag:release", Arrays.asList("precise"));
    Filter vtypeFilter = new Filter("virtualization-type", Arrays.asList("hvm"));
    Filter rootType = new Filter("root-device-type", Arrays.asList("instance-store"));
    Filter archType = new Filter("architecture", Arrays.asList("x86_64"));
    request.setFilters(Arrays.asList(envFilter, archFilter, vtypeFilter, rootType, archType));
    DescribeImagesResult result = client.describeImages(request);
    List<Image> images = result.getImages();
    for (Image image : images) {
        try {/*w  w w . java 2  s .com*/
            ImageBean imageBean = new ImageBean();
            imageBean.setId(image.getImageId());
            Long createTime = getDateTime(image.getCreationDate());
            if (createTime <= after) {
                continue;
            }
            imageBean.setPublish_date(getDateTime(image.getCreationDate()));
            List<Tag> tags = image.getTags();
            for (Tag tag : tags) {
                if (tag.getKey().equals("application")) {
                    String app = tag.getValue();
                    imageBean.setApp_name(app);
                    break;
                }
            }

            imageDAO.insertOrUpdate(imageBean);
        } catch (Exception ex) {
            LOG.error("Failed to get image info:", ex);
        }
    }
}

From source file:jp.aws.test.ec2.EC2Instance.java

License:Apache License

/**
 * AMI?/*from  ww  w .j av a2  s  . c  om*/
 *
 * @param HashMap
 *            <String,String> filterMap : ID: ownerid => self, amazon,
 *            redhat, 00000000  root-device-type => ebs, instance-store
 *            architecture => i386, x86_64 name => amzn-ami*
 * @return
 * @throws Exception
 * @note - ????????
 */
public List<AMIItem> ami_list(HashMap<String, String> filterMap) {

    List<AMIItem> amiItemList = new ArrayList<AMIItem>();

    // 
    this.clientManager.changeRegion();

    // AMI??
    DescribeImagesRequest describeImagesRequest = new DescribeImagesRequest();
    List<String> ownersList = new ArrayList<String>();

    // OwnerID?(self, amazon, redhat, 00000000)
    ownersList.add(filterMap.get("ownerid"));
    describeImagesRequest.setOwners(ownersList);

    // AMI????????Filter?
    ArrayList<Filter> filters = new ArrayList<Filter>();

    Filter filter = new Filter();
    filter.setName("image-type");

    // machine
    List<String> valueList = new ArrayList<String>();
    valueList.add("machine");
    filter.setValues(valueList);

    // Filter
    filters.add(filter);

    // 
    for (Iterator<String> it = filterMap.keySet().iterator(); it.hasNext();) {
        String key = it.next();
        Log.d("ami_list", String.format("key:%s, value:%s", key, filterMap.get(key)));
        if (key.toLowerCase().equals("ownerid"))
            continue;
        filters.add(new Filter().withName(key).withValues(filterMap.get(key)));
    }

    // Filter
    describeImagesRequest.setFilters(filters);

    // ????AMI??
    DescribeImagesResult describeImagesResult = this.clientManager.ec2().describeImages(describeImagesRequest);

    // AMI?List?(Image?com.amazonaws.services.ec2.model?Image???)
    List<Image> amiList = describeImagesResult.getImages();

    // ?AMI??
    for (Image image : amiList) {
        // http://docs.amazonwebservices.com/AWSAndroidSDK/latest/javadoc/com/amazonaws/services/ec2/model/Image.html
        AMIItem amiItem = new AMIItem();

        StringBuilder builder = new StringBuilder();

        amiItem.imageId = image.getImageId();
        amiItem.imageType = image.getImageType();
        amiItem.imageLocation = image.getImageLocation();
        amiItem.name = image.getName();
        amiItem.architecture = image.getArchitecture();
        amiItem.platform = image.getPlatform();
        amiItem.state = image.getState();
        amiItem.ownerId = image.getOwnerId();
        amiItem.rootDeviceType = image.getRootDeviceType();
        amiItem.rootDeviceName = image.getRootDeviceName();
        amiItem.description = image.getDescription();
        builder.setLength(0); // ?
        List<Tag> tags = image.getTags(); // tag
        for (Tag tag : tags) {
            builder.append(tag.getValue());
            builder.append(", ");
        }

        // ?
        amiItemList.add(amiItem);
    }

    return amiItemList;
}