private void validateProgress(Progress progress) { if (progress == null) throw new IllegalArgumentException("Progress is null"); if (progress.getWorkflowName() != getWorkflowName()) throw new IllegalArgumentException("Invalid WorkflowName"); }
@Override public List<Workflow> listUserWorkflows() throws IOException { return progressStore.listByUserId(authorizationManager.getCurrentUser().getUserId()).stream() .map(progress -> progress.getWorkflowName().createWorkflow(progress)).collect(Collectors.toList()); }
@Override public Workflow loadWorkflow(long id) throws IOException { Progress progress = progressStore.get(id); if (progress == null) return null; authorizationManager.throwIfNotOwner(progress.getUser()); return progress.getWorkflowName().createWorkflow(progress); }
public static WorkflowStateDto asDto(@Nonnull Workflow from, int stepNumber) { WorkflowStateDto dto = new WorkflowStateDto(); dto.setName(from.getProgress().getWorkflowName().getDescription()); dto.setWorkflowId(from.getProgress().getId()); dto.setLog(from.getLog()); dto.setComplete(from.isComplete()); dto.setLastModified(formatDateTime(from.getProgress().getLastModified())); if (stepNumber >= from.getLog().size()) { if (from.isComplete()) { dto.setMessage(from.getConfirmMessage()); } else { dto.setStepNumber(from.getNextStepNumber()); } } else { dto.setStepNumber(stepNumber); } if (dto.getStepNumber() != null) { WorkflowStepPrompt prompt = from.getStep(stepNumber); dto.setMessage(prompt.getMessage()); dto.setInputTypes(prompt.getInputTypes()); } return dto; }
public static WorkflowStateDto asDto(@Nonnull Workflow from) { WorkflowStateDto dto = new WorkflowStateDto(); dto.setName(from.getProgress().getWorkflowName().getDescription()); dto.setWorkflowId(from.getProgress().getId()); dto.setLog(from.getLog()); dto.setComplete(from.isComplete()); dto.setLastModified(formatDateTime(from.getProgress().getLastModified())); if (from.isComplete()) { dto.setMessage(from.getConfirmMessage()); } else { dto.setStepNumber(from.getNextStepNumber()); WorkflowStepPrompt prompt = from.getStep(dto.getStepNumber()); dto.setMessage(prompt.getMessage()); dto.setInputTypes(prompt.getInputTypes()); } return dto; }