Class ExclusiveGatewayActivityBehavior
java.lang.Object
org.flowable.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
org.flowable.engine.impl.bpmn.behavior.GatewayActivityBehavior
org.flowable.engine.impl.bpmn.behavior.ExclusiveGatewayActivityBehavior
- All Implemented Interfaces:
Serializable
,ActivityBehavior
,TriggerableActivityBehavior
Implementation of the Exclusive Gateway/XOR gateway/exclusive data-based gateway as defined in the BPMN specification.
- Author:
- Joram Barrez
- See Also:
-
Field Summary
Fields inherited from class org.flowable.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
bpmnActivityBehavior
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
leave
(DelegateExecution execution) The default behaviour of BPMN, taking every outgoing sequence flow (where the condition evaluates to true), is not valid for an exclusive gateway.Methods inherited from class org.flowable.engine.impl.bpmn.behavior.GatewayActivityBehavior
lockFirstParentScope
Methods inherited from class org.flowable.engine.impl.bpmn.behavior.FlowNodeActivityBehavior
execute, leaveIgnoreConditions, parseActivityType, trigger
-
Constructor Details
-
ExclusiveGatewayActivityBehavior
public ExclusiveGatewayActivityBehavior()
-
-
Method Details
-
leave
The default behaviour of BPMN, taking every outgoing sequence flow (where the condition evaluates to true), is not valid for an exclusive gateway. Hence, this behaviour is overridden and replaced by the correct behavior: selecting the first sequence flow which condition evaluates to true (or which hasn't got a condition) and leaving the activity through that sequence flow. If no sequence flow is selected (ie all conditions evaluate to false), then the default sequence flow is taken (if defined).- Overrides:
leave
in classFlowNodeActivityBehavior
-