Example usage for com.amazonaws.services.ec2.model Reservation Reservation

List of usage examples for com.amazonaws.services.ec2.model Reservation Reservation

Introduction

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

Prototype

Reservation

Source Link

Usage

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.converter.ReservationConverter.java

License:Open Source License

@Override
protected Reservation convertObject(ReservationDescription from) {
    Reservation to = new Reservation();

    to.setReservationId(from.getReservationId());
    to.setOwnerId(from.getOwner());/*from  w w w .j  a v a 2 s .  c  o m*/
    to.setRequesterId(from.getRequestId());
    to.setGroupNames(from.getGroups());
    to.setInstances(new InstanceConverter().convert(from.getInstances()));

    return to;
}

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);
            }/*from w  w  w.  j a  va2 s  .  c  o  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 RunInstancesResult runInstances(RunInstancesRequest runInstancesRequest)
        throws AmazonServiceException, AmazonClientException {
    printcall();//  w ww. j  a  v a2 s  .com

    Instance instance = new Instance();
    Random random = new Random();
    instance.setInstanceId("" + random.nextInt(10000));
    InstanceState instanceState = new InstanceState();
    instanceState.setName(InstanceStateName.Running);
    instance.setState(instanceState);

    ArrayList<Instance> instances = new ArrayList<Instance>();
    instances.add(instance);
    this.instances.add(instance);

    Reservation reservation = new Reservation();
    reservation.setInstances(instances);

    RunInstancesResult runInstancesResult = new RunInstancesResult();
    runInstancesResult.setReservation(reservation);

    return runInstancesResult;
}

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  w w .j a  va  2 s  . co  m
    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();/*from  w  w w  .ja va  2 s.  c om*/
    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;
}