Example usage for com.amazonaws.services.autoscaling.model DescribeAutoScalingGroupsRequest setNextToken

List of usage examples for com.amazonaws.services.autoscaling.model DescribeAutoScalingGroupsRequest setNextToken

Introduction

In this page you can find the example usage for com.amazonaws.services.autoscaling.model DescribeAutoScalingGroupsRequest setNextToken.

Prototype


public void setNextToken(String nextToken) 

Source Link

Document

The token for the next set of items to return.

Usage

From source file:com.bodybuilding.turbine.discovery.AsgTagInstanceDiscovery.java

License:Apache License

/**
 * Returns auto scaling groups that have the CLUSTER_TAG_KEY tag
 * @return collection of AutoScalingGroup that contain the CLUSTER_TAG_KEY
 *//*from w ww . jav a2 s .  c  o m*/
private Collection<AutoScalingGroup> findAutoscalingGroups() {
    String token = null;
    List<AutoScalingGroup> groupList = new ArrayList<>();
    do {
        DescribeAutoScalingGroupsRequest request = new DescribeAutoScalingGroupsRequest();
        request.setNextToken(token);
        DescribeAutoScalingGroupsResult result = asgClient.describeAutoScalingGroups(request);
        result.getAutoScalingGroups().stream().filter(a -> containsTag(a.getTags())).forEach(groupList::add);

        token = result.getNextToken();
    } while (!Strings.isNullOrEmpty(token));

    return groupList;
}

From source file:com.netflix.simianarmy.client.aws.AWSClient.java

License:Apache License

/**
 * Describe a set of specific auto scaling groups.
 *
 * @param names the ASG names//from  w  w w.  j  a  v  a 2s .  co m
 * @return the auto scaling groups
 */
public List<AutoScalingGroup> describeAutoScalingGroups(String... names) {
    if (names == null || names.length == 0) {
        LOGGER.info(String.format("Getting all auto-scaling groups in region %s.", region));
    } else {
        LOGGER.info(
                String.format("Getting auto-scaling groups for %d names in region %s.", names.length, region));
    }

    List<AutoScalingGroup> asgs = new LinkedList<AutoScalingGroup>();

    AmazonAutoScalingClient asgClient = asgClient();
    DescribeAutoScalingGroupsRequest request = new DescribeAutoScalingGroupsRequest();
    if (names != null) {
        request.setAutoScalingGroupNames(Arrays.asList(names));
    }
    DescribeAutoScalingGroupsResult result = asgClient.describeAutoScalingGroups(request);

    asgs.addAll(result.getAutoScalingGroups());
    while (result.getNextToken() != null) {
        request.setNextToken(result.getNextToken());
        result = asgClient.describeAutoScalingGroups(request);
        asgs.addAll(result.getAutoScalingGroups());
    }

    LOGGER.info(String.format("Got %d auto-scaling groups in region %s.", asgs.size(), region));
    return asgs;
}

From source file:org.lendingclub.mercator.aws.ASGScanner.java

License:Apache License

private void forEachAsg(Consumer<AutoScalingGroup> consumer, String... asgNames) {

    DescribeAutoScalingGroupsRequest request = new DescribeAutoScalingGroupsRequest();
    if (asgNames != null && asgNames.length > 0) {
        request.withAutoScalingGroupNames(asgNames);
    }//w  w  w.  j a  v a 2  s.  c o  m
    String token = null;
    do {
        DescribeAutoScalingGroupsResult results = getClient().describeAutoScalingGroups(request);
        token = results.getNextToken();
        results.getAutoScalingGroups().forEach(consumer);

        request.setNextToken(token);

    } while (tokenHasNext(token));
}