org.springframework.batch.core.jsr.job.flow.support.state

## Class JsrSplitState

- java.lang.Object
- - org.springframework.batch.core.job.flow.support.state.AbstractState
  - - org.springframework.batch.core.job.flow.support.state.SplitState
    - - org.springframework.batch.core.jsr.job.flow.support.state.JsrSplitState

- All Implemented Interfaces:
    FlowHolder, State

      public class JsrSplitState
      extends SplitState

  JSR-352 states that artifacts cannot set the ExitStatus from within a split for a job. Because of this, this state will reset the exit status once the flows have completed (prior to aggregation of the results).
  Since:
    3.0
  Author:
    Michael Minella

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `JsrSplitState(java.util.Collection<Flow> flows, java.lang.String name)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected FlowExecutionStatus` | `doAggregation(java.util.Collection<FlowExecution> results, FlowExecutor executor)` Resets the `JobExecution`'s exit status before aggregating the results of the flows within the split.

    - ### Methods inherited from class org.springframework.batch.core.job.flow.support.state.SplitState

      `getFlows, handle, isEndState, setTaskExecutor`

    - ### Methods inherited from class org.springframework.batch.core.job.flow.support.state.AbstractState

      `getName, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### JsrSplitState

          public JsrSplitState(java.util.Collection<Flow> flows,
                               java.lang.String name)

      Parameters:
        `flows` - `Flow`s to be executed in parallel
        `name` -

  - ### Method Detail

    - #### doAggregation

          protected FlowExecutionStatus doAggregation(java.util.Collection<FlowExecution> results,
                                                      FlowExecutor executor)

      Resets the `JobExecution`'s exit status before aggregating the results of the flows within the split.
      Overrides:
        `doAggregation` in class `SplitState`
      Parameters:
        `results` - the `FlowExecution`s from each of the flows executed within this split
        `executor` - the `FlowExecutor` used to execute the flows