예제 #1
0
 public async Task GenerateLandingFlights()
 {
     for (int i = 0; i < 2; i++)
     {
         AirportService.Plane plane = _planeManager.GetPlaneForLanding();
         if (plane != null)
         {
             AirportService.Flight flight = new AirportService.Flight()
             {
                 Plane = plane, Flow = Flow.LandStatus, FlightNumber = flightNumber++
             };
             int   minutesToLand = generateMinutes.Next(2, 10) * DURATION;
             Timer timer         = new Timer(minutesToLand);
             timer.Start();
             timer.Elapsed += (sender, e) => TimerElapsedFlightNeedsToLand(sender, e, flight);
         }
     }
 }
예제 #2
0
        private void TimerElapsedFlightNeedsToLand(object sender, ElapsedEventArgs e, AirportService.Flight flight)
        {
            Timer timer = (Timer)sender;

            timer.Stop();
            //_controlTower.FlightsAskToLand(flightNumber);

            _client.FlightAskToLand(flight);

            //in the meen time
            //Console.WriteLine($"flight number {flightNumber} ask to land");
            //}
        }