Example usage for com.amazonaws.services.ecs.model ListTasksResult getNextToken

List of usage examples for com.amazonaws.services.ecs.model ListTasksResult getNextToken

Introduction

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

Prototype


public String getNextToken() 

Source Link

Document

The nextToken value to include in a future ListTasks request.

Usage

From source file:com.netflix.spinnaker.clouddriver.ecs.provider.agent.TaskCachingAgent.java

License:Apache License

@Override
protected List<Task> getItems(AmazonECS ecs, ProviderCache providerCache) {
    List<Task> taskList = new LinkedList<>();
    Set<String> clusters = getClusters(ecs, providerCache);

    for (String cluster : clusters) {
        String nextToken = null;// w  w w  .  j a v  a 2 s  .  c o  m
        do {
            ListTasksRequest listTasksRequest = new ListTasksRequest().withCluster(cluster);
            if (nextToken != null) {
                listTasksRequest.setNextToken(nextToken);
            }
            ListTasksResult listTasksResult = ecs.listTasks(listTasksRequest);
            List<String> taskArns = listTasksResult.getTaskArns();
            if (taskArns.size() == 0) {
                continue;
            }
            List<Task> tasks = ecs
                    .describeTasks(new DescribeTasksRequest().withCluster(cluster).withTasks(taskArns))
                    .getTasks();
            taskList.addAll(tasks);
            nextToken = listTasksResult.getNextToken();
        } while (nextToken != null && nextToken.length() != 0);
    }
    return taskList;
}