io.vtom.vertx.pipeline.Pipeline Maven / Gradle / Ivy
package io.vtom.vertx.pipeline;
import io.vertx.core.Vertx;
import io.vtom.vertx.pipeline.lifecycle.PipeLifecycle;
import io.vtom.vertx.pipeline.step.StepIN;
import io.vtom.vertx.pipeline.step.StepOUT;
import java.util.List;
public interface Pipeline {
static Pipeline pipeline(Vertx vertx) {
return new PipelineImpl(vertx);
}
static Pipeline join(List steps) {
Pipeline pipeline = null;
for (PipeStep step : steps) {
pipeline = step.join();
}
return pipeline;
}
PipeLifecycle lifecycle();
Pipeline next(PipeRunnable piperunnable);
PipePromise enqueue();
}