Esempio n. 1
0
        public static async Task Main(string[] args)
        {
            var config  = LoadConfig();
            var sensors = LoadSensors();

            if (config.Conditions?.Length == 0)
            {
                Console.WriteLine("No conditions provided..");
                return;
            }

            var parser = new ConditionParser();

            while (true)
            {
                foreach (var condition in config.Conditions)
                {
                    var result = await parser.EvaluateConditionAsync(condition, sensors);

                    if (result.IsSuccess)
                    {
                        Console.WriteLine($"Processed condition '{condition}' successfully. Result was: {result.Value}");
                    }
                    else
                    {
                        Console.WriteLine($"Processed condition '{condition}' failed: {result.ErrorMessage}");
                    }
                }
                Console.WriteLine("Press enter to evaluate all again. Type exit to exit.");
                var content = Console.ReadLine();
                if ("exit".Equals(content, StringComparison.InvariantCultureIgnoreCase))
                {
                    return;
                }
            }
        }