1 package cz.cuni.amis.pogamut.udk.communication.translator.server.state;
2
3 import cz.cuni.amis.fsm.FSMState;
4 import cz.cuni.amis.fsm.FSMTransition;
5 import cz.cuni.amis.fsm.IFSMState;
6 import cz.cuni.amis.pogamut.base.communication.messages.InfoMessage;
7 import cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.GameInfo;
8 import cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.HandShakeStart;
9 import cz.cuni.amis.pogamut.udk.communication.messages.gbinfomessages.Password;
10 import cz.cuni.amis.pogamut.udk.communication.translator.TranslatorContext;
11 import cz.cuni.amis.pogamut.udk.communication.translator.TranslatorMessages;
12 import cz.cuni.amis.pogamut.udk.communication.translator.UnexpectedMessageException;
13 import cz.cuni.amis.pogamut.udk.communication.translator.server.support.AbstractServerFSMState;
14 import cz.cuni.amis.pogamut.udk.communication.translator.shared.transition.GameInfoTransition;
15
16
17
18
19
20
21
22
23
24
25
26 @FSMState(map = { @FSMTransition(
27 state = PasswordState.class,
28 symbol = { Password.class },
29 transition = {}),
30 @FSMTransition(
31 state = ServerRunningState.class,
32 symbol = { HandShakeStart.class },
33 transition = {})
34 }
35 )
36 public class ReadyState extends AbstractServerFSMState<InfoMessage, TranslatorContext> {
37
38 @Override
39 public void init(TranslatorContext context) {
40 }
41
42 @Override
43 public void restart(TranslatorContext context) {
44 }
45
46 @Override
47 public void stateEntering(TranslatorContext context,
48 IFSMState<InfoMessage, TranslatorContext> fromState,
49 InfoMessage symbol) {
50 }
51
52 @Override
53 public void stateLeaving(TranslatorContext context,
54 IFSMState<InfoMessage, TranslatorContext> toState, InfoMessage symbol) {
55 }
56
57 @Override
58 protected void innerStateSymbol(TranslatorContext context, InfoMessage symbol) {
59 if (symbol instanceof HandShakeStart) return;
60 throw new UnexpectedMessageException(TranslatorMessages.unexpectedMessage(this, symbol), context.getLogger(), this);
61 }
62
63 }