Class AbstractBpmnActivityBehavior
- java.lang.Object
-
- org.camunda.bpm.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
-
- org.camunda.bpm.engine.impl.bpmn.behavior.AbstractBpmnActivityBehavior
-
- All Implemented Interfaces:
CoreActivityBehavior<ActivityExecution>,ActivityBehavior,SignallableActivityBehavior
- Direct Known Subclasses:
CallableElementActivityBehavior,CancelEndEventActivityBehavior,ClassDelegateActivityBehavior,DmnBusinessRuleTaskActivityBehavior,ErrorEndEventActivityBehavior,ExternalTaskActivityBehavior,IntermediateCatchEventActivityBehavior,IntermediateCatchLinkEventActivityBehavior,MailActivityBehavior,MultiInstanceActivityBehavior,ShellActivityBehavior,SubProcessActivityBehavior,TaskActivityBehavior,ThrowEscalationEventActivityBehavior,ThrowSignalEventActivityBehavior
public class AbstractBpmnActivityBehavior extends FlowNodeActivityBehavior
Denotes an 'activity' in the sense of BPMN 2.0: a parent class for all tasks, subprocess and callActivity.- Author:
- Joram Barrez, Daniel Meyer, Thorben Lindhauer
-
-
Field Summary
Fields Modifier and Type Field Description protected static BpmnBehaviorLoggerLOG-
Fields inherited from class org.camunda.bpm.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
bpmnActivityBehavior
-
-
Constructor Summary
Constructors Constructor Description AbstractBpmnActivityBehavior()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcreateCompensateEventSubscription(ActivityExecution execution, ActivityImpl compensationHandler)voiddoLeave(ActivityExecution execution)Subclasses that call leave() will first pass through this method, before the regularFlowNodeActivityBehavior.leave(ActivityExecution)is called.protected voidexecuteWithErrorPropagation(ActivityExecution execution, Callable<Void> toExecute)Takes anActivityExecutionand anCallableand wraps the call to the Callable with the proper error propagation.protected booleanisCompensationEventSubprocess(ActivityImpl activity)voidsignal(ActivityExecution execution, String signalName, Object signalData)protected voidsignalCompensationDone(ActivityExecution execution)-
Methods inherited from class org.camunda.bpm.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
execute, leave, leaveIgnoreConditions
-
-
-
-
Field Detail
-
LOG
protected static final BpmnBehaviorLogger LOG
-
-
Method Detail
-
doLeave
public void doLeave(ActivityExecution execution)
Subclasses that call leave() will first pass through this method, before the regularFlowNodeActivityBehavior.leave(ActivityExecution)is called.- Overrides:
doLeavein classFlowNodeActivityBehavior
-
isCompensationEventSubprocess
protected boolean isCompensationEventSubprocess(ActivityImpl activity)
-
createCompensateEventSubscription
protected void createCompensateEventSubscription(ActivityExecution execution, ActivityImpl compensationHandler)
-
executeWithErrorPropagation
protected void executeWithErrorPropagation(ActivityExecution execution, Callable<Void> toExecute) throws Exception
Takes anActivityExecutionand anCallableand wraps the call to the Callable with the proper error propagation. This method also makes sure that exceptions not caught by following activities in the process will be thrown and not propagated.- Parameters:
execution-toExecute-- Throws:
Exception
-
signal
public void signal(ActivityExecution execution, String signalName, Object signalData) throws Exception
- Specified by:
signalin interfaceSignallableActivityBehavior- Overrides:
signalin classFlowNodeActivityBehavior- Throws:
Exception
-
signalCompensationDone
protected void signalCompensationDone(ActivityExecution execution)
-
-