public ScheduleController(ICityManager cityMgr, IFlightManager flightMgr, IAirlineManager airlineMgr, IScheduleManager schMgr, IRouteManager routeManager, IFlightCostManager fcostMgr)
 {
     this.airlineMgr   = airlineMgr;
     this.cityMgr      = cityMgr;
     this.schMgr       = schMgr;
     this.flightMgr    = flightMgr;
     this.routeManager = routeManager;
     this.fcostMgr     = fcostMgr;
 }
Beispiel #2
0
        /// <summary>
        /// Runs the Airline manager
        /// </summary>
        /// <param name="airlineManager">Airline manager need to run</param>
        static void Start(IAirlineManager airlineManager)
        {
            if (airlineManager != null)
            {
                airlineManager.DisplayInfoChanged += DisplayInfoChanged;

start:
                airlineManager.Reset();
                airlineManager.ShowOptions();
                airlineManager.SelectOptions(Console.ReadLine());

                string[] options = null;
                if (airlineManager.NeedOption)
                {
                    if (!airlineManager.IsServiceOptionNow)
                    {
                        options = GetOptionsFromConsole(airlineManager);
                    }
                    else
                    {
                        options = new string[] { Console.ReadLine() }
                    };
                }
                airlineManager.ProcessOptions(options);
                airlineManager.Show();
                var currentAirlineManager = airlineManager.CurrentAirlineManager;


                if (currentAirlineManager == null)
                {
                    airlineManager.DisplayInfoChanged -= DisplayInfoChanged;
                    return;
                }
                else
                {
                    if (currentAirlineManager == airlineManager)
                    {
                        goto start;
                    }
                    else
                    {
                        Start(currentAirlineManager);
                        goto start;
                    }
                }
            }
        }
Beispiel #3
0
 public void TestInitialize()
 {
     _AirlineManager = GetManager();
     _AirlineManager.DisplayInfoChanged += DisplayInfoChanged;
 }
 public AirlineController(IAirlineManager AirlineManager)
 {
     //_salesVolumeManager = salesVolumeManager;
     _AirlineManager = AirlineManager;
 }
Beispiel #5
0
 public CatalogController(IOrderManager manager1, ITourManager manager2, IAirlineManager manager3)
 {
     _managerorder   = manager1;
     _managertour    = manager2;
     _managerAirline = manager3;
 }
Beispiel #6
0
        /// <summary>
        /// Get options from console, helps with autofilling properties
        /// </summary>
        /// <param name="multiple">If should be more than one property</param>
        /// <param name="properties">List of properties for autofilling</param>
        /// <returns>Array of entered values</returns>
        private static string[] GetOptionsFromConsole(IAirlineManager airlineManager)
        {
            StringBuilder options = new StringBuilder();
            string        line    = string.Empty;

            do
            {
                line = string.Empty;
                int position = 0;
                do
                {
                    var key = Console.ReadKey();
                    if (key.Key != ConsoleKey.Spacebar)
                    {
                        if ((key.Key == ConsoleKey.Enter) && (string.IsNullOrWhiteSpace(line)))
                        {
                            break;
                        }
                        if (!string.IsNullOrWhiteSpace(line))
                        {
                            line = line.Substring(0, position);
                        }
                        line    += key.KeyChar;
                        line     = line.Trim();
                        position = line.Length;

                        ClearCurrentConsoleLine();

                        line = airlineManager.Properties.FirstOrDefault(arg => arg.StartsWith(line, StringComparison.InvariantCultureIgnoreCase));
                        if (!string.IsNullOrWhiteSpace(line))
                        {
                            WriteOptionName(line, position, Console.CursorTop);
                        }


                        if (key.Key == ConsoleKey.Enter)
                        {
                            line += " ";
                            ClearCurrentConsoleLine();
                            Console.Write(line);
                            break;
                        }
                    }
                    else
                    {
                        if (string.IsNullOrWhiteSpace(line))
                        {
                            ClearCurrentConsoleLine();
                        }
                        else
                        {
                            line += " ";
                            ClearCurrentConsoleLine();
                            Console.Write(line);
                            break;
                        }
                    }
                } while (true);

                if (!string.IsNullOrWhiteSpace(line))
                {
                    line += Console.ReadLine();
                }


                if (!airlineManager.MultipleOption)
                {
                    options.Append(line + ";");
                    break;
                }
                else
                {
                    if (airlineManager.ValidateOption(line))
                    {
                        options.Append(line + ";");
                    }
                }
            } while (!string.IsNullOrWhiteSpace(line));

            return(options.ToString().Split(';').Where(arg => !string.IsNullOrWhiteSpace(arg)).ToArray());
        }
Beispiel #7
0
 public AirlineController(IAirlineManager airlineManager)
 {
     this.airlineManager = airlineManager;
 }
Beispiel #8
0
 public AirlineController(IAirlineManager am)
 {
     this.airlineMgr = am;
 }