org.camunda.bpm.engine.impl.bpmn.behavior
Class SequentialMultiInstanceActivityBehavior

java.lang.Object
  extended by org.camunda.bpm.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
      extended by org.camunda.bpm.engine.impl.bpmn.behavior.AbstractBpmnActivityBehavior
          extended by org.camunda.bpm.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior
              extended by org.camunda.bpm.engine.impl.bpmn.behavior.SequentialMultiInstanceActivityBehavior
All Implemented Interfaces:
CoreActivityBehavior<ActivityExecution>, ActivityBehavior, CompositeActivityBehavior, ModificationObserverBehavior, SignallableActivityBehavior

public class SequentialMultiInstanceActivityBehavior
extends MultiInstanceActivityBehavior

Author:
Daniel Meyer, Thorben Lindhauer

Nested Class Summary
 
Nested classes/interfaces inherited from class org.camunda.bpm.engine.impl.bpmn.behavior.AbstractBpmnActivityBehavior
AbstractBpmnActivityBehavior.ErrorDeclarationForProcessInstanceFinder, AbstractBpmnActivityBehavior.ErrorPropagationException
 
Field Summary
protected static BpmnBehaviorLogger LOG
           
 
Fields inherited from class org.camunda.bpm.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior
collectionElementVariable, collectionExpression, collectionVariable, completionConditionExpression, 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
SequentialMultiInstanceActivityBehavior()
           
 
Method Summary
 void complete(ActivityExecution scopeExecution)
           
 void concurrentChildExecutionEnded(ActivityExecution scopeExecution, ActivityExecution endedExecution)
          Invoked when an execution is ended within the scope of the composite
 ActivityExecution 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 scopeExecution)
          implement to destroy an execution in this scope and handle the scope's reorganization (e.g.
 List<ActivityExecution> initializeScope(ActivityExecution scopeExecution, int nrOfInstances)
          Implement to customize initialization of the scope.
protected  void prepareScope(ActivityExecution scopeExecution, int totalNumberOfInstances)
           
 
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
checkIfCauseOfExceptionIsBpmnError, createCompensateEventSubscription, executeWithErrorPropagation, isCompensationEventSubprocess, isProcessEngineExceptionWithoutCause, isTransactionNotActive, propagateBpmnError, propagateError, propagateException, propagateExceptionAsError, signal, signalCompensationDone
 
Methods inherited from class org.camunda.bpm.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
leave, leaveIgnoreConditions
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOG

protected static final BpmnBehaviorLogger LOG
Constructor Detail

SequentialMultiInstanceActivityBehavior

public SequentialMultiInstanceActivityBehavior()
Method Detail

createInstances

protected void createInstances(ActivityExecution execution,
                               int nrOfInstances)
                        throws Exception
Specified by:
createInstances in class MultiInstanceActivityBehavior
Throws:
Exception

complete

public void complete(ActivityExecution scopeExecution)

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

Parameters:
scopeExecution - scope execution for the activity which defined the behavior
endedExecution - the execution which ended

prepareScope

protected void prepareScope(ActivityExecution scopeExecution,
                            int totalNumberOfInstances)

initializeScope

public List<ActivityExecution> initializeScope(ActivityExecution scopeExecution,
                                               int nrOfInstances)
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.


createInnerInstance

public ActivityExecution createInnerInstance(ActivityExecution scopeExecution)
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).


destroyInnerInstance

public void destroyInnerInstance(ActivityExecution scopeExecution)
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.



Copyright © 2017 camunda services GmbH. All rights reserved.