Class DecisionState

  • All Implemented Interfaces:
    State

    public class DecisionState
    extends AbstractState
    State that requires a decider to make the status decision.
    Since:
    2.0
    Author:
    Dave Syer
    • Constructor Detail

      • DecisionState

        public DecisionState​(JobExecutionDecider decider,
                             java.lang.String name)
        Parameters:
        decider - the JobExecutionDecider instance to make the status decision.
        name - the name of the decision state.
    • Method Detail

      • handle

        public FlowExecutionStatus handle​(FlowExecutor executor)
                                   throws java.lang.Exception
        Description copied from interface: State
        Handle some business or processing logic and return a status that can be used to drive a flow to the next State. The status can be any string, but special meaning is assigned to the static constants in FlowExecution. The context can be used by implementations to do whatever they need to do. The same context will be passed to all State instances, so implementations should be careful that the context is thread-safe, or used in a thread-safe manner.
        Specified by:
        handle in interface State
        Specified by:
        handle in class AbstractState
        Parameters:
        executor - the context passed in by the caller
        Returns:
        a status for the execution
        Throws:
        java.lang.Exception - if anything goes wrong
      • isEndState

        public boolean isEndState()
        Description copied from interface: State
        Inquire as to whether a State is an end state. Implementations should return false if processing can continue, even if that would require a restart.
        Returns:
        true if this State is the end of processing