public class State
extends java.lang.Object
StateMachine
. Normally you wouldn't create
instances of this class directly but rather use the
State
annotation to define
your states and then let StateMachineFactory
create a
StateMachine
for you.
State
s inherits Transition
s from
their parent. A State
can override any of the parents
Transition
s. When an Event
is processed the Transition
s
of the current State
will be searched for a Transition
which
can handle the event. If none is found the State
's parent will be
searched and so on.
Constructor and Description |
---|
State(java.lang.String id)
Creates a new
State with the specified id. |
State(java.lang.String id,
State parent)
Creates a new
State with the specified id and parent. |
Modifier and Type | Method and Description |
---|---|
State |
addTransition(Transition transition)
Adds an outgoing
Transition to this State with weight 0. |
State |
addTransition(Transition transition,
int weight)
Adds an outgoing
Transition to this State with the
specified weight. |
boolean |
equals(java.lang.Object o) |
java.lang.String |
getId()
Returns the id of this
State . |
State |
getParent()
Returns the parent
State . |
java.util.List<Transition> |
getTransitions()
|
int |
hashCode() |
java.lang.String |
toString() |
public State(java.lang.String id)
State
with the specified id.id
- the unique id of this State
.public java.lang.String getId()
State
.public State getParent()
State
.null
if this State
has no
parent.public java.util.List<Transition> getTransitions()
Transition
s.public State addTransition(Transition transition)
Transition
to this State
with weight 0.transition
- the Transition
to add.State
.addTransition(Transition, int)
public State addTransition(Transition transition, int weight)
Transition
to this State
with the
specified weight. The higher the weight the less important a
Transition
is. If two Transition
s match the same
Event
the Transition
with the lower weight will
be executed.transition
- the Transition
to add.State
.public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.String toString()
toString
in class java.lang.Object
Copyright © 2004-2019 Apache MINA Project. All Rights Reserved.