Exemplo n.º 1
0
        /// <summary>
        /// Refuels a vehicle which is regular (not electric)
        /// </summary>
        private void refuelVehicle()
        {
            System.Console.Clear();
            System.Console.WriteLine(@"
/*===================================================================*\
  -------------------------Refuel Vehicle----------------------------
\*===================================================================*/");
            string       userInputLicenseNumber = getLicenseNumberFromUser();
            CustomerFile file = findFileByVehicleLicenseNumber(userInputLicenseNumber);

            if (file != null && file.Vehicle is RegularVehicle)
            {
                RegularVehicle.eFuelType inputFuelType = getFuelTypeFromUser();
                float fuelQuantity;

                do
                {
                    fuelQuantity = getFuelQuantityFromUser();
                    try
                    {
                        ((RegularVehicle)file.Vehicle).Refuel(fuelQuantity, inputFuelType);
                    }
                    catch (ValueOutOfRangeException e)
                    {
                        System.Console.WriteLine(e.Message);
                        fuelQuantity = -1;
                    }
                } while (fuelQuantity == -1);

                printSuccessMsg();
            }
        }
Exemplo n.º 2
0
 private void getPowerSourceInformation(CustomerFile io_CustomerFile)
 {
     if (io_CustomerFile.Vehicle is RegularVehicle)
     {
         RegularVehicle.eFuelType fuelType = getFuelTypeFromUser();
         (io_CustomerFile.Vehicle as RegularVehicle).FuelType = fuelType;
         float fuelQuantityFromUser = getFuelQuantityFromUser();
         (io_CustomerFile.Vehicle as RegularVehicle).FuelQuantity = fuelQuantityFromUser;
     }
     else
     {
         // Add special options for electric vehicles
         float chargeLeftInput = getBatteryChargeLeftFromUser();
         (io_CustomerFile.Vehicle as ElectricVehicle).HoursOfChargeLeft = chargeLeftInput;
     }
 }