Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Stateless.StateMachine<string, string> machine = new Stateless.StateMachine<string, string>("first room");
- machine.Configure("first room")
- .Permit("Method1", "method1")
- .Permit("Method2", "method2")
- .OnActivate(() => Console.WriteLine("This is the first room"));
- machine.Configure("method1")
- .Permit("Method3", "method3")
- .Permit("Method4", "metod4")
- .Permit("Back", "first room")
- .OnActivate(() => Console.WriteLine("This method is run if the user types in 'Method1'"));
- machine.Configure("method2")
- .Permit("Method5", "method5")
- .Permit("Method6", "method6")
- .OnActivate(() => Console.WriteLine("This method is run if the user types in 'Method2' after the first method"));
- machine.Activate();
- while (true)
- {
- foreach (var t in machine.PermittedTriggers)
- {
- Console.WriteLine(t);
- }
- Console.Write(">");
- string input = Console.ReadLine();
- machine.Fire(input);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement