void enter(Event event, EventPublisher ep) throws Exception { onEnter(event, ep); if (getParent() != null && getParent().getType() == StateType.SPACE) { ((OrState) getParent()).setCurrentSubstate(this); } for (StateBase branch : branches) { branch.enter(event, ep); } }
@Override void exit(Event event, EventPublisher ep) throws Exception { for (StateBase branch : branches) { branch.exit(event, ep); } if (getParent() != null && getParent().getType() == StateType.SPACE) { ((OrState) getParent()).setCurrentSubstate(null); } onExit(event, ep); }
@Override void handleEvent(Event e, EventPublisher ep) { for (StateBase branch : branches) { branch.handleEvent(e, ep); } }