@@ -0,0 +1,1993 @@
+package com.neverwinterdp.scribengin.dataflow;%0A%0Aimport java.util.List;%0A%0Aimport com.neverwinterdp.registry.Registry;%0Aimport com.neverwinterdp.registry.RegistryException;%0Aimport com.neverwinterdp.scribengin.ScribenginClient;%0Aimport com.neverwinterdp.scribengin.dataflow.registry.DataflowRegistry;%0Aimport com.neverwinterdp.vm.VMDescriptor;%0A%0Apublic class DataflowClient %7B%0A  private ScribenginClient scribenginClient ;%0A  private DataflowRegistry dflRegistry ;%0A  %0A  public DataflowClient(ScribenginClient scribenginClient, String dataflowPath) throws Exception %7B%0A    this.scribenginClient = scribenginClient;%0A    dflRegistry = new DataflowRegistry(scribenginClient.getRegistry(), dataflowPath) ;%0A  %7D%0A  %0A  public Registry getRegistry() %7B return scribenginClient.getRegistry(); %7D%0A  %0A  public DataflowRegistry getDataflowRegistry() %7B return this.dflRegistry ; %7D%0A  %0A  public ScribenginClient getScribenginClient() %7B return this.scribenginClient; %7D%0A  %0A  %0A  public List%3CVMDescriptor%3E getActiveDataflowWorkers() throws RegistryException %7B%0A    return dflRegistry.getWorkerRegistry().getActiveWorkers();%0A  %7D%0A  %0A  public int countActiveDataflowWorkers() throws RegistryException %7B%0A    return dflRegistry.getWorkerRegistry().countActiveDataflowWorkers();%0A  %7D%0A  %0A  public DataflowLifecycleStatus getStatus() throws RegistryException %7B%0A    return dflRegistry.getStatus() ;%0A  %7D%0A  %0A  public void waitForEqualOrGreaterThanStatus(long checkPeriod, long timeout, DataflowLifecycleStatus status) throws Exception %7B%0A    long stopTime = System.currentTimeMillis() + timeout;%0A    while(System.currentTimeMillis() %3C stopTime) %7B%0A      DataflowLifecycleStatus currentStatus = dflRegistry.getStatus();%0A      if(currentStatus.equalOrGreaterThan(status)) return;%0A      Thread.sleep(checkPeriod);%0A    %7D%0A    String dataflowId = dflRegistry.getConfigRegistry().getDataflowConfig().getId();%0A    throw new Exception(%22Cannot get the equal or greater than %22 + status + %22 after %22 + timeout + %22ms for the dataflow %22 + dataflowId);%0A  %7D%0A%7D

Implement V2