Interface BpmnElementContainerProcessor<T extends ExecutableFlowElement>
- Type Parameters:
T
- the type that represents the BPMN element
- All Superinterfaces:
BpmnElementProcessor<T>
- All Known Implementing Classes:
CallActivityProcessor
,EventSubProcessProcessor
,MultiInstanceBodyProcessor
,ProcessProcessor
,SubProcessProcessor
public interface BpmnElementContainerProcessor<T extends ExecutableFlowElement>
extends BpmnElementProcessor<T>
The business logic of an BPMN element container (e.g. a sub-process).
The execution of an element is divided into multiple steps that represents the lifecycle of the element. Each step defines a set of actions that can be performed in this step. The transition to the next step must be triggered explicitly in the current step.
-
Field Summary
Fields inherited from interface io.camunda.zeebe.engine.processing.bpmn.BpmnElementProcessor
SUCCESS
-
Method Summary
Modifier and TypeMethodDescriptionvoid
afterExecutionPathCompleted
(T element, BpmnElementContext flowScopeContext, BpmnElementContext childContext, Boolean satisfiesCompletionCondition) The execution path of a child element has completed.beforeExecutionPathCompleted
(T element, BpmnElementContext flowScopeContext, BpmnElementContext childContext) The execution path of a child element is about to be completed.onChildActivating
(T element, BpmnElementContext flowScopeContext, BpmnElementContext childContext) A child element is on activating (but not yet activated).onChildCompleting
(T element, BpmnElementContext flowScopeContext, BpmnElementContext childContext) A child element is completing (but not yet completed).void
onChildTerminated
(T element, BpmnElementContext flowScopeContext, BpmnElementContext childContext) A child element is terminated.Methods inherited from interface io.camunda.zeebe.engine.processing.bpmn.BpmnElementProcessor
finalizeActivation, finalizeCompletion, getType, onActivate, onComplete, onTerminate
-
Method Details
-
onChildActivating
default Either<Failure,?> onChildActivating(T element, BpmnElementContext flowScopeContext, BpmnElementContext childContext) A child element is on activating (but not yet activated). Perform additional logic for the new child element, like setting variables.- Parameters:
element
- the instance of the BPMN element containerflowScopeContext
- process instance-related data of the element containerchildContext
- process instance-related data of the child element that is on activating- Returns:
- either a failure (Left) or any success value (Right)
-
onChildCompleting
default Either<Failure,?> onChildCompleting(T element, BpmnElementContext flowScopeContext, BpmnElementContext childContext) A child element is completing (but not yet completed). Perform additional logic for the new child element, like setting variables.- Parameters:
element
- the instance of the BPMN element containerflowScopeContext
- process instance-related data of the element containerchildContext
- process instance-related data of the child element that is completing- Returns:
- either a failure (Left) or any success value (Right)
-
beforeExecutionPathCompleted
default Either<Failure,?> beforeExecutionPathCompleted(T element, BpmnElementContext flowScopeContext, BpmnElementContext childContext) The execution path of a child element is about to be completed.- Parameters:
element
- the instance of the BPMN element containerflowScopeContext
- process instance-related data of the element containerchildContext
- process instance-related data of the child element that is completed. At- Returns:
- either a failure (Left) or any success value (Right)
-
afterExecutionPathCompleted
void afterExecutionPathCompleted(T element, BpmnElementContext flowScopeContext, BpmnElementContext childContext, Boolean satisfiesCompletionCondition) The execution path of a child element has completed.- Parameters:
element
- the instance of the BPMN element containerflowScopeContext
- process instance-related data of the element containerchildContext
- process instance-related data of the child element that is completed. At this point in time the element has already been removed from the state.satisfiesCompletionCondition
- the evaluation result of completion condition
-
onChildTerminated
void onChildTerminated(T element, BpmnElementContext flowScopeContext, BpmnElementContext childContext) A child element is terminated. Terminate the element container if it has no more active child elements. Or, continue with the interrupting event sub-process that was triggered and caused the termination.- Parameters:
element
- the instance of the BPMN element containerflowScopeContext
- process instance-related data of the element containerchildContext
- process instance-related data of the child element that is terminated
-