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 BpmnBehaviorLogger
LOG
-
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 void
createCompensateEventSubscription(ActivityExecution execution, ActivityImpl compensationHandler)
void
doLeave(ActivityExecution execution)
Subclasses that call leave() will first pass through this method, before the regularFlowNodeActivityBehavior.leave(ActivityExecution)
is called.protected void
executeWithErrorPropagation(ActivityExecution execution, java.util.concurrent.Callable<java.lang.Void> toExecute)
Takes anActivityExecution
and anCallable
and wraps the call to the Callable with the proper error propagation.protected boolean
isCompensationEventSubprocess(ActivityImpl activity)
void
signal(ActivityExecution execution, java.lang.String signalName, java.lang.Object signalData)
protected void
signalCompensationDone(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:
doLeave
in classFlowNodeActivityBehavior
-
isCompensationEventSubprocess
protected boolean isCompensationEventSubprocess(ActivityImpl activity)
-
createCompensateEventSubscription
protected void createCompensateEventSubscription(ActivityExecution execution, ActivityImpl compensationHandler)
-
executeWithErrorPropagation
protected void executeWithErrorPropagation(ActivityExecution execution, java.util.concurrent.Callable<java.lang.Void> toExecute) throws java.lang.Exception
Takes anActivityExecution
and anCallable
and 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:
java.lang.Exception
-
signal
public void signal(ActivityExecution execution, java.lang.String signalName, java.lang.Object signalData) throws java.lang.Exception
- Specified by:
signal
in interfaceSignallableActivityBehavior
- Overrides:
signal
in classFlowNodeActivityBehavior
- Throws:
java.lang.Exception
-
signalCompensationDone
protected void signalCompensationDone(ActivityExecution execution)
-
-