Class SplitDoneAction

All Implemented Interfaces:
STMTransitionAction<Process>

public class SplitDoneAction extends AbstractSTMTransitionAction<Process, StartProcessingPayload>
SplitDoneAction handles both splitPartiallyDone and splitDone events. This initializes a transient variable Process.subProcesses to the processes that need to be created. This is used in the post processor to start all the sub process workers.
  • Field Details

  • Constructor Details

    • SplitDoneAction

      public SplitDoneAction()
  • Method Details

    • transitionTo

      public void transitionTo(Process process, StartProcessingPayload payload, State startState, String eventId, State endState, STMInternalTransitionInvoker<?> stm, Transition transition) throws Exception
      Description copied from class: AbstractSTMTransitionAction
      Implement this method to start using your expected payload type.
      Specified by:
      transitionTo in class AbstractSTMTransitionAction<Process, StartProcessingPayload>
      Parameters:
      process - the state entity that has been passed to STM
      payload - The transition param with the correct payload type
      startState - state at which the event occurred
      eventId - the event that happened
      endState - the end state
      stm - this is for invoking other STMs
      transition - the definition of the entire transition in the STM configuration
      Throws:
      Exception - if an exception occurs.
    • makeSubProcesses

      private List<Process> makeSubProcesses(Process process, StartProcessingPayload payload)
    • addSuccessors

      private void addSuccessors(Process subProcess, List<Process> list)
      Add a successor if configured for this subprocess. For every subprocess instance, successors will be created using the same input as that of the subprocess. We do not support different inputs for successors.
      Parameters:
      subProcess - - the sub process to which we need to add successors
      list - - list of Processes that got created.