fm.liveswitch.ConnectionStateMachine Class Reference

A state machine for connection states. More...

Public Member Functions

 ConnectionStateMachine ()
 Initializes a new instance of the fm.liveswitch.ConnectionStateMachine class. More...
 
- Public Member Functions inherited from fm.liveswitch.StateMachine< fm.liveswitch.ConnectionState >
void addTransition (T fromState, T toState)
 Adds an allowed transition. More...
 
boolean canTransition (T toState)
 Determines whether a transition to the specified state is allowed. More...
 
long getLastStateMillis ()
 Gets the length of time spent in the last state, in milliseconds. More...
 
long getLastStateTicks ()
 Gets the length of time spent in the last state, in ticks. More...
 
getState ()
 Gets the state. More...
 
long getSystemTimestamp ()
 Gets the system timestamp of the last state transition. More...
 
boolean isReachable (T state)
 Determines whether a transition to a specified state is possible (even via intermediate hops). More...
 
 StateMachine (T initialState)
 Initializes a new instance of the fm.liveswitch.StateMachine class. More...
 
boolean transition (T toState)
 Transitions to the specified state. More...
 

Protected Member Functions

int stateToValue (fm.liveswitch.ConnectionState state)
 Converts a state to an integer value. More...
 
fm.liveswitch.ConnectionState valueToState (int value)
 Converts an integer value to a state. More...
 
- Protected Member Functions inherited from fm.liveswitch.StateMachine< fm.liveswitch.ConnectionState >
int getStateValue ()
 Gets the state value. More...
 
abstract int stateToValue (T state)
 Converts a state to an integer value. More...
 
abstract T valueToState (int value)
 Converts an integer value to a state. More...
 

Detailed Description

A state machine for connection states.

Constructor & Destructor Documentation

◆ ConnectionStateMachine()

fm.liveswitch.ConnectionStateMachine.ConnectionStateMachine ( )

Initializes a new instance of the fm.liveswitch.ConnectionStateMachine class.

Member Function Documentation

◆ stateToValue()

int fm.liveswitch.ConnectionStateMachine.stateToValue ( fm.liveswitch.ConnectionState  state)
protected

Converts a state to an integer value.

Parameters
stateThe state.

◆ valueToState()

fm.liveswitch.ConnectionState fm.liveswitch.ConnectionStateMachine.valueToState ( int  value)
protected

Converts an integer value to a state.

Parameters
valueThe integer value.