Class ClassDelegate
- java.lang.Object
-
- org.flowable.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
-
- org.flowable.engine.impl.bpmn.behavior.AbstractBpmnActivityBehavior
-
- org.flowable.engine.impl.bpmn.helper.AbstractClassDelegate
-
- org.flowable.engine.impl.bpmn.helper.ClassDelegate
-
- All Implemented Interfaces:
Serializable,BaseExecutionListener,CustomPropertiesResolver,ExecutionListener,TransactionDependentExecutionListener,TransactionDependentTaskListener,ActivityBehavior,SubProcessActivityBehavior,TriggerableActivityBehavior,BaseTaskListener,TaskListener
public class ClassDelegate extends AbstractClassDelegate implements TaskListener, ExecutionListener, TransactionDependentExecutionListener, TransactionDependentTaskListener, SubProcessActivityBehavior, CustomPropertiesResolver
Helper class for bpmn constructs that allow class delegation. This class will lazily instantiate the referenced classes when needed at runtime.- Author:
- Joram Barrez, Falko Menge, Saeid Mirzaei, Yvo Swillens, martin.grofcik
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected ActivityBehavioractivityBehaviorInstanceprotected CustomPropertiesResolvercustomPropertiesResolverInstanceprotected List<org.flowable.bpmn.model.MapExceptionEntry>mapExceptionsprotected ExpressionskipExpressionprotected booleantriggerable-
Fields inherited from class org.flowable.engine.impl.bpmn.helper.AbstractClassDelegate
className, fieldDeclarations, serviceTaskId
-
Fields inherited from class org.flowable.engine.impl.bpmn.behavior.AbstractBpmnActivityBehavior
multiInstanceActivityBehavior
-
Fields inherited from class org.flowable.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
bpmnActivityBehavior
-
Fields inherited from interface org.flowable.engine.delegate.BaseExecutionListener
EVENTNAME_END, EVENTNAME_START, EVENTNAME_TAKE
-
Fields inherited from interface org.flowable.task.service.delegate.BaseTaskListener
EVENTNAME_ALL_EVENTS, EVENTNAME_ASSIGNMENT, EVENTNAME_COMPLETE, EVENTNAME_CREATE, EVENTNAME_DELETE
-
Fields inherited from interface org.flowable.engine.delegate.TransactionDependentExecutionListener
ON_TRANSACTION_BEFORE_COMMIT, ON_TRANSACTION_COMMITTED, ON_TRANSACTION_ROLLED_BACK
-
Fields inherited from interface org.flowable.engine.delegate.TransactionDependentTaskListener
ON_TRANSACTION_COMMITTED, ON_TRANSACTION_COMMITTING, ON_TRANSACTION_ROLLED_BACK
-
-
Constructor Summary
Constructors Constructor Description ClassDelegate(Class<?> clazz, List<FieldDeclaration> fieldDeclarations)ClassDelegate(Class<?> clazz, List<FieldDeclaration> fieldDeclarations, Expression skipExpression)ClassDelegate(String id, String className, List<FieldDeclaration> fieldDeclarations, boolean triggerable, Expression skipExpression, List<org.flowable.bpmn.model.MapExceptionEntry> mapExceptions)ClassDelegate(String className, List<FieldDeclaration> fieldDeclarations)ClassDelegate(String className, List<FieldDeclaration> fieldDeclarations, Expression skipExpression)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcompleted(DelegateExecution execution)called after the process instance is destroyed for this activity to perform its outgoing control flow logic.voidcompleting(DelegateExecution execution, DelegateExecution subProcessInstance)called before the process instance is destroyed to allow this activity to extract data from the sub process instance.protected ActivityBehaviordetermineBehaviour(ActivityBehavior delegateInstance)voidexecute(DelegateExecution execution)Default behaviour: just leave the activity with no extra functionality.protected ActivityBehaviorgetActivityBehaviorInstance()Map<String,Object>getCustomPropertiesMap(DelegateExecution execution)protected CustomPropertiesResolvergetCustomPropertiesResolverInstance()protected ExecutionListenergetExecutionListenerInstance()protected TaskListenergetTaskListenerInstance()protected TransactionDependentExecutionListenergetTransactionDependentExecutionListenerInstance()protected TransactionDependentTaskListenergetTransactionDependentTaskListenerInstance()voidnotify(String processInstanceId, String executionId, org.flowable.bpmn.model.FlowElement flowElement, Map<String,Object> executionVariables, Map<String,Object> customPropertiesMap)voidnotify(String processInstanceId, String executionId, org.flowable.bpmn.model.Task task, Map<String,Object> executionVariables, Map<String,Object> customPropertiesMap)voidnotify(DelegateExecution execution)voidnotify(DelegateTask delegateTask)voidtrigger(DelegateExecution execution, String signalName, Object signalData)-
Methods inherited from class org.flowable.engine.impl.bpmn.helper.AbstractClassDelegate
applyFieldDeclaration, applyFieldDeclaration, applyFieldDeclaration, applyFieldDeclaration, defaultInstantiateDelegate, defaultInstantiateDelegate, defaultInstantiateDelegate, defaultInstantiateDelegate, getClassName, instantiateDelegate
-
Methods inherited from class org.flowable.engine.impl.bpmn.behavior.AbstractBpmnActivityBehavior
executeCompensateBoundaryEvents, findBoundaryEventsForFlowNode, getMultiInstanceActivityBehavior, getProcessDefinition, hasLoopCharacteristics, hasMultiInstanceCharacteristics, leave, setMultiInstanceActivityBehavior
-
Methods inherited from class org.flowable.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
leaveIgnoreConditions, parseActivityType
-
-
-
-
Field Detail
-
activityBehaviorInstance
protected ActivityBehavior activityBehaviorInstance
-
skipExpression
protected Expression skipExpression
-
mapExceptions
protected List<org.flowable.bpmn.model.MapExceptionEntry> mapExceptions
-
customPropertiesResolverInstance
protected CustomPropertiesResolver customPropertiesResolverInstance
-
triggerable
protected boolean triggerable
-
-
Constructor Detail
-
ClassDelegate
public ClassDelegate(String className, List<FieldDeclaration> fieldDeclarations, Expression skipExpression)
-
ClassDelegate
public ClassDelegate(String id, String className, List<FieldDeclaration> fieldDeclarations, boolean triggerable, Expression skipExpression, List<org.flowable.bpmn.model.MapExceptionEntry> mapExceptions)
-
ClassDelegate
public ClassDelegate(Class<?> clazz, List<FieldDeclaration> fieldDeclarations, Expression skipExpression)
-
ClassDelegate
public ClassDelegate(String className, List<FieldDeclaration> fieldDeclarations)
-
ClassDelegate
public ClassDelegate(Class<?> clazz, List<FieldDeclaration> fieldDeclarations)
-
-
Method Detail
-
notify
public void notify(DelegateExecution execution)
- Specified by:
notifyin interfaceExecutionListener
-
notify
public void notify(String processInstanceId, String executionId, org.flowable.bpmn.model.FlowElement flowElement, Map<String,Object> executionVariables, Map<String,Object> customPropertiesMap)
- Specified by:
notifyin interfaceTransactionDependentExecutionListener
-
getCustomPropertiesMap
public Map<String,Object> getCustomPropertiesMap(DelegateExecution execution)
- Specified by:
getCustomPropertiesMapin interfaceCustomPropertiesResolver
-
notify
public void notify(DelegateTask delegateTask)
- Specified by:
notifyin interfaceTaskListener
-
notify
public void notify(String processInstanceId, String executionId, org.flowable.bpmn.model.Task task, Map<String,Object> executionVariables, Map<String,Object> customPropertiesMap)
- Specified by:
notifyin interfaceTransactionDependentTaskListener
-
getExecutionListenerInstance
protected ExecutionListener getExecutionListenerInstance()
-
getTransactionDependentExecutionListenerInstance
protected TransactionDependentExecutionListener getTransactionDependentExecutionListenerInstance()
-
getCustomPropertiesResolverInstance
protected CustomPropertiesResolver getCustomPropertiesResolverInstance()
-
getTaskListenerInstance
protected TaskListener getTaskListenerInstance()
-
getTransactionDependentTaskListenerInstance
protected TransactionDependentTaskListener getTransactionDependentTaskListenerInstance()
-
execute
public void execute(DelegateExecution execution)
Description copied from class:FlowNodeActivityBehaviorDefault behaviour: just leave the activity with no extra functionality.- Specified by:
executein interfaceActivityBehavior- Overrides:
executein classFlowNodeActivityBehavior
-
trigger
public void trigger(DelegateExecution execution, String signalName, Object signalData)
- Specified by:
triggerin interfaceTriggerableActivityBehavior- Overrides:
triggerin classFlowNodeActivityBehavior
-
completing
public void completing(DelegateExecution execution, DelegateExecution subProcessInstance) throws Exception
Description copied from interface:SubProcessActivityBehaviorcalled before the process instance is destroyed to allow this activity to extract data from the sub process instance. No control flow should be done on the execution yet.- Specified by:
completingin interfaceSubProcessActivityBehavior- Throws:
Exception
-
completed
public void completed(DelegateExecution execution) throws Exception
Description copied from interface:SubProcessActivityBehaviorcalled after the process instance is destroyed for this activity to perform its outgoing control flow logic.- Specified by:
completedin interfaceSubProcessActivityBehavior- Throws:
Exception
-
getActivityBehaviorInstance
protected ActivityBehavior getActivityBehaviorInstance()
-
determineBehaviour
protected ActivityBehavior determineBehaviour(ActivityBehavior delegateInstance)
-
-