Example #1
0
        public void DeactivateTripAndUpdateStats(string tripID, Status status, double?price = null, double?distance = null)
        {
            if (!activeTrips.ContainsKey(tripID))
            {
                return;
            }
            Logger.Log("Deactivating trip " + tripID + " from " + name);

            activeTrips.Remove(tripID);
            switch (status)
            {
            case Status.Complete:
            {
                completes++;
                fare          += (double)price;
                this.distance += (double)distance;
                break;
            }

            case Status.Cancelled: cancels++; break;

            case Status.Rejected: rejects++; break;
            }
            if (garbageCleanup != null)
            {
                garbageCleanup.Add(tripID);
            }
        }