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 int
TYPE_AND
All outgoing connections of a split of this type are triggered when its incoming connection has been triggered.static int
TYPE_OR
One or multiple outgoing connections of a split of this type are triggered when its incoming connection has been triggered.static int
TYPE_UNDEFINED
static int
TYPE_XAND
static int
TYPE_XOR
Exactly 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 void
addConstraint(ConnectionRef connectionRef, Constraint constraint)
Adds the given constraint.Constraint
getConstraint(org.kie.api.definition.process.Connection connection)
Map<ConnectionRef,Constraint>
getConstraints()
int
getType()
Constraint
internalGetConstraint(ConnectionRef ref)
void
internalRemoveConstraint(ConnectionRef ref)
boolean
isDefault(org.kie.api.definition.process.Connection connection)
void
removeConstraint(org.kie.api.definition.process.Connection connection)
void
removeOutgoingConnection(String type, org.kie.api.definition.process.Connection connection)
void
setConstraint(org.kie.api.definition.process.Connection connection, Constraint constraint)
void
setType(int type)
void
validateAddIncomingConnection(String type, org.kie.api.definition.process.Connection connection)
void
validateAddOutgoingConnection(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:
getConstraint
in classNodeImpl
-
internalGetConstraint
public Constraint internalGetConstraint(ConnectionRef ref)
- Overrides:
internalGetConstraint
in classNodeImpl
-
setConstraint
public void setConstraint(org.kie.api.definition.process.Connection connection, Constraint constraint)
- Overrides:
setConstraint
in classNodeImpl
-
addConstraint
public void addConstraint(ConnectionRef connectionRef, Constraint constraint)
Description copied from interface:Constrainable
Adds 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:
addConstraint
in interfaceConstrainable
- Overrides:
addConstraint
in classNodeImpl
-
getConstraints
public Map<ConnectionRef,Constraint> getConstraints()
- Overrides:
getConstraints
in classNodeImpl
-
validateAddIncomingConnection
public void validateAddIncomingConnection(String type, org.kie.api.definition.process.Connection connection)
- Overrides:
validateAddIncomingConnection
in classNodeImpl
-
validateAddOutgoingConnection
public void validateAddOutgoingConnection(String type, org.kie.api.definition.process.Connection connection)
- Overrides:
validateAddOutgoingConnection
in classNodeImpl
-
removeOutgoingConnection
public void removeOutgoingConnection(String type, org.kie.api.definition.process.Connection connection)
- Specified by:
removeOutgoingConnection
in interfaceNode
- Overrides:
removeOutgoingConnection
in classNodeImpl
-
removeConstraint
public void removeConstraint(org.kie.api.definition.process.Connection connection)
-
internalRemoveConstraint
public void internalRemoveConstraint(ConnectionRef ref)
-
-