Example #1
0
        public void Run()
        {
            while (true)
            {
                string input = Console.ReadLine();
                if (input == "END")
                {
                    break;
                }

                StringBuilder result = new StringBuilder();

                try
                {
                    ReadCommands(input, result);
                }
                catch (ArgumentException ae)
                {
                    result.AppendLine(ae.Message);
                }

                Console.WriteLine(result.ToString().TrimEnd());
            }

            Console.WriteLine(controller.GetSummary());
        }
Example #2
0
        public void Run()
        {
            string inputLine = Console.ReadLine();

            while (inputLine != "END")
            {
                try
                {
                    MoveCommand(inputLine, controller);
                }
                catch (Exception ex)
                {
                    Console.WriteLine($"{ex.GetBaseException().Message}");
                }

                inputLine = Console.ReadLine();
            }

            Console.WriteLine(controller.GetSummary());
        }
Example #3
0
        public void Run()
        {
            string command = Console.ReadLine();

            while (command != "END")
            {
                try
                {
                    Console.WriteLine(ReadCommand(command));
                }
                catch (ArgumentException ex)
                {
                    Console.WriteLine(ex.Message);
                }

                command = Console.ReadLine();
            }

            Console.WriteLine(restaurantController.GetSummary());
        }
Example #4
0
        public void Run()
        {
            string inputLine = Console.ReadLine();

            while (inputLine != "END")
            {
                try
                {
                    MoveCommand(inputLine, rc);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.GetBaseException().Message);
                }


                inputLine = Console.ReadLine();
            }

            Console.WriteLine(rc.GetSummary());
        }
Example #5
0
        public void Run()
        {
            string input = reader.Read();

            while (input != "END")
            {
                string[] arguments  = input.Split().ToArray();
                string   command    = arguments[0];
                string[] parameters = arguments.Skip(1).ToArray();
                string   result     = string.Empty;
                try
                {
                    switch (command)
                    {
                    case "AddFood":
                        //{type} {name} {price}
                        string  foodType  = parameters[0];
                        string  foodName  = parameters[1];
                        decimal foodPrice = decimal.Parse(parameters[2]);
                        result = restaurant.AddFood(foodType, foodName, foodPrice);
                        writer.Write(result);
                        break;

                    case "AddDrink":
                        //{type} {name} {servingSize} {brand}
                        string drinkType        = parameters[0];
                        string drinkName        = parameters[1];
                        int    drinkServingSize = int.Parse(parameters[2]);
                        string drinkBrand       = parameters[3];
                        result = restaurant.AddDrink(drinkType, drinkName, drinkServingSize, drinkBrand);
                        writer.Write(result);
                        break;

                    case "AddTable":
                        //{type} {tableNumber} {capacity}
                        string tableType     = parameters[0];
                        int    tableNumber   = int.Parse(parameters[1]);
                        int    tableCapacity = int.Parse(parameters[2]);
                        result = restaurant.AddTable(tableType, tableNumber, tableCapacity);
                        writer.Write(result);
                        break;

                    case "ReserveTable":
                        //{numberOfPeople}
                        int numberOfPeople = int.Parse(parameters[0]);
                        result = restaurant.ReserveTable(numberOfPeople);
                        writer.Write(result);
                        break;

                    case "OrderFood":
                        // {tableNumber} {foodName}
                        int    tableToOrder = int.Parse(parameters[0]);
                        string foodToOrder  = parameters[1];
                        result = restaurant.OrderFood(tableToOrder, foodToOrder);
                        writer.Write(result);
                        break;

                    case "OrderDrink":
                        // {tableNumber} {drinkName} {drinkBrand}
                        tableToOrder = int.Parse(parameters[0]);
                        string drinkToOrder = parameters[1];
                        drinkBrand = parameters[2];
                        result     = restaurant.OrderDrink(tableToOrder, drinkToOrder, drinkBrand);
                        writer.Write(result);
                        break;

                    case "LeaveTable":
                        // {tableNumber}
                        int tableToLeave = int.Parse(parameters[0]);
                        result = restaurant.LeaveTable(tableToLeave);
                        writer.Write(result);
                        break;

                    case "GetFreeTablesInfo":
                        result = restaurant.GetFreeTablesInfo();

                        if (result.Length > 0)
                        {
                            writer.Write(result);
                        }
                        break;

                    case "GetOccupiedTablesInfo":
                        result = restaurant.GetOccupiedTablesInfo();
                        if (result.Length > 0)
                        {
                            writer.Write(result);
                        }
                        break;
                    }
                }
                catch (ArgumentException ae)
                {
                    writer.Write(ae.Message);
                }
                catch (Exception e)
                {
                    writer.Write(e.Message);
                }

                input = reader.Read();
            }

            string sumary = restaurant.GetSummary();

            writer.Write(sumary);
        }
Example #6
0
        public void Run()
        {
            while (true)
            {
                string input = Console.ReadLine();

                if (input == "END")
                {
                    Console.WriteLine(restaurantController.GetSummary());
                    return;
                }

                var data    = input.Split();
                var command = data[0];
                var args    = data.Skip(1).ToArray();
                var output  = string.Empty;

                try
                {
                    switch (command)
                    {
                    case "AddFood":
                        string  type  = args[0];
                        string  name  = args[1];
                        decimal price = decimal.Parse(args[2]);
                        output = this.restaurantController.AddFood(type, name, price);
                        break;

                    case "AddDrink":
                        type = args[0];
                        name = args[1];
                        int    servingSize = int.Parse(args[2]);
                        string brand       = args[3];
                        output = this.restaurantController.AddDrink(type, name, servingSize, brand);
                        break;

                    case "AddTable":
                        type = args[0];
                        int tableNumber = int.Parse(args[1]);
                        int capacity    = int.Parse(args[2]);
                        output = this.restaurantController.AddTable(type, tableNumber, capacity);
                        break;

                    case "ReserveTable":
                        int numberOfPeople = int.Parse(args[0]);
                        output = this.restaurantController.ReserveTable(numberOfPeople);
                        break;

                    case "OrderFood":
                        tableNumber = int.Parse(args[0]);
                        string foodName = args[1];
                        output = this.restaurantController.OrderFood(tableNumber, foodName);
                        break;

                    case "OrderDrink":
                        tableNumber = int.Parse(args[0]);
                        string drinkName  = args[1];
                        string drinkBrand = args[2];
                        output = this.restaurantController.OrderDrink(tableNumber, drinkName, drinkBrand);
                        break;

                    case "LeaveTable":
                        tableNumber = int.Parse(args[0]);
                        output      = this.restaurantController.LeaveTable(tableNumber);
                        break;

                    case "GetFreeTablesInfo":
                        output = this.restaurantController.GetFreeTablesInfo();
                        break;

                    case "GetOccupiedTablesInfo":
                        output = this.restaurantController.GetOccupiedTablesInfo();
                        break;

                    default:
                        break;
                    }
                }
                catch (Exception ex)
                {
                    output = ex.InnerException.Message;
                }


                Console.WriteLine(output);
            }
        }
        public void Run()
        {
            string command = Console.ReadLine();

            while (command != "END")
            {
                string[] args = command.Split(" ").ToArray();

                string currentCommand = args[0];

                try
                {
                    switch (currentCommand)
                    {
                    case "AddFood":
                    {
                        string  type  = args[1];
                        string  name  = args[2];
                        decimal price = decimal.Parse(args[3]);

                        Console.WriteLine(this.restaurant.AddFood(type, name, price));
                    };
                        break;

                    case "AddDrink":
                    {
                        string type  = args[1];
                        string name  = args[2];
                        int    size  = int.Parse(args[3]);
                        string brand = args[4];

                        Console.WriteLine(this.restaurant.AddDrink(type, name, size, brand));
                    };
                        break;

                    case "AddTable":
                    {
                        string type        = args[1];
                        int    tableNumber = int.Parse(args[2]);
                        int    capacity    = int.Parse(args[3]);

                        Console.WriteLine(this.restaurant.AddTable(type, tableNumber, capacity));
                    };
                        break;

                    case "ReserveTable":
                    {
                        int numberOfPeople = int.Parse(args[1]);

                        Console.WriteLine(this.restaurant.ReserveTable(numberOfPeople));
                    };
                        break;

                    case "OrderFood":
                    {
                        int    tableNumber = int.Parse(args[1]);
                        string foodName    = args[2];

                        Console.WriteLine(this.restaurant.OrderFood(tableNumber, foodName));
                    };
                        break;

                    case "OrderDrink":
                    {
                        int    tableNumber = int.Parse(args[1]);
                        string drinkName   = args[2];
                        string drinkBrand  = args[3];

                        Console.WriteLine(this.restaurant.OrderDrink(tableNumber, drinkName, drinkBrand));
                    };
                        break;

                    case "LeaveTable":
                    {
                        int tableNumber = int.Parse(args[1]);

                        Console.WriteLine(this.restaurant.LeaveTable(tableNumber));
                    };
                        break;

                    case "GetFreeTablesInfo":
                    {
                        Console.WriteLine(restaurant.GetFreeTablesInfo());
                    };
                        break;

                    case "GetOccupiedTablesInfo":
                    {
                        Console.WriteLine(restaurant.GetOccupiedTablesInfo());
                    };
                        break;
                    }
                }
                catch (ArgumentException ae)
                {
                    Console.WriteLine(ae.Message);
                }


                command = Console.ReadLine();
            }

            Console.WriteLine(restaurant.GetSummary());
        }
Example #8
0
        public void Run()
        {
            string input = Console.ReadLine();

            while (input != "END")
            {
                List <string> args    = input.Split().ToList();
                string        command = args[0];
                args.RemoveAt(0);
                string result = string.Empty;

                try
                {
                    switch (command)
                    {
                    case "AddFood":
                        string  type  = args[0];
                        string  name  = args[1];
                        decimal price = decimal.Parse(args[2]);
                        result = restaurantController.AddFood(type, name, price);
                        break;

                    case "AddDrink":
                        int    servingSize = int.Parse(args[2]);
                        string brand       = args[3];
                        result = restaurantController.AddDrink(args[0], args[1], servingSize, brand);
                        break;

                    case "AddTable":
                        int tableNumber = int.Parse(args[1]);
                        int capacity    = int.Parse(args[2]);
                        result = restaurantController.AddTable(args[0], tableNumber, capacity);
                        break;

                    case "ReserveTable":
                        int numberOfPeople = int.Parse(args[0]);
                        result = restaurantController.ReserveTable(numberOfPeople);
                        break;

                    case "OrderFood":
                        int    tn       = int.Parse(args[0]);
                        string foodName = args[1];
                        result = restaurantController.OrderFood(tn, foodName);
                        break;

                    case "OrderDrink":
                        int    tn2        = int.Parse(args[0]);
                        string drinkName  = args[1];
                        string drinkBrand = args[2];
                        result = restaurantController.OrderDrink(tn2, drinkName, drinkBrand);
                        break;

                    case "LeaveTable":
                        int tn3 = int.Parse(args[0]);
                        result = restaurantController.LeaveTable(tn3);
                        break;

                    case "GetFreeTablesInfo":
                        result = restaurantController.GetFreeTablesInfo();
                        break;

                    case "GetOccupiedTablesInfo":
                        result = restaurantController.GetOccupiedTablesInfo();
                        break;

                    default:
                        throw new ArgumentException($"{command} is an invalid command!");
                    }
                }

                catch (ArgumentException ae)
                {
                    Console.Write(ae.Message);
                }

                Console.WriteLine(result);

                input = Console.ReadLine();

                if (input == "END")
                {
                    Console.WriteLine(restaurantController.GetSummary());
                }
            }
        }