Example usage for com.amazonaws.services.ecs AmazonECS listClusters

List of usage examples for com.amazonaws.services.ecs AmazonECS listClusters

Introduction

In this page you can find the example usage for com.amazonaws.services.ecs AmazonECS listClusters.

Prototype

ListClustersResult listClusters(ListClustersRequest listClustersRequest);

Source Link

Document

Returns a list of existing clusters.

Usage

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

License:Apache License

/**
 * Provides a set of ECS cluster ARNs./* ww w .  j av a2  s . com*/
 * Either uses the cache, or queries the ECS service.
 * @param ecs The AmazonECS client to use for querying.
 * @param providerCache The ProviderCache to retrieve clusters from.
 * @return A set of ECS cluster ARNs.
 */
Set<String> getClusters(AmazonECS ecs, ProviderCache providerCache) {
    Set<String> clusters = providerCache.getAll(ECS_CLUSTERS.toString()).stream()
            .filter(cacheData -> cacheData.getAttributes().get("region").equals(region)
                    && cacheData.getAttributes().get("account").equals(accountName))
            .map(cacheData -> (String) cacheData.getAttributes().get("clusterArn")).collect(Collectors.toSet());

    if (clusters == null || clusters.isEmpty()) {
        clusters = new HashSet<>();
        String nextToken = null;
        do {
            ListClustersRequest listClustersRequest = new ListClustersRequest();
            if (nextToken != null) {
                listClustersRequest.setNextToken(nextToken);
            }
            ListClustersResult listClustersResult = ecs.listClusters(listClustersRequest);
            clusters.addAll(listClustersResult.getClusterArns());

            nextToken = listClustersResult.getNextToken();
        } while (nextToken != null && nextToken.length() != 0);
    }

    return clusters;
}

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

License:Apache License

@Override
protected List<String> getItems(AmazonECS ecs, ProviderCache providerCache) {
    List<String> allClusterArns = new LinkedList<>();
    String nextToken = null;/*from   w ww.j  a va 2  s  .c  om*/
    do {
        ListClustersRequest listClustersRequest = new ListClustersRequest();
        if (nextToken != null) {
            listClustersRequest.setNextToken(nextToken);
        }

        ListClustersResult listClustersResult = ecs.listClusters(listClustersRequest);
        allClusterArns.addAll(listClustersResult.getClusterArns());

        nextToken = listClustersResult.getNextToken();
    } while (nextToken != null && nextToken.length() != 0);

    return allClusterArns;
}