Example #1
0
 public static void Register(BaseRunable runable)
 {
     if (!_runnables.Contains(runable))
     {
         _runnables.Add(runable);
     }
 }
Example #2
0
        public static bool RequestInput <T>(BaseRunable runable, string message, out T result)
        {
            Console.WriteLine(runable.OutputString);
            runable.Flush(false);

            Console.WriteLine(message);
            object input = Console.ReadLine();

            try
            {
                result = (T)Convert.ChangeType(input, typeof(T));
                return(true);
            }
            catch (Exception)
            {
                result        = default(T);
                runable.Error = $"Kan {message} niet converteren naar {typeof(T)}";
                return(false);
            }
        }
Example #3
0
        private static void ExecuteRunable(string name, BaseRunable runable)
        {
            //Clear the console and state which assignment is running.
            Console.Clear();
            Console.WriteLine($"Running [{name}], Output:\n");

            //Execute, print result and flush the runable.
            runable.Execute();
            Console.WriteLine(runable.OutputString);

            if (runable.HasError)
            {
                Console.WriteLine("[ERROR]: " + runable.Error);
                Console.WriteLine();
            }

            runable.Flush(true);

            //State that we are done, wait for the user to press a key.
            Console.WriteLine($"Done running [{name}] press a key to continue...");
            Console.ReadKey();
        }