Zeta Components Manual :: Docs For Class ezcWorkflowNodeSynchronizingMerge
Workflow::ezcWorkflowNodeSynchronizingMerge
Class ezcWorkflowNodeSynchronizingMerge
This node implements the Synchronizing Merge workflow pattern.
The Synchronizing Merge workflow pattern is to be used to synchronize multiple parallel threads of execution that are activated by a preceding Multi-Choice.
Incoming nodes: 2..* Outgoing nodes: 1
This example displays how you can use ezcWorkflowNodeMultiChoice to activate one or more branches depending on the input and how you can use a synchronizing merge to merge them together again. Execution will not contiue until all activated branches have been completed.
- <?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 ezcWorkflowConditionGreaterThan( 1 ) ),
- $branch1 );
- new ezcWorkflowConditionGreaterThan( 10 ) ),
- $branch2 );
- // Merge the two branches together and continue execution.
- ?>
Source for this file: /Workflow/src/nodes/control_flow/synchronizing_merge.php
ezcWorkflowNode | --ezcWorkflowNodeMerge | --ezcWorkflowNodeSynchronization | --ezcWorkflowNodeSynchronizingMerge
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