Example usage for com.amazonaws.services.datapipeline.model QueryObjectsResult getIds

List of usage examples for com.amazonaws.services.datapipeline.model QueryObjectsResult getIds

Introduction

In this page you can find the example usage for com.amazonaws.services.datapipeline.model QueryObjectsResult getIds.

Prototype


public java.util.List<String> getIds() 

Source Link

Document

The identifiers that match the query selectors.

Usage

From source file:com.shazam.dataengineering.pipelinebuilder.AWSProxy.java

License:Apache License

public boolean hasRunningTasks(String pipelineId, String marker) {
    QueryObjectsRequest request = new QueryObjectsRequest().withSphere("ATTEMPT").withPipelineId(pipelineId);
    if (marker != null) {
        request.setMarker(marker);//  www. j a  v  a2  s  .  c  o m
    }

    QueryObjectsResult queryResult = client.queryObjects(request);

    DescribeObjectsResult describeResult = describeTasks(pipelineId, queryResult.getIds());
    List<com.amazonaws.services.datapipeline.model.PipelineObject> tasks = describeResult.getPipelineObjects();
    for (com.amazonaws.services.datapipeline.model.PipelineObject task : tasks) {
        for (Field field : task.getFields()) {
            // Is task running?
            if (field.getKey().equals("@status") && field.getStringValue().equals("RUNNING")) {
                return true;
            }
        }
    }

    if (queryResult.getHasMoreResults()) {
        return hasRunningTasks(pipelineId, queryResult.getMarker());
    } else {
        return false;
    }
}