View Javadoc

1   package cz.cuni.amis.pogamut.ut2004.communication.translator.shared.transition;
2   
3   import cz.cuni.amis.fsm.IFSMState;
4   import cz.cuni.amis.fsm.IFSMTransition;
5   import cz.cuni.amis.pogamut.base.communication.messages.InfoMessage;
6   import cz.cuni.amis.pogamut.base.communication.translator.event.IWorldChangeEvent;
7   import cz.cuni.amis.pogamut.ut2004.communication.translator.TranslatorContext;
8   import cz.cuni.amis.pogamut.ut2004.communication.translator.shared.events.InitCommandRequest;
9   
10  public class InitRequestedTransition implements IFSMTransition<InfoMessage, TranslatorContext> {
11  
12  	@Override
13  	public void init(TranslatorContext context) {
14  	}
15  
16  	@Override
17  	public void restart(TranslatorContext context) {
18  	}
19  
20  	@Override
21  	public void stepped(TranslatorContext context,
22  			IFSMState<InfoMessage, TranslatorContext> fromState,
23  			InfoMessage bySymbol,
24  			IFSMState<InfoMessage, TranslatorContext> toState) {
25  		if (bySymbol instanceof IWorldChangeEvent) {
26  			context.getEventQueue().pushEvent(new InitCommandRequest(((IWorldChangeEvent)bySymbol).getSimTime()));
27  		} else {
28  			context.getEventQueue().pushEvent(new InitCommandRequest(0));
29  		}
30  	}
31  	
32  	@Override
33  	public String toString() {
34  		return getClass().getSimpleName();
35  	}
36  
37  }