Shreyas arya

Generation

generate functionMon, 23 Jan 2023

We need to create validators for each status. The validator will check if transition from current state is allowed or not. All validators are injected into WorkflowExecutionValidator. private List<Validator> validators WorkflowExecutionValidator will pick up an appropriate validator from a list and check if transition is allowed. Validators are implemented for each workflow execution status Validators are applied in production code

@Override public boolean canTransitionTo(WorkflowExecutionStatus status) { return validators.stream().filter(validator -> validator.getStatus() == status).findAny().get().validate(this); } public class WorkflowExecutionValidator extends Validator<WorkflowExecution> { @Override public boolean validate(WorkflowExecution workflowExecution) { return workflowExecution.getStatus() == WorkflowExecutionStatus.PAUSED; } }

Questions about programming?Chat with your personal AI assistant