using System; using System.Collections.Generic; using System.Text; using Wayne.Lib.StateEngine; namespace SinochemInternetPlusApp.States.BasicMode { static class CONFIGURATION { // make sure entry point is Init, and exit point is Final public static void Config(StateTransitionLookup sl) { sl.AddTransition<Init, Shared.AuthorizePump>(TransitionType.Init); sl.AddTransition<Shared.AuthorizePump, Shared.Fueling>(TransitionType.PumpAuthOk); sl.AddTransition<Shared.AuthorizePump, Final>(TransitionType.Timeout); sl.AddTransition<Shared.AuthorizePump, Final>(TransitionType.PumpAuthFailed); sl.AddTransition<Shared.Fueling, Shared.WaitForPayableTrx>(TransitionType.NozzleReplaced); sl.AddTransition<Shared.WaitForPayableTrx, Final>(TransitionType.FuelingDone); sl.AddTransition<Shared.WaitForPayableTrx, Final>(TransitionType.Timeout); sl.AddTransition<AnyState, Final>(BasicTransitionType.Error); } } }