Esempio n. 1
0
        static void Main(string[] args)
        {
            var         output  = new OutputConsole();
            MobilePhone myPhone = new MobilePhone(output);

            Console.WriteLine(myPhone.GetFullDescription());
            Run(ref myPhone);
        }
Esempio n. 2
0
        public static void Run(ref MobilePhone myPhone)
        {
            while (true)
            {
                Console.WriteLine("Select option to do(specify index)");
                Console.WriteLine("1: Attach component");
                Console.WriteLine("2: Detach component");
                Console.WriteLine("3: Show full mobile description");
                Console.WriteLine("4: Play component");
                Console.WriteLine("5: List of devices attached");
                Console.WriteLine("6: Device info");
                Console.WriteLine("q: For exit");

                try {
                    var input = Console.ReadKey().KeyChar.ToString();
                    if (input == "q")
                    {
                        break;
                    }
                    var choosOperation = int.Parse(input);
                    Console.WriteLine("\n");

                    switch (choosOperation)
                    {
                    case 1:
                        Attach(ref myPhone);
                        break;

                    case 2:
                        Console.WriteLine("Select component to dettach(specify index)");
                        myPhone.DeviceList();
                        var deviceNumber = int.Parse((Console.ReadKey().KeyChar.ToString()));
                        myPhone.DettachDevice(deviceNumber);

                        break;

                    case 3:
                        Console.WriteLine(myPhone.GetFullDescription());
                        break;

                    case 4:
                        Console.WriteLine("Select component to dettach(specify index)");
                        myPhone.DeviceList();
                        var devicePlayNumber = int.Parse((Console.ReadKey().KeyChar.ToString()));
                        myPhone.Play(devicePlayNumber);

                        break;

                    case 5:
                        myPhone.DeviceList();
                        break;

                    case 6:
                        Console.WriteLine("Select component to dettach(specify index)");
                        myPhone.DeviceList();
                        var deviceInfoNumber = int.Parse((Console.ReadKey().KeyChar.ToString()));
                        myPhone.DeviceInfo(deviceInfoNumber);
                        break;
                    }
                }
                catch (Exception e) {
                    Console.WriteLine(e.ToString());
                }
            }
        }