PHP Class ezcWorkflowNodeConditionalBranch, Workflow

Most implementations only need to set the conditions for proper functioning.
Inheritance: extends ezcWorkflowNodeBranch
Show file Open project: zetacomponents/workflow

Protected Properties

Property Type Description
$configuration The key is the position of the out node in the array of out nodes.
$maxActivatedConditionalOutNodes integer Constraint: The maximum number of conditional outgoing nodes this node may activate. Set to false to disable this constraint.
$minActivatedConditionalOutNodes integer Constraint: The minimum number of conditional outgoing nodes this node has to activate. Set to false to disable this constraint.
$minConditionalOutNodes integer Constraint: The minimum number of conditional outgoing nodes this node has to have. Set to false to disable this constraint.

Public Methods

Method Description
addConditionalOutNode ( ezcWorkflowCondition $condition, ezcWorkflowNode $outNode, ezcWorkflowNode $else = null ) : ezcWorkflowNode Adds the conditional outgoing node $outNode to this node with the condition $condition. Optionally, an $else node can be specified that is activated when the $condition evaluates to false.
execute ( ezcWorkflowExecution $execution ) : boolean Evaluates all the conditions, checks the constraints and activates any nodes that have passed through both checks and condition evaluation.
getCondition ( ezcWorkflowNode $node ) : ezcWorkflowCondition Returns the condition for a conditional outgoing node and false if the passed not is not a (unconditional) outgoing node of this node.
isElse ( ezcWorkflowNode $node ) : boolean Returns true when the $node belongs to an ELSE condition.
verify ( ) Checks this node's constraints.

Method Details

addConditionalOutNode() public method

Adds the conditional outgoing node $outNode to this node with the condition $condition. Optionally, an $else node can be specified that is activated when the $condition evaluates to false.
public addConditionalOutNode ( ezcWorkflowCondition $condition, ezcWorkflowNode $outNode, ezcWorkflowNode $else = null ) : ezcWorkflowNode
$condition ezcWorkflowCondition
$outNode ezcWorkflowNode
$else ezcWorkflowNode
return ezcWorkflowNode

execute() public method

Evaluates all the conditions, checks the constraints and activates any nodes that have passed through both checks and condition evaluation.
public execute ( ezcWorkflowExecution $execution ) : boolean
$execution ezcWorkflowExecution
return boolean true when the node finished execution, and false otherwise

getCondition() public method

Returns the condition for a conditional outgoing node and false if the passed not is not a (unconditional) outgoing node of this node.
public getCondition ( ezcWorkflowNode $node ) : ezcWorkflowCondition
$node ezcWorkflowNode
return ezcWorkflowCondition

isElse() public method

Returns true when the $node belongs to an ELSE condition.
public isElse ( ezcWorkflowNode $node ) : boolean
$node ezcWorkflowNode
return boolean

verify() public method

Checks this node's constraints.
public verify ( )

Property Details

$configuration protected property

The key is the position of the out node in the array of out nodes.
protected $configuration

$maxActivatedConditionalOutNodes protected property

Constraint: The maximum number of conditional outgoing nodes this node may activate. Set to false to disable this constraint.
protected int $maxActivatedConditionalOutNodes
return integer

$minActivatedConditionalOutNodes protected property

Constraint: The minimum number of conditional outgoing nodes this node has to activate. Set to false to disable this constraint.
protected int $minActivatedConditionalOutNodes
return integer

$minConditionalOutNodes protected property

Constraint: The minimum number of conditional outgoing nodes this node has to have. Set to false to disable this constraint.
protected int $minConditionalOutNodes
return integer