gate.fsm
Class Transition

java.lang.Object
  |
  +--gate.fsm.Transition
All Implemented Interfaces:
Serializable

public class Transition
extends Object
implements Serializable

This class implements a Finite State Machine transition. A transition is owned by a gate.fsm.State object and contains set of restrictions and a reference to the next state that will be accessed after consuming a set of input symbols according to the restrictions. A transition can also hold information about the label that should be bound to the symbols (annotations) consumed during the state transition.

See Also:
Serialized Form

Field Summary
private  LinkedList bindings
          A list with all the labels associated to the annotations recognized by this transition.
private  BasicPatternElement constraints
          The constraints on this transition.
private static boolean DEBUG
          Debug flag
private static int index
          Static member used for generating unique IDs for the objects of type Transition
private  int myIndex
          The unique index of this transition.
private  State target
          The state this transition leads to
 
Constructor Summary
Transition()
          Default constructor.
Transition(BasicPatternElement constraints, State state)
          Creates a new transition using the given set of constraints and target state.
Transition(BasicPatternElement constraints, State state, LinkedList bindings)
          Ctreates a new transition from a set of constraints, a target state and a list of labels to be bound with the recognized input symbols (aka annotations).
 
Method Summary
 LinkedList getBindings()
          Returns the list of bindings associated to this transition
 BasicPatternElement getConstraints()
          Gets the constraints associated to this transition
 State getTarget()
          Gets the target state of this transition
 String shortDesc()
          Returns a shorter description that toSting().
 String toString()
          Returns a textual desciption of this transition.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

DEBUG

private static final boolean DEBUG
Debug flag

constraints

private BasicPatternElement constraints
The constraints on this transition.

target

private State target
The state this transition leads to

bindings

private LinkedList bindings
A list with all the labels associated to the annotations recognized by this transition. We need to use the actual object and not the interface (java.util.List) because we need this object to be cloneable

myIndex

private int myIndex
The unique index of this transition. This value is not used by any of the algorithms. It is only provided as a convenient method of identifying the transitions in textual representations (toString() and GML related methods)

index

private static int index
Static member used for generating unique IDs for the objects of type Transition
Constructor Detail

Transition

public Transition()
Default constructor. Creates a new transition with a new unique index. This constructor should be called by all other constructors.

Transition

public Transition(BasicPatternElement constraints,
                  State state)
Creates a new transition using the given set of constraints and target state.
Parameters:
constraints - the set on constraints associated to this transition
state - the target state of this transition

Transition

public Transition(BasicPatternElement constraints,
                  State state,
                  LinkedList bindings)
Ctreates a new transition from a set of constraints, a target state and a list of labels to be bound with the recognized input symbols (aka annotations).
Method Detail

getTarget

public State getTarget()
Gets the target state of this transition
Returns:
an object of type gate.fsm.State

getConstraints

public BasicPatternElement getConstraints()
Gets the constraints associated to this transition

toString

public String toString()
Returns a textual desciption of this transition.
Overrides:
toString in class Object
Returns:
a String

shortDesc

public String shortDesc()
Returns a shorter description that toSting(). Actually, it returns the unique index in String form.

getBindings

public LinkedList getBindings()
Returns the list of bindings associated to this transition