Type cast access for ext state variables.

This commit is contained in:
Janne Valkealahti
2015-04-10 09:14:58 +01:00
parent eae691f4a5
commit 60e8f0745a
3 changed files with 29 additions and 6 deletions

View File

@@ -166,16 +166,16 @@ public class Application {
@Override
public void execute(StateContext<States, Events> context) {
Map<Object, Object> variables = context.getExtendedState().getVariables();
Object foo = variables.get("foo");
if (foo instanceof Integer && ((Integer)foo) == 0) {
Integer foo = context.getExtendedState().get("foo", Integer.class);
if (foo == null) {
log.info("Init foo to 0");
variables.put("foo", 0);
} else if (foo == 0) {
log.info("Switch foo to 1");
variables.put("foo", 1);
} else if (foo instanceof Integer && ((Integer)foo) == 1) {
} else if (foo == 1) {
log.info("Switch foo to 0");
variables.put("foo", 0);
} else {
log.info("Init foo to 0");
variables.put("foo", 0);
}
}
}