Search in sources :

Example 1 with WorkflowSummary

use of com.twitter.ambrose.model.WorkflowSummary in project ambrose by twitter.

the class HRavenWorkflowIndexReadService method getWorkflows.

@Override
public PaginatedList<WorkflowSummary> getWorkflows(String cluster, Status status, String username, int numResults, byte[] nextPageStart) throws IOException {
    List<WorkflowSummary> workflowSummaryList = Lists.newArrayList();
    PaginatedResult<Flow> flows = flowQueueService.getPaginatedFlowsForStatus(cluster, convertStatus(status), numResults, username, nextPageStart);
    for (Flow flow : flows.getValues()) {
        workflowSummaryList.add(toWorkflowSummary(flow));
    }
    PaginatedList<WorkflowSummary> paginatedList = new PaginatedList<WorkflowSummary>(workflowSummaryList);
    if (flows.getNextStartRow() != null) {
        paginatedList.setNextPageStart(new String(Base64.encode(flows.getNextStartRow())));
    }
    return paginatedList;
}
Also used : WorkflowSummary(com.twitter.ambrose.model.WorkflowSummary) PaginatedList(com.twitter.ambrose.model.PaginatedList) Flow(com.twitter.hraven.Flow)

Example 2 with WorkflowSummary

use of com.twitter.ambrose.model.WorkflowSummary in project ambrose by twitter.

the class TestHRavenWorkflowIndexReadService method main.

/**
   * Main method
   */
public static void main(String[] args) throws IOException {
    String cluster = args.length > 0 ? args[0] : "dw@smf1";
    Status status = args.length > 1 ? Status.valueOf(args[1]) : Status.SUCCEEDED;
    String username = args.length > 2 ? args[2] : null;
    HRavenWorkflowIndexReadService service = new HRavenWorkflowIndexReadService();
    PaginatedList<WorkflowSummary> paginatedList = service.getWorkflows(cluster, status, username, 10, null);
    print(String.format("Found %d flows", paginatedList.getResults().size()));
    for (WorkflowSummary summary : paginatedList.getResults()) {
        print(String.format("%s %s %s %d", summary.getName(), summary.getId(), summary.getStatus(), summary.getProgress()));
    }
}
Also used : Status(com.twitter.ambrose.model.WorkflowSummary.Status) WorkflowSummary(com.twitter.ambrose.model.WorkflowSummary)

Aggregations

WorkflowSummary (com.twitter.ambrose.model.WorkflowSummary)2 PaginatedList (com.twitter.ambrose.model.PaginatedList)1 Status (com.twitter.ambrose.model.WorkflowSummary.Status)1 Flow (com.twitter.hraven.Flow)1