Class ParallelMultiInstanceActivityBehavior
java.lang.Object
org.camunda.bpm.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
org.camunda.bpm.engine.impl.bpmn.behavior.AbstractBpmnActivityBehavior
org.camunda.bpm.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior
org.camunda.bpm.engine.impl.bpmn.behavior.ParallelMultiInstanceActivityBehavior
- All Implemented Interfaces:
CoreActivityBehavior<ActivityExecution>
,ActivityBehavior
,CompositeActivityBehavior
,MigrationObserverBehavior
,ModificationObserverBehavior
,SignallableActivityBehavior
public class ParallelMultiInstanceActivityBehavior
extends MultiInstanceActivityBehavior
implements MigrationObserverBehavior
- Author:
- Daniel Meyer
-
Field Summary
Fields inherited from class org.camunda.bpm.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior
collectionElementVariable, collectionExpression, collectionVariable, completionConditionExpression, LOG, LOOP_COUNTER, loopCardinalityExpression, NUMBER_OF_ACTIVE_INSTANCES, NUMBER_OF_COMPLETED_INSTANCES, NUMBER_OF_INSTANCES
Fields inherited from class org.camunda.bpm.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
bpmnActivityBehavior
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
allExecutionsEnded
(ActivityExecution scopeExecution, ActivityExecution endedExecution) void
complete
(ActivityExecution scopeExecution) void
concurrentChildExecutionEnded
(ActivityExecution scopeExecution, ActivityExecution endedExecution) Invoked when an execution is ended within the scope of the compositeprotected ActivityExecution
createConcurrentExecution
(ActivityExecution scopeExecution) createInnerInstance
(ActivityExecution scopeExecution) Returns an execution that can be used to execute an activity within that scope.protected void
createInstances
(ActivityExecution execution, int nrOfInstances) void
destroyInnerInstance
(ActivityExecution concurrentExecution) implement to destroy an execution in this scope and handle the scope's reorganization (e.g.initializeScope
(ActivityExecution scopeExecution, int numberOfInstances) Implement to customize initialization of the scope.void
migrateScope
(ActivityExecution scopeExecution) Implement to perform activity-specific migration behavior that is not covered by the regular migration procedure.void
onParseMigratingInstance
(MigratingInstanceParseContext parseContext, MigratingActivityInstance migratingInstance) Callback to implement behavior specific parsing (e.g.protected void
prepareScopeExecution
(ActivityExecution scopeExecution, int nrOfInstances) Methods inherited from class org.camunda.bpm.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior
completionConditionSatisfied, doLeave, evaluateCollectionVariable, execute, getCollectionElementVariable, getCollectionExpression, getCollectionVariable, getCompletionConditionExpression, getElementAtIndex, getInnerActivity, getLocalLoopVariable, getLoopCardinalityExpression, getLoopVariable, hasLoopVariable, performInstance, removeLoopVariable, resolveLoopCardinality, resolveNrOfInstances, setCollectionElementVariable, setCollectionExpression, setCollectionVariable, setCompletionConditionExpression, setLoopCardinalityExpression, setLoopVariable, usesCollection
Methods inherited from class org.camunda.bpm.engine.impl.bpmn.behavior.AbstractBpmnActivityBehavior
createCompensateEventSubscription, executeWithErrorPropagation, isCompensationEventSubprocess, signal, signalCompensationDone
Methods inherited from class org.camunda.bpm.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
leave, leaveIgnoreConditions
-
Constructor Details
-
ParallelMultiInstanceActivityBehavior
public ParallelMultiInstanceActivityBehavior()
-
-
Method Details
-
createInstances
- Specified by:
createInstances
in classMultiInstanceActivityBehavior
- Throws:
Exception
-
prepareScopeExecution
-
createConcurrentExecution
-
concurrentChildExecutionEnded
public void concurrentChildExecutionEnded(ActivityExecution scopeExecution, ActivityExecution endedExecution) Description copied from interface:CompositeActivityBehavior
Invoked when an execution is ended within the scope of the composite- Specified by:
concurrentChildExecutionEnded
in interfaceCompositeActivityBehavior
- Parameters:
scopeExecution
- scope execution for the activity which defined the behaviorendedExecution
- the execution which ended
-
allExecutionsEnded
protected boolean allExecutionsEnded(ActivityExecution scopeExecution, ActivityExecution endedExecution) -
complete
- Specified by:
complete
in interfaceCompositeActivityBehavior
-
initializeScope
public List<ActivityExecution> initializeScope(ActivityExecution scopeExecution, int numberOfInstances) Description copied from interface:ModificationObserverBehavior
Implement to customize initialization of the scope. Called with the scope execution already created. Implementations may set variables, etc. Implementations should provide return as many executions as there are requested by the argument. Valid number of instances are >= 0.- Specified by:
initializeScope
in interfaceModificationObserverBehavior
-
createInnerInstance
Description copied from interface:ModificationObserverBehavior
Returns an execution that can be used to execute an activity within that scope. May reorganize other executions in that scope (e.g. implement to override the default pruning behavior).- Specified by:
createInnerInstance
in interfaceModificationObserverBehavior
-
destroyInnerInstance
Description copied from interface:ModificationObserverBehavior
implement to destroy an execution in this scope and handle the scope's reorganization (e.g. implement to override the default pruning behavior). The argument execution is not yet removed.- Specified by:
destroyInnerInstance
in interfaceModificationObserverBehavior
-
migrateScope
Description copied from interface:MigrationObserverBehavior
Implement to perform activity-specific migration behavior that is not covered by the regular migration procedure. Called after the scope execution and any ancestor executions have been migrated to their target activities and process definition.- Specified by:
migrateScope
in interfaceMigrationObserverBehavior
-
onParseMigratingInstance
public void onParseMigratingInstance(MigratingInstanceParseContext parseContext, MigratingActivityInstance migratingInstance) Description copied from interface:MigrationObserverBehavior
Callback to implement behavior specific parsing (e.g. adding additional dependent entities).- Specified by:
onParseMigratingInstance
in interfaceMigrationObserverBehavior
-