예제 #1
0
        public async Task <double> LocalCalc(string input)
        {
            var calculator = new CalculatorRunner(new ServiceCollection().AddSingleton <ICalculate, LocalCalculator>());

            return(await calculator.Activate(input));
        }
예제 #2
0
        private static void RunMenu()
        {
            IPrinter printer = new ConsolePrinter();
            IReader  reader  = new ConsoleReader();

            while (true)
            {
                printer.PrintLine("Enter task number to run task (1-7) or enter using keyboard:\n`calc` or `skypetask` or `di` or `reflection` or any other value to quit");
                string taskNumber      = reader.ReadLine();
                bool   continueLooping = true;
                switch (taskNumber)
                {
                case "1":
                {
                    printer.PrintLine("Enter part number to run task (1 or 2) or any other value to quit");
                    string partNumber = reader.ReadLine();
                    switch (partNumber)
                    {
                    case "1":
                    {
                        var task1Part1 = new Task1Runner();
                        task1Part1.Main();
                        break;
                    }

                    case "2":
                    {
                        var task1Part2 = new Task1Part2Runner();
                        task1Part2.Main();
                        break;
                    }

                    default:
                        break;
                    }
                    break;
                }

                case "2":
                {
                    var task2 = new Task2Runner();
                    task2.Main();
                    break;
                }

                case "3":
                {
                    var task3 = new Task3Runner();
                    task3.Main();
                    break;
                }

                case "4":
                {
                    var task4 = new Task4Runner();
                    task4.Main();
                    break;
                }

                case "5":
                {
                    var task5 = new Tusk5Runner();
                    task5.Main();
                    break;
                }

                case "6":
                {
                    var task6 = new Task6Runner();
                    task6.Main();
                    break;
                }

                case "7":
                {
                    var task7 = new Epam.Task7.Task7Runner();
                    task7.Main();
                    break;
                }

                case "skypetask":
                {
                    printer.PrintLine("Enter variant" +
                                      " (1 or 2) or any other value to quit");
                    string partNumber = reader.ReadLine();
                    switch (partNumber)
                    {
                    case "1":
                    {
                        var skypetask = new Epam.TaskFromSkype1Variant1.Task7Runner();
                        skypetask.Main();
                        break;
                    }

                    case "2":
                    {
                        var skypetask = new Epam.TaskFromSkype1Variant2.Task7Runner();
                        skypetask.Main();
                        break;
                    }

                    default:
                        break;
                    }
                    break;
                }

                case "calc":
                {
                    var taskCalc = new CalculatorRunner();
                    taskCalc.Main();
                    break;
                }

                case "di":
                {
                    var di = new Epam.DiService.TaskRunner();
                    di.Main();
                    break;
                }

                case "reflection":
                {
                    var reflectionTusk = new Epam.Reflection.TaskRunner();
                    reflectionTusk.Main();
                    break;
                }

                default:
                {
                    continueLooping = false;
                    break;
                }
                }
                if (!continueLooping)
                {
                    break;
                }
            }
        }