예제 #1
0
        public void refuelGasVehicle()
        {
            string licenseNumber = m_RefuelGasVehicle.GetLicenseNumberForRefuel();

            Gas.eGasType fuelType     = m_RefuelGasVehicle.GetFuelTypeForRefuel();
            float        amountOfFuel = m_RefuelGasVehicle.GetAmountOfLitersToFuel();

            try
            {
                m_Garage.RefuelGasVehicle(licenseNumber, fuelType, amountOfFuel);
                m_UserDisplay.ClearAndDisplayMessage(string.Format("Vehicle with license number: {0}, was refueled with gas type: {1}, and amount: {2} successfuly!", licenseNumber, fuelType, amountOfFuel));
                m_UserDisplay.PressAnyKeyToContinue();
            }
            catch (Exception exception)
            {
                m_UserDisplay.ClearAndDisplayMessage(exception.Message);

                if (exception is ValueOutOfRangeException)
                {
                    m_UserDisplay.DisplayMessage(Messages.k_PleaseTryAgainMessage);
                    m_UserDisplay.ReadLine();
                    refuelGasVehicle();
                }
                else
                {
                    m_UserDisplay.PressAnyKeyToContinue();
                }
            }
        }