private void initExecutor(final Collection<ConfigExecutor> configs) { executor = new PipelineExecutor(configs); } }
public PipelineExecutor(final Collection<ConfigExecutor> configExecutors) { init(configExecutors); }
public String generateTaskId() { return ExecutionIdGenerator.generateExecutionId(); }
public void setTaskInStoppedStatus(final PipelineExecutorTaskImpl task) { task.setPipelineStatus(PipelineExecutorTask.Status.STOPPED); task.getTaskDef().getStages() .stream() .filter(stage -> PipelineExecutorTask.Status.RUNNING.equals(task.getStageStatus(stage)) || PipelineExecutorTask.Status.SCHEDULED.equals(task.getStageStatus(stage))) .forEach(stage -> task.setStageStatus(stage, PipelineExecutorTask.Status.STOPPED)); task.clearErrors(); task.setOutput(null); } }
@Override public void delete(final String taskId) throws PipelineExecutorException { final TaskEntry entry = getTaskEntry(taskId); if (entry != null) { throw new PipelineExecutorException("An active PipelineExecutorTask was found for taskId: " + taskId + " delete operation is only available for the following status set: " + deleteEnabledStatus); } final PipelineExecutorTrace trace = pipelineExecutorRegistry.getExecutorTrace(taskId); if (trace == null) { throw new PipelineExecutorException("No PipelineExecutorTask was found for taskId: " + taskId); } else { if (!deleteEnabledStatus.contains(trace.getTask().getPipelineStatus())) { throw new PipelineExecutorException("A PipelineExecutorTask in status: " + trace.getTask().getPipelineStatus().name() + " can not" + " be deleted. Delete operation is available for the following status set: " + deleteEnabledStatus); } else { pipelineExecutorRegistry.deregister(taskId); } } }
protected void assertHasSameInfo(PipelineExecutorTaskDef expectedTaskDef, PipelineExecutorTaskDef taskDef) { assertEquals(expectedTaskDef.getInput(), taskDef.getInput()); assertEquals(expectedTaskDef.getPipeline(), taskDef.getPipeline()); assertEquals(expectedTaskDef.getProviderId(), taskDef.getProviderId()); assertEquals(expectedTaskDef.getProviderType(), taskDef.getProviderType()); } }
@JsonIgnore @Override public String getPipelineId() { return getTask().getTaskDef().getPipeline(); }
public <T> void execute(final Input input, final Pipeline pipeline, final Consumer<T> callback, final PipelineEventListener... eventListeners) { final PipelineContext context = new PipelineContext(pipeline); context.start(input); context.pushCallback(callback); propagateEvent(new BeforePipelineExecutionEvent(context.getExecutionId(), pipeline), eventListeners); continuePipeline(context, eventListeners); propagateEvent(new AfterPipelineExecutionEvent(context.getExecutionId(), pipeline), eventListeners); }
private void setId(final String executionId) { this.executionId = executionId; getTaskDef().getInput().put(PIPELINE_EXECUTION_ID, executionId); }
private void assertEqualsException(PipelineExecutorException expectedValue, PipelineExecutorException value) { assertEquals(expectedValue.getMessage(), value.getMessage()); assertEquals(expectedValue.getCause(), value.getCause()); } }
private PipelineExecutorError mockError(String error, String detail) { return new PipelineExecutorError(error, detail); }
public void setTaskInStoppedStatus(final PipelineExecutorTaskImpl task) { task.setPipelineStatus(PipelineExecutorTask.Status.STOPPED); task.getTaskDef().getStages() .stream() .filter(stage -> PipelineExecutorTask.Status.RUNNING.equals(task.getStageStatus(stage)) || PipelineExecutorTask.Status.SCHEDULED.equals(task.getStageStatus(stage))) .forEach(stage -> task.setStageStatus(stage, PipelineExecutorTask.Status.STOPPED)); task.clearErrors(); task.setOutput(null); } }
@Override public void delete(final String taskId) throws PipelineExecutorException { final TaskEntry entry = getTaskEntry(taskId); if (entry != null) { throw new PipelineExecutorException("An active PipelineExecutorTask was found for taskId: " + taskId + " delete operation is only available for the following status set: " + deleteEnabledStatus); } final PipelineExecutorTrace trace = pipelineExecutorRegistry.getExecutorTrace(taskId); if (trace == null) { throw new PipelineExecutorException("No PipelineExecutorTask was found for taskId: " + taskId); } else { if (!deleteEnabledStatus.contains(trace.getTask().getPipelineStatus())) { throw new PipelineExecutorException("A PipelineExecutorTask in status: " + trace.getTask().getPipelineStatus().name() + " can not" + " be deleted. Delete operation is available for the following status set: " + deleteEnabledStatus); } else { pipelineExecutorRegistry.deregister(taskId); } } }
protected void assertHasSameInfo(PipelineExecutorTaskDef expectedTaskDef, PipelineExecutorTaskDef taskDef) { assertEquals(expectedTaskDef.getInput(), taskDef.getInput()); assertEquals(expectedTaskDef.getPipeline(), taskDef.getPipeline()); assertEquals(expectedTaskDef.getProviderId(), taskDef.getProviderId()); assertEquals(expectedTaskDef.getProviderType(), taskDef.getProviderType()); } }
/** * added for testing/internal purposes, interested parties must use createPipelineExecutor() */ protected PipelineExecutor newPipelineExecutor(final Collection<ConfigExecutor> configs) { return new PipelineExecutor(configs); }
@JsonIgnore @Override public String getPipelineId() { return getTask().getTaskDef().getPipeline(); }
public <T> void execute(final Input input, final Pipeline pipeline, final Consumer<T> callback, final PipelineEventListener... eventListeners) { final PipelineContext context = new PipelineContext(pipeline); context.start(input); context.pushCallback(callback); propagateEvent(new BeforePipelineExecutionEvent(context.getExecutionId(), pipeline), eventListeners); continuePipeline(context, eventListeners); propagateEvent(new AfterPipelineExecutionEvent(context.getExecutionId(), pipeline), eventListeners); }
public PipelineExecutor(final Collection<ConfigExecutor> configExecutors) { init(configExecutors); }
public String generateTaskId() { return ExecutionIdGenerator.generateExecutionId(); }
/** * added for testing/internal purposes, interested parties must use createPipelineExecutor() */ protected PipelineExecutor newPipelineExecutor(final Collection<ConfigExecutor> configs) { return new PipelineExecutor(configs); }