public Task taskById(String taskId) { return tasks .stream() .filter(it -> it.getId().equals(taskId)) .findFirst() .orElse(null); }
public TaskComplete( @Nonnull Object source, @Nonnull Stage stage, @Nonnull Task task ) { this( source, stage.getExecution().getType(), stage.getExecution().getId(), stage.getId(), stage.getType(), stage.getName(), task.getId(), task.getImplementingClass(), task.getName(), task.getStatus() ); }
public TaskStarted( @Nonnull Object source, @Nonnull Stage stage, @Nonnull Task task ) { this( source, stage.getExecution().getType(), stage.getExecution().getId(), stage.getId(), stage.getType(), stage.getName(), task.getId(), task.getImplementingClass(), task.getName() ); }
private void onTaskStarted(TaskStarted event) { Execution execution = retrieve(event); List<Stage> stages = execution.getStages(); stages .stream() .filter(it -> it.getId().equals(event.getStageId())) .findFirst() .ifPresent(stage -> delegate.beforeTask( persister, stage, stage.getTasks().stream().filter(it -> it.getId().equals(event.getTaskId())).findFirst().get() ) ); }
private void onTaskComplete(TaskComplete event) { Execution execution = retrieve(event); List<Stage> stages = execution.getStages(); ExecutionStatus status = event.getStatus(); stages .stream() .filter(it -> it.getId().equals(event.getStageId())) .findFirst() .ifPresent(stage -> delegate.afterTask(persister, stage, stage.getTasks().stream().filter(it -> it.getId().equals(event.getTaskId())).findFirst().get(), status, // TODO: not sure if status.isSuccessful covers all the weird cases here status.isSuccessful() ) ); }