Interface State
- All Known Implementing Classes:
AbstractState
,DecisionState
,EndState
,FlowState
,JsrEndState
,JsrSplitState
,JsrStepState
,SimpleFlowFactoryBean.DelegateState
,SplitState
,StepState
public interface State
- Since:
- 2.0
- Author:
- Dave Syer
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.String
getName()
The name of the state.FlowExecutionStatus
handle(FlowExecutor executor)
Handle some business or processing logic and return a status that can be used to drive a flow to the nextState
.boolean
isEndState()
Inquire as to whether aState
is an end state.
Method Detail
getName
java.lang.String getName()
The name of the state. Should be unique within a flow.- Returns:
- the name of this state
handle
FlowExecutionStatus handle(FlowExecutor executor) throws java.lang.Exception
Handle some business or processing logic and return a status that can be used to drive a flow to the nextState
. The status can be any string, but special meaning is assigned to the static constants inFlowExecution
. The context can be used by implementations to do whatever they need to do. The same context will be passed to allState
instances, so implementations should be careful that the context is thread-safe, or used in a thread-safe manner.- Parameters:
executor
- the context passed in by the caller- Returns:
- a status for the execution
- Throws:
java.lang.Exception
- if anything goes wrong