Example usage for com.amazonaws.services.autoscaling.model DescribeAutoScalingGroupsResult getNextToken

List of usage examples for com.amazonaws.services.autoscaling.model DescribeAutoScalingGroupsResult getNextToken

Introduction

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

Prototype


public String getNextToken() 

Source Link

Document

A string that indicates that the response contains more items than can be returned in a single response.

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
 *//*  www . j  a va 2s  .com*/
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.aws.AWSClient.java

License:Apache License

/**
 * Describe a set of specific auto scaling groups.
 *
 * @return the auto scaling groups/*from www.  ja v a2s  .c o  m*/
 */
public List<AutoScalingGroup> describeAutoScalingGroups(String... names) {
    List<AutoScalingGroup> asgs = new LinkedList<AutoScalingGroup>();

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

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

    return asgs;
}

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/*  www  . j  av a 2s.  c  o 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:io.macgyver.plugin.cloud.aws.scanner.ASGScanner.java

License:Apache License

private void forEachAsg(Region region, Consumer<AutoScalingGroup> consumer) {
    AmazonAutoScalingClient client = new AmazonAutoScalingClient(getAWSServiceClient().getCredentialsProvider())
            .withRegion(region);//from ww w  . j  av a 2 s  . c  om

    DescribeAutoScalingGroupsRequest request = new DescribeAutoScalingGroupsRequest();
    if (targetAutoScalingGroupNames != null) {
        request.withAutoScalingGroupNames(targetAutoScalingGroupNames);
    }
    DescribeAutoScalingGroupsResult results = client.describeAutoScalingGroups(request);
    String token = results.getNextToken();
    results.getAutoScalingGroups().forEach(consumer);

    while (!Strings.isNullOrEmpty(token) && !token.equals("null")) {
        results = client.describeAutoScalingGroups(request.withNextToken(token));
        token = results.getNextToken();
        results.getAutoScalingGroups().forEach(consumer);
    }
}

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);
    }/*from   ww w .ja va2  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));
}