Interface BpmnElementProcessor<T extends ExecutableFlowElement>

    • Method Detail

      • getType

        Class<T> getType()
        Returns:
        the class that represents the BPMN element
      • onActivating

        void onActivating​(T element,
                          BpmnElementContext context)
        The element is entered (initial step). Perform every action to initialize the element.

        Possible actions:

        • apply input mappings
        • open event subscriptions
        Next step: activated.
        Parameters:
        element - the instance of the BPMN element that is executed
        context - workflow instance-related data of the element that is executed
      • onActivated

        void onActivated​(T element,
                         BpmnElementContext context)
        The element is initialized. If the element is a wait-state (i.e. it is waiting for an event or an external trigger) then it is waiting in this step to continue. Otherwise, it continues directly to the next step.

        Possible actions:

        • initialize child elements - if the element is a container (e.g. a sub-process)
        Next step: completing - if not a wait-state.
        Parameters:
        element - the instance of the BPMN element that is executed
        context - workflow instance-related data of the element that is executed
      • onCompleting

        void onCompleting​(T element,
                          BpmnElementContext context)
        The element is going to be left. Perform every action to leave the element.

        Possible actions:

        • apply output mappings
        • close event subscriptions

        Next step: completed.

        Parameters:
        element - the instance of the BPMN element that is executed
        context - workflow instance-related data of the element that is executed
      • onCompleted

        void onCompleted​(T element,
                         BpmnElementContext context)
        The element is left (final step). Continue with the next element.

        Possible actions:

        • take outgoing sequence flows - if any
        • continue with parent element - if no outgoing sequence flows
        • clean up the state
        Next step: none.
        Parameters:
        element - the instance of the BPMN element that is executed
        context - workflow instance-related data of the element that is executed
      • onTerminating

        void onTerminating​(T element,
                           BpmnElementContext context)
        The element is going to be terminated. Perform every action to terminate the element.

        Possible actions:

        • close event subscriptions

        Next step: terminated.

        Parameters:
        element - the instance of the BPMN element that is executed
        context - workflow instance-related data of the element that is executed
      • onTerminated

        void onTerminated​(T element,
                          BpmnElementContext context)
        The element is terminated (final step). Continue with the element that caused the termination (e.g. the triggered boundary event).

        Possible actions:

        • resolve incidents
        • activate the triggered boundary event - if any
        • activate the triggered event sub-process - if any
        • continue with parent element
        • clean up the state
        Next step: none.
        Parameters:
        element - the instance of the BPMN element that is executed
        context - workflow instance-related data of the element that is executed
      • onEventOccurred

        void onEventOccurred​(T element,
                             BpmnElementContext context)
        An event subscription of the element is triggered. Leave the element if it waited for this event to continue. Terminate the element if the event belongs to an interrupting boundary event. Or, continue with the boundary event if it is a non-interrupting one.

        Possible actions:

        • activate the triggered boundary event - if any
        Next step: completing or terminating.
        Parameters:
        element - the instance of the BPMN element that is executed
        context - workflow instance-related data of the element that is executed