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

java.lang.Object
  extended by org.camunda.bpm.engine.impl.bpmn.behavior.BpmnActivityBehavior

public class BpmnActivityBehavior
extends Object

Helper class for implementing BPMN 2.0 activities, offering convenience methods specific to BPMN 2.0. This class can be used by inheritance or aggregation.

Author:
Joram Barrez

Field Summary
protected static BpmnBehaviorLogger LOG
           
 
Constructor Summary
BpmnActivityBehavior()
           
 
Method Summary
protected  boolean isAncestorCompensationThrowing(ActivityExecution execution)
           
 void performDefaultOutgoingBehavior(ActivityExecution activityExceution)
          Performs the default outgoing BPMN 2.0 behavior, which is having parallel paths of executions for the outgoing sequence flow.
 void performIgnoreConditionsOutgoingBehavior(ActivityExecution activityExecution)
          Performs the default outgoing BPMN 2.0 behavior (@see performDefaultOutgoingBehavior(ActivityExecution)), but without checking the conditions on the outgoing sequence flow.
protected  void performOutgoingBehavior(ActivityExecution execution, boolean checkConditions, boolean throwExceptionIfExecutionStuck, List<ActivityExecution> reusableExecutions)
          Actual implementation of leaving an activity.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOG

protected static BpmnBehaviorLogger LOG
Constructor Detail

BpmnActivityBehavior

public BpmnActivityBehavior()
Method Detail

performDefaultOutgoingBehavior

public void performDefaultOutgoingBehavior(ActivityExecution activityExceution)
Performs the default outgoing BPMN 2.0 behavior, which is having parallel paths of executions for the outgoing sequence flow. More precisely: every sequence flow that has a condition which evaluates to true (or which doesn't have a condition), is selected for continuation of the process instance. If multiple sequencer flow are selected, multiple, parallel paths of executions are created.


performIgnoreConditionsOutgoingBehavior

public void performIgnoreConditionsOutgoingBehavior(ActivityExecution activityExecution)
Performs the default outgoing BPMN 2.0 behavior (@see performDefaultOutgoingBehavior(ActivityExecution)), but without checking the conditions on the outgoing sequence flow. This means that every outgoing sequence flow is selected for continuing the process instance, regardless of having a condition or not. In case of multiple outgoing sequence flow, multiple parallel paths of executions will be created.


performOutgoingBehavior

protected void performOutgoingBehavior(ActivityExecution execution,
                                       boolean checkConditions,
                                       boolean throwExceptionIfExecutionStuck,
                                       List<ActivityExecution> reusableExecutions)
Actual implementation of leaving an activity.

Parameters:
execution - The current execution context
checkConditions - Whether or not to check conditions before determining whether or not to take a transition.
throwExceptionIfExecutionStuck - If true, an ProcessEngineException will be thrown in case no transition could be found to leave the activity.

isAncestorCompensationThrowing

protected boolean isAncestorCompensationThrowing(ActivityExecution execution)


Copyright © 2015 camunda services GmbH. All rights reserved.