public void HandleEvent(Event e) { switch (state) { case State.LOCKED: switch (e) { case Event.COIN: state = State.UNLOCKED; turnstileController.Unlock(); break; case Event.PASS: turnstileController.Alarm(); break; } break; case State.UNLOCKED: switch (e) { case Event.COIN: turnstileController.Thankyou(); break; case Event.PASS: state = State.LOCKED; turnstileController.Lock(); break; } break; } }
internal void Alarm() { turnstileController.Alarm(); }
public override void Alarm() { controller.Alarm(); }