Package org.jbpm.workflow.core.node
Class Split
- java.lang.Object
-
- org.jbpm.workflow.core.impl.NodeImpl
-
- org.jbpm.workflow.core.node.Split
-
- All Implemented Interfaces:
Serializable,Contextable,ContextResolver,Node,Constrainable,org.kie.api.definition.process.Node
public class Split extends NodeImpl implements Constrainable
Default implementation of a split node.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static intTYPE_ANDAll outgoing connections of a split of this type are triggered when its incoming connection has been triggered.static intTYPE_OROne or multiple outgoing connections of a split of this type are triggered when its incoming connection has been triggered.static intTYPE_UNDEFINEDstatic intTYPE_XANDstatic intTYPE_XORExactly one outgoing connection of a split of this type is triggered when its incoming connection has been triggered.-
Fields inherited from class org.jbpm.workflow.core.impl.NodeImpl
constraints, EMPTY_NODE_ARRAY
-
Fields inherited from interface org.jbpm.workflow.core.Node
CONNECTION_DEFAULT_TYPE
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddConstraint(ConnectionRef connectionRef, Constraint constraint)Adds the given constraint.ConstraintgetConstraint(org.kie.api.definition.process.Connection connection)Map<ConnectionRef,Constraint>getConstraints()intgetType()ConstraintinternalGetConstraint(ConnectionRef ref)voidinternalRemoveConstraint(ConnectionRef ref)booleanisDefault(org.kie.api.definition.process.Connection connection)voidremoveConstraint(org.kie.api.definition.process.Connection connection)voidremoveOutgoingConnection(String type, org.kie.api.definition.process.Connection connection)voidsetConstraint(org.kie.api.definition.process.Connection connection, Constraint constraint)voidsetType(int type)voidvalidateAddIncomingConnection(String type, org.kie.api.definition.process.Connection connection)voidvalidateAddOutgoingConnection(String type, org.kie.api.definition.process.Connection connection)-
Methods inherited from class org.jbpm.workflow.core.impl.NodeImpl
addIncomingConnection, addOutgoingConnection, clearIncomingConnection, clearOutgoingConnection, getContext, getDefaultIncomingConnections, getDefaultOutgoingConnections, getFrom, getId, getIncomingConnections, getIncomingConnections, getMetaData, getMetaData, getName, getNodeContainer, getNodeType, getNodeUniqueId, getOutgoingConnections, getOutgoingConnections, getTo, getUniqueId, removeIncomingConnection, resolveContext, setContext, setId, setMetaData, setMetaData, setName, setNodeContainer, setNodeType, validateRemoveIncomingConnection, validateRemoveOutgoingConnection
-
-
-
-
Field Detail
-
TYPE_UNDEFINED
public static final int TYPE_UNDEFINED
- See Also:
- Constant Field Values
-
TYPE_AND
public static final int TYPE_AND
All outgoing connections of a split of this type are triggered when its incoming connection has been triggered. A split of this type should have no constraints linked to any of its outgoing connections.- See Also:
- Constant Field Values
-
TYPE_XOR
public static final int TYPE_XOR
Exactly one outgoing connection of a split of this type is triggered when its incoming connection has been triggered. Which connection is based on the constraints associated with each of the connections: the connection with the highest priority whose constraint is satisfied is triggered.- See Also:
- Constant Field Values
-
TYPE_OR
public static final int TYPE_OR
One or multiple outgoing connections of a split of this type are triggered when its incoming connection has been triggered. Which connections is based on the constraints associated with each of the connections: all connections whose constraint is satisfied are triggered.- See Also:
- Constant Field Values
-
TYPE_XAND
public static final int TYPE_XAND
- See Also:
- Constant Field Values
-
-
Method Detail
-
setType
public void setType(int type)
-
getType
public int getType()
-
isDefault
public boolean isDefault(org.kie.api.definition.process.Connection connection)
-
getConstraint
public Constraint getConstraint(org.kie.api.definition.process.Connection connection)
- Overrides:
getConstraintin classNodeImpl
-
internalGetConstraint
public Constraint internalGetConstraint(ConnectionRef ref)
- Overrides:
internalGetConstraintin classNodeImpl
-
setConstraint
public void setConstraint(org.kie.api.definition.process.Connection connection, Constraint constraint)- Overrides:
setConstraintin classNodeImpl
-
addConstraint
public void addConstraint(ConnectionRef connectionRef, Constraint constraint)
Description copied from interface:ConstrainableAdds the given constraint. In cases where the constraint is associated with a specific connection, this connection will be identified using a ConnectionRef. In other cases the ConnectionRef will be null and can be ignored.- Specified by:
addConstraintin interfaceConstrainable- Overrides:
addConstraintin classNodeImpl
-
getConstraints
public Map<ConnectionRef,Constraint> getConstraints()
- Overrides:
getConstraintsin classNodeImpl
-
validateAddIncomingConnection
public void validateAddIncomingConnection(String type, org.kie.api.definition.process.Connection connection)
- Overrides:
validateAddIncomingConnectionin classNodeImpl
-
validateAddOutgoingConnection
public void validateAddOutgoingConnection(String type, org.kie.api.definition.process.Connection connection)
- Overrides:
validateAddOutgoingConnectionin classNodeImpl
-
removeOutgoingConnection
public void removeOutgoingConnection(String type, org.kie.api.definition.process.Connection connection)
- Specified by:
removeOutgoingConnectionin interfaceNode- Overrides:
removeOutgoingConnectionin classNodeImpl
-
removeConstraint
public void removeConstraint(org.kie.api.definition.process.Connection connection)
-
internalRemoveConstraint
public void internalRemoveConstraint(ConnectionRef ref)
-
-