List of usage examples for com.amazonaws.services.ec2.model DescribeInstancesResult DescribeInstancesResult
DescribeInstancesResult
From source file:com.netflix.edda.EddaEc2Client.java
License:Apache License
public DescribeInstancesResult describeInstances(DescribeInstancesRequest request) { validateEmpty("Filter", request.getFilters()); TypeReference<List<Reservation>> ref = new TypeReference<List<Reservation>>() { };/*from w ww.j av a 2 s. c o m*/ String url = config.url() + "/api/v2/aws/instances;_expand"; try { List<Reservation> reservations = parse(ref, doGet(url)); List<String> ids = request.getInstanceIds(); if (shouldFilter(ids)) { List<Reservation> rs = new ArrayList<Reservation>(); for (Reservation r : reservations) { List<Instance> is = new ArrayList<Instance>(); for (Instance i : r.getInstances()) { if (matches(ids, i.getInstanceId())) is.add(i); } if (is.size() > 0) rs.add(r.withInstances(is)); } reservations = rs; } return new DescribeInstancesResult().withReservations(reservations); } catch (IOException e) { throw new AmazonClientException("Faled to parse " + url, e); } }
From source file:com.netflix.spinnaker.clouddriver.aws.security.AmazonClientInvocationHandler.java
License:Apache License
public DescribeInstancesResult describeInstances(DescribeInstancesRequest request) { return new DescribeInstancesResult().withReservations(new Reservation().withReservationId("1234") .withInstances(describe(request, "instanceIds", "../view/instances", Instance.class))); }
From source file:jp.primecloud.auto.aws.typica.EucaEc2Client.java
License:Open Source License
@Override public DescribeInstancesResult describeInstances(DescribeInstancesRequest describeInstancesRequest) { try {// ww w .j a v a2 s. c om List<ReservationDescription> descriptions = jec2 .describeInstances(describeInstancesRequest.getInstanceIds()); List<Reservation> reservations = new ReservationConverter().convert(descriptions); return new DescribeInstancesResult().withReservations(reservations); } catch (EC2Exception e) { throw new AmazonClientException(e); } }
From source file:org.elasticsearch.discovery.ec2.AmazonEC2Mock.java
License:Apache License
@Override public DescribeInstancesResult describeInstances(DescribeInstancesRequest describeInstancesRequest) throws AmazonServiceException, AmazonClientException { Collection<Instance> filteredInstances = new ArrayList<>(); logger.debug("--> mocking describeInstances"); for (Instance instance : instances) { boolean tagFiltered = false; boolean instanceFound = false; Map<String, List<String>> expectedTags = new HashMap<>(); Map<String, List<String>> instanceTags = new HashMap<>(); for (Tag tag : instance.getTags()) { List<String> tags = instanceTags.get(tag.getKey()); if (tags == null) { tags = new ArrayList<>(); instanceTags.put(tag.getKey(), tags); }/* w w w .j a v a 2 s .co m*/ tags.add(tag.getValue()); } for (Filter filter : describeInstancesRequest.getFilters()) { // If we have the same tag name and one of the values, we add the instance if (filter.getName().startsWith("tag:")) { tagFiltered = true; String tagName = filter.getName().substring(4); // if we have more than one value for the same key, then the key is appended with .x Pattern p = Pattern.compile("\\.\\d+", Pattern.DOTALL); Matcher m = p.matcher(tagName); if (m.find()) { int i = tagName.lastIndexOf("."); tagName = tagName.substring(0, i); } List<String> tags = expectedTags.get(tagName); if (tags == null) { tags = new ArrayList<>(); expectedTags.put(tagName, tags); } tags.addAll(filter.getValues()); } } if (tagFiltered) { logger.debug("--> expected tags: [{}]", expectedTags); logger.debug("--> instance tags: [{}]", instanceTags); instanceFound = true; for (Map.Entry<String, List<String>> expectedTagsEntry : expectedTags.entrySet()) { List<String> instanceTagValues = instanceTags.get(expectedTagsEntry.getKey()); if (instanceTagValues == null) { instanceFound = false; break; } for (String expectedValue : expectedTagsEntry.getValue()) { boolean valueFound = false; for (String instanceTagValue : instanceTagValues) { if (instanceTagValue.equals(expectedValue)) { valueFound = true; } } if (valueFound == false) { instanceFound = false; } } } } if (tagFiltered == false || instanceFound) { logger.debug("--> instance added"); filteredInstances.add(instance); } else { logger.debug("--> instance filtered"); } } return new DescribeInstancesResult().withReservations(new Reservation().withInstances(filteredInstances)); }
From source file:org.jenkinsci.plugins.ec2harness.MockAmazonEC2.java
License:Open Source License
@Override public DescribeInstancesResult describeInstances(DescribeInstancesRequest describeInstancesRequest) throws AmazonServiceException, AmazonClientException { printcall();//from w ww. ja v a 2 s . c om DescribeInstancesResult describeInstancesResult = new DescribeInstancesResult(); if (instances.size() == 0) { return describeInstancesResult; } Reservation reservation = new Reservation(); ArrayList<Reservation> reservations = new ArrayList<Reservation>(); reservations.add(reservation); describeInstancesResult.setReservations(reservations); reservation.setInstances(instances); return describeInstancesResult; }
From source file:org.jenkinsci.plugins.ec2harness.MockAmazonEC2.java
License:Open Source License
@Override public DescribeInstancesResult describeInstances() throws AmazonServiceException, AmazonClientException { System.out.println("MockAmazonEC2.describeinstances() num instances: " + this.instances.size()); printcall();// ww w . j a v a 2 s.co m DescribeInstancesResult describeInstancesResult = new DescribeInstancesResult(); ArrayList<Reservation> reservations = new ArrayList<Reservation>(); describeInstancesResult.setReservations(reservations); Reservation reservation = new Reservation(); reservation.setInstances(instances); reservations.add(reservation); return describeInstancesResult; }