/// <summary> /// Record a visit to the airport on the specified date /// </summary> /// <param name="dt">The date of the visit</param> private void VisitAirport(DateTime dt, int idFlight) { if (EarliestVisitDate.CompareTo(dt) > 0) { EarliestVisitDate = dt; FlightIDOfFirstVisit = idFlight; } if (LatestVisitDate.CompareTo(dt) < 0) { LatestVisitDate = dt; } NumberOfVisits++; }
/// <summary> /// Merge with another visited airport. E.g., Maui can be OGG (IATA) or PHOG (ICAO). If you've visited both, then this creates a single record with an alias. /// /// </summary> /// <param name="va">The visited airport with which to merge</param> private void MergeWith(VisitedAirport va) { if (va == null) { throw new ArgumentNullException(nameof(va)); } if (EarliestVisitDate.CompareTo(va.EarliestVisitDate) > 0) { EarliestVisitDate = va.EarliestVisitDate; FlightIDOfFirstVisit = va.FlightIDOfFirstVisit; } if (LatestVisitDate.CompareTo(va.LatestVisitDate) < 0) { LatestVisitDate = va.LatestVisitDate; } NumberOfVisits += va.NumberOfVisits; if (va.Airport != null) { AddAlias(va.Code); } }