DescribeImagesRequest request = new DescribeImagesRequest(); request.withOwners("self"); Collection<Image> images = client.describeImages(request).getImages();
/** * This method requests existing AMI details from AWS. * The method only requests the AMIs owned by the accessing AWS account. * @return List of AMIs */ private List<Image> getAMIListFromAWS() { DescribeImagesRequest request = new DescribeImagesRequest(); request.withOwners("self"); DescribeImagesResult result = amazonEC2.describeImages(request); return result.getImages(); }
/** * * @param ownerId * @param imageIds * @param ec2Client * @return */ public List<Image> getImages(String ownerId, List<String> imageIds, AmazonEC2 ec2Client) { List<Image> images = null; DescribeImagesRequest request = new DescribeImagesRequest(); if (ownerId != null && !ownerId.isEmpty()) { request = request.withOwners(ownerId); } if (imageIds != null && !imageIds.isEmpty()) { request = request.withImageIds(imageIds); } DescribeImagesResult result = ec2Client.describeImages(request); if (result != null) { images = result.getImages(); } else { log.warn("No images found"); } return images; }
@Override public List<Image> getMyImages() { DescribeImagesRequest request = new DescribeImagesRequest(); request.withOwners(AmiOwner.SELF.getValue()); DescribeImagesResult result = client.describeImages(request); return result.getImages(); }
@Override protected void doScan() { AmazonEC2Client c = getClient(); NeoRxClient neoRx = getNeoRxClient(); Preconditions.checkNotNull(neoRx); GraphNodeGarbageCollector gc = newGarbageCollector().bindScannerContext(); DescribeImagesRequest req = new DescribeImagesRequest().withOwners("self"); DescribeImagesResult result = c.describeImages(req); rateLimit(); result.getImages().forEach(i -> { try { ObjectNode n = convertAwsObject(i, getRegion()); String cypher = "merge (x:AwsAmi {aws_arn:{aws_arn}}) set x+={props} set x.updateTs=timestamp() return x"; neoRx.execCypher(cypher, "aws_arn", n.path("aws_arn").asText(), "props",n).forEach( r->{ gc.MERGE_ACTION.accept(r); getShadowAttributeRemover().removeTagAttributes("AwsAmi", n, r); }); incrementEntityCount(); } catch (RuntimeException e) { maybeThrow(e,"problem scanning AMI "+i.getImageId()); } }); }