Zeta Components Manual :: Docs For Class ezcWorkflowNodeSimpleMerge
Workflow::ezcWorkflowNodeSimpleMerge
Class ezcWorkflowNodeSimpleMerge
This node implements the Simple Merge (XOR-Join) workflow pattern.
The Simple Merge workflow pattern is to be used to merge the possible paths that are defined by a preceding Exclusive Choice. It is assumed that of these possible paths exactly one is taken and no synchronization takes place.
Use Case Example: After the payment has been performed by either credit card or bank transfer, the order can be processed further.
Incoming nodes: 2..* Outgoing nodes: 1
This example displays how you can use a simple merge to tie together two different execution paths from an exclusive choice into one.
- <?php
- // wait for input into the workflow variable value.
- // create the exclusive choice branching node
- $branch1 = ....; // create nodes for the first branch of execution here..
- $branch2 = ....; // create nodes for the second branch of execution here..
- // add the outnodes and set the conditions on the exclusive choice
- new ezcWorkflowConditionGreatherThan( 10 ) ),
- $branch1 );
- new ezcWorkflowConditionLessThan( 11 ) ),
- $branch2 );
- // Merge the two branches together and continue execution.
- ?>
Source for this file: /Workflow/src/nodes/control_flow/simple_merge.php
ezcWorkflowNode | --ezcWorkflowNodeMerge | --ezcWorkflowNodeSimpleMerge
Version: | //autogen// |
Inherited Constants
From ezcWorkflowNode: | |
---|---|
ezcWorkflowNode::WAITING_FOR_ACTIVATION
|
The node is waiting to be activated. |
ezcWorkflowNode::WAITING_FOR_EXECUTION
|
The node is activated and waiting to be executed. |
Inherited Member Variables
From ezcWorkflowNodeMerge | |
---|---|
protected |
ezcWorkflowNodeMerge::$maxInNodes
|
protected |
ezcWorkflowNodeMerge::$minInNodes
|
protected |
ezcWorkflowNodeMerge::$state
|
From ezcWorkflowNode | |
protected |
ezcWorkflowNode::$activatedFrom
|
protected |
ezcWorkflowNode::$activationState
|
protected |
ezcWorkflowNode::$configuration
|
protected |
ezcWorkflowNode::$id
|
protected |
ezcWorkflowNode::$inNodes
|
protected |
ezcWorkflowNode::$internalCall
|
protected |
ezcWorkflowNode::$maxOutNodes
|
protected |
ezcWorkflowNode::$minOutNodes
|
protected |
ezcWorkflowNode::$numInNodes
|
protected |
ezcWorkflowNode::$numOutNodes
|
protected |
ezcWorkflowNode::$outNodes
|
protected |
ezcWorkflowNode::$threadId
|
Inherited Methods
From ezcWorkflowNodeMerge | |
---|---|
protected boolean |
ezcWorkflowNodeMerge::doMerge()
Performs the merge by ending the incoming threads and activating the outgoing node. |
protected void |
ezcWorkflowNodeMerge::prepareActivate()
Prepares this node for activation. |
From ezcWorkflowNode | |
public ezcWorkflowNode |
ezcWorkflowNode::__construct()
Constructs a new node with the configuration $configuration. |
public void |
ezcWorkflowNode::accept()
Reimplementation of accept() calls accept on all out nodes. |
protected void |
ezcWorkflowNode::activateNode()
Convenience method for activating an (outgoing) node. |
public ezcWorkflowNode |
ezcWorkflowNode::addInNode()
Adds a node to the incoming nodes of this node. |
public ezcWorkflowNode |
ezcWorkflowNode::addOutNode()
Adds a node to the outgoing nodes of this node. |
public mixed |
ezcWorkflowNode::getConfiguration()
Returns the configuration of this node. |
public ezcWorkflowNode[] |
ezcWorkflowNode::getInNodes()
Returns the incoming nodes of this node. |
public ezcWorkflowNode[] |
ezcWorkflowNode::getOutNodes()
Returns the outgoing nodes of this node. |
public boolean |
ezcWorkflowNode::removeInNode()
Removes a node from the incoming nodes of this node. |
public boolean |
ezcWorkflowNode::removeOutNode()
Removes a node from the outgoing nodes of this node. |
public void |
ezcWorkflowNode::verify()
Checks this node's constraints. |
Documentation generated by phpDocumentor 1.4.3