akka.actor
Interface LoggingFSM<S,D>

All Superinterfaces:
Actor, ActorLogging, FSM<S,D>, Listeners
All Known Implementing Classes:
AbstractLoggingFSM, BarrierCoordinator, ClientFSM, ReliableProxy, ServerFSM, ThrottledAssociation

public interface LoggingFSM<S,D>
extends FSM<S,D>

Stackable trait for FSM which adds a rolling event log and debug logging capabilities (analogous to LoggingReceive).

Since:
1.2

Nested Class Summary
 
Nested classes/interfaces inherited from interface akka.actor.FSM
FSM.$minus$greater$, FSM.CurrentState<S>, FSM.CurrentState$, FSM.Event<D>, FSM.Event$, FSM.Failure, FSM.Failure$, FSM.LogEntry<S,D>, FSM.LogEntry$, FSM.Normal$, FSM.NullFunction$, FSM.Reason, FSM.Shutdown$, FSM.State<S,D>, FSM.State$, FSM.StateTimeout$, FSM.StopEvent<S,D>, FSM.StopEvent$, FSM.SubscribeTransitionCallBack, FSM.SubscribeTransitionCallBack$, FSM.Timer, FSM.Timer$, FSM.TransformHelper, FSM.Transition<S>, FSM.Transition$, FSM.UnsubscribeTransitionCallBack, FSM.UnsubscribeTransitionCallBack$
 
Nested classes/interfaces inherited from interface akka.actor.Actor
Actor.emptyBehavior$
 
Method Summary
 void advance()
           
 boolean debugEvent()
           
 FSM.Event<D>[] events()
           
 boolean full()
           
 scala.collection.IndexedSeq<FSM.LogEntry<S,D>> getLog()
          Retrieve current rolling log in oldest-first order.
 int logDepth()
           
 int pos()
           
 void processEvent(FSM.Event<D> event, java.lang.Object source)
           
 java.lang.Object[] states()
           
 
Methods inherited from interface akka.actor.FSM
applyState, cancelTimer, currentState, Event, generation, handleEvent, handleEventDefault, handleTransition, initialize, isStateTimerActive, isTimerActive, logTermination, makeTransition, nextState, nextStateData, onTermination, onTransition, postStop, processMsg, receive, register, setStateTimeout, setTimer, startWith, stateData, stateFunctions, stateName, StateTimeout, stateTimeouts, stay, stop, stop, stop, StopEvent, terminate, terminateEvent, timeoutFuture, timerGen, timers, total2pf, transform, transitionEvent, when, whenUnhandled
 
Methods inherited from interface akka.actor.Actor
aroundPostRestart, aroundPostStop, aroundPreRestart, aroundPreStart, aroundReceive, context, postRestart, preRestart, preStart, self, sender, supervisorStrategy, unhandled
 
Methods inherited from interface akka.routing.Listeners
gossip, listenerManagement, listeners
 
Methods inherited from interface akka.actor.ActorLogging
_log, log
 

Method Detail

logDepth

int logDepth()

debugEvent

boolean debugEvent()
Specified by:
debugEvent in interface FSM<S,D>

events

FSM.Event<D>[] events()

states

java.lang.Object[] states()

pos

int pos()

full

boolean full()

advance

void advance()

processEvent

void processEvent(FSM.Event<D> event,
                  java.lang.Object source)
Specified by:
processEvent in interface FSM<S,D>

getLog

scala.collection.IndexedSeq<FSM.LogEntry<S,D>> getLog()
Retrieve current rolling log in oldest-first order. The log is filled with each incoming event before processing by the user supplied state handler. The log entries are lost when this actor is restarted.