cz.cuni.amis.pogamut.ut2004.communication.translator.bot.support
Class BotMessageExpectedState<CONTEXT extends TranslatorContext>

java.lang.Object
  extended by cz.cuni.amis.pogamut.ut2004.communication.translator.bot.support.AbstractBotFSMState<InfoMessage,CONTEXT>
      extended by cz.cuni.amis.pogamut.ut2004.communication.translator.bot.support.BotMessageExpectedState<CONTEXT>
Type Parameters:
CONTEXT -
All Implemented Interfaces:
IFSMState<InfoMessage,CONTEXT>
Direct Known Subclasses:
ConfigureMessageExpectedState, HelloBotExpectedState, InitedMessageExpectedState

public abstract class BotMessageExpectedState<CONTEXT extends TranslatorContext>
extends AbstractBotFSMState<InfoMessage,CONTEXT>

Used to check the message that is used to leave the state.

All other messages are considered as the violation of the protocol -> throws UnexpectedMessageException.


Constructor Summary
BotMessageExpectedState(java.lang.Class expectedMessage)
           
 
Method Summary
 void init(CONTEXT context)
           
 void restart(CONTEXT context)
           
 void stateEntering(CONTEXT context, IFSMState<InfoMessage,CONTEXT> fromState, InfoMessage symbol)
           
 void stateLeaving(CONTEXT context, IFSMState<InfoMessage,CONTEXT> toState, InfoMessage symbol)
           
 void stateSymbol(CONTEXT context, InfoMessage symbol)
           
 
Methods inherited from class cz.cuni.amis.pogamut.ut2004.communication.translator.bot.support.AbstractBotFSMState
toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BotMessageExpectedState

public BotMessageExpectedState(java.lang.Class expectedMessage)
Parameters:
expectedMessage - message that triggers the switch to another state
Method Detail

init

public void init(CONTEXT context)

restart

public void restart(CONTEXT context)

stateEntering

public void stateEntering(CONTEXT context,
                          IFSMState<InfoMessage,CONTEXT> fromState,
                          InfoMessage symbol)

stateLeaving

public void stateLeaving(CONTEXT context,
                         IFSMState<InfoMessage,CONTEXT> toState,
                         InfoMessage symbol)

stateSymbol

public void stateSymbol(CONTEXT context,
                        InfoMessage symbol)