public static boolean clusterExists()

in aws-blog-hbase-on-emr/hbase-connector/src/main/java/com/amazonaws/hbase/kinesis/utils/EMRUtils.java [137:162]


	public static boolean clusterExists(AmazonElasticMapReduce client, String clusterIdentifier) {
		if (clusterIdentifier != null && !clusterIdentifier.isEmpty()) {
			ListClustersResult clustersList = client.listClusters();
			ListIterator<ClusterSummary> iterator = clustersList.getClusters().listIterator();
			ClusterSummary summary;
			for (summary = iterator.next() ; iterator.hasNext();summary = iterator.next()) {
				if (summary.getId().equals(clusterIdentifier)) {
					DescribeClusterRequest describeClusterRequest = new DescribeClusterRequest().withClusterId(clusterIdentifier);	
					DescribeClusterResult result = client.describeCluster(describeClusterRequest);	
					if (result != null) {
						Cluster cluster = result.getCluster();
						//check if HBase is installed on this cluster
						if (isHBaseInstalled(client, cluster.getId())) return false;
						String state = cluster.getStatus().getState();
						LOG.info(clusterIdentifier + " is " + state + ". ");
						if (state.equalsIgnoreCase("RUNNING") ||state.equalsIgnoreCase("WAITING"))	{
							LOG.info("The cluster with id " + clusterIdentifier + " exists and is " + state);   
							return true;
						}
					}
				}		
			}					
		}
		LOG.info("The cluster with id " + clusterIdentifier + " does not exist");
		return false;  
	}