Fork me on Github

Class Finite\State\ State

The base State class.

Feel free to extend it to fit to your needs


Implements: StateInterface

Methods

__construct($name, $type = self::TYPE_NORMAL, array $transitions = array(), array $properties = array())

boolean isInitial()

Returns if this state is the initial state

mixed isFinal()

Returns if this state is the final state

mixed isNormal()

Returns if this state is a normal state (!($this->isInitial() || $this->isFinal())

string getType()

Returns the state type

addTransition( $transition $transition)

setTransitions( array $transitions)

array getTransitions()

Returns the available transitions

boolean can( string| TransitionInterface $transition)

Returns if this state can run $transition

boolean has( string $property)

mixed get( string $property, $default = null)

mixed getProperties()

Returns optional state properties

string getName()

Returns the state name

setProperties( array $properties)

string __toString()

Details

public __construct($name, $type = self::TYPE_NORMAL, array $transitions = array(), array $properties = array())

Parameters
$name
$type
array $transitions
array $properties

public boolean isInitial()

Returns if this state is the initial state

Return Value
boolean

public mixed isFinal()

Returns if this state is the final state

Return Value
mixed

public mixed isNormal()

Returns if this state is a normal state (!($this->isInitial()   $this->isFinal())

Return Value
mixed

public string getType()

Returns the state type

Return Value
string

public addTransition( $transition $transition)

Parameters
$transition $transition

public setTransitions( array $transitions)

Parameters
array $transitions

public array getTransitions()

Returns the available transitions

Return Value
array

public boolean can( string| TransitionInterface $transition)

Returns if this state can run $transition

Parameters
string| TransitionInterface $transition
Return Value
boolean

public boolean has( string $property)

Parameters
string $property
Return Value
boolean

public mixed get( string $property, $default = null)

Parameters
string $property
$default
Return Value
mixed

public mixed getProperties()

Returns optional state properties

Return Value
mixed

public string getName()

Returns the state name

Return Value
string

public setProperties( array $properties)

Parameters
array $properties

public string __toString()

Return Value
string