public void OnNext(Baggageband value)
 {
     if (value.AantalKoffers == 0 && WachtendeVluchten.Any())
     {
         Vlucht volgendeVlucht = WachtendeVluchten.FirstOrDefault();
         WachtendeVluchten.RemoveAt(0);
         value.HandelNieuweVluchtAf(volgendeVlucht);
         volgendeVlucht.StopWaiting();
     }
 }
示例#2
0
        public void WachtendeVluchtenNaarBand()
        {
            while (Baggagebanden.Any(bb => bb.AantalKoffers == 0) && WachtendeVluchten.Any())
            {
                Baggageband legeBand       = Baggagebanden.FirstOrDefault(bb => bb.AantalKoffers == 0);
                Vlucht      volgendeVlucht = WachtendeVluchten.FirstOrDefault();
                WachtendeVluchten.RemoveAt(0);

                legeBand.HandelNieuweVluchtAf(volgendeVlucht);
            }
        }
示例#3
0
 public void NieuweInkomendeVlucht(string vertrokkenVanuit, int aantalKoffers)
 {
     if (Baggagebanden.Any(bb => bb.AantalKoffers == 0) && !WachtendeVluchten.Any())
     {
         Baggageband legeBand = Baggagebanden.FirstOrDefault(bb => bb.AantalKoffers == 0);
         legeBand.HandelNieuweVluchtAf(new Vlucht(vertrokkenVanuit, aantalKoffers));
     }
     else
     {
         WachtendeVluchten.Add(new Vlucht(vertrokkenVanuit, aantalKoffers));
     }
 }
示例#4
0
        public void WachtendeVluchtenNaarBand()
        {
            while (Baggagebanden.Any(bb => bb.AantalKoffers == 0) && WachtendeVluchten.Any())
            {
                // TODO: Straks krijgen we een update van een baggageband. Dan hoeven we alleen maar te kijken of hij leeg is.
                // Als dat zo is kunnen we vrijwel de hele onderstaande code hergebruiken en hebben we geen while meer nodig.

                Baggageband legeBand       = Baggagebanden.FirstOrDefault(bb => bb.AantalKoffers == 0);
                Vlucht      volgendeVlucht = WachtendeVluchten.FirstOrDefault();
                WachtendeVluchten.RemoveAt(0);

                legeBand.HandelNieuweVluchtAf(volgendeVlucht);
            }
        }
示例#5
0
 public void OnNext(Baggageband obj)
 {
     if (!(obj is null))
     {
         for (int i = 0; i < Baggagebanden.Count; i++)
         {
             if (Baggagebanden[i].Naam == obj.Naam)
             {
                 if (Baggagebanden[i].AantalKoffers == 0 && WachtendeVluchten.Any())
                 {
                     Vlucht volgendeVlucht = WachtendeVluchten.FirstOrDefault();
                     WachtendeVluchten.RemoveAt(0);
                     Baggagebanden[i].HandelNieuweVluchtAf(volgendeVlucht);
                 }
                 return;
             }
         }
     }
 }