internal void InflateWheels() { string licensePlateNumber = GetLicensePlateNumber(); int numberOfWheels = 0; float[] wheelsAirPressure; try { numberOfWheels = this.m_MyGarage.GetNumOfWheelsInVehicle(licensePlateNumber); wheelsAirPressure = new float[numberOfWheels]; for (int i = 0; i < wheelsAirPressure.Length; i++) { wheelsAirPressure[i] = this.r_FillAirToMax; } this.m_MyGarage.FillAirInWheels(licensePlateNumber, wheelsAirPressure); } catch (VehicleNotInGarageException e) { ChatBot.PrintLicensePlateNotFoundMessage(licensePlateNumber); } catch (ValueOutOfRangeException e) { ChatBot.PrintValueOutOfRangeMessage(e.MaxValue, e.MinValue); } }
internal void CheckVehicleStatus() { string licensePlateNumber = GetLicensePlateNumber(); try { eStatusInGarage vehicleState = this.m_MyGarage.GetStatusByLicensePlateNumber(licensePlateNumber); ChatBot.PrintStatus(vehicleState, licensePlateNumber); } catch (VehicleNotInGarageException e) { ChatBot.PrintLicensePlateNotFoundMessage(licensePlateNumber); } }
internal void ChangeVehicleStatus() { string licensePlateNumber = GetLicensePlateNumber(); string newStatusAsString; eStatusInGarage newStatus; try { newStatusAsString = ChatBot.GetUpdatedStatus(licensePlateNumber); eStatusInGarage.TryParse(newStatusAsString, out newStatus); m_MyGarage.ChangeVehicleStatus(licensePlateNumber, newStatus); } catch (VehicleNotInGarageException e) { ChatBot.PrintLicensePlateNotFoundMessage(licensePlateNumber); } }
internal void GetVehicleDetails() { string licensePlateNumber = GetLicensePlateNumber(); string vehicleInfo; try { vehicleInfo = this.m_MyGarage.GetVehicleDetails(licensePlateNumber); Console.WriteLine(vehicleInfo); Console.WriteLine(); Console.WriteLine("To go back to the main menu - press any key"); Console.ReadLine(); Console.Clear(); } catch (VehicleNotInGarageException e) { ChatBot.PrintLicensePlateNotFoundMessage(licensePlateNumber); } }
internal void FillEnergyInVehicle(bool isFuelRequired) { bool chargedSuccessfully = false; bool isFuelVehicle; float amountToFill = 0; eFuelTypes fuelType; string fuelTypeCode; string licensePlateNumber = GetLicensePlateNumber(); while (!chargedSuccessfully) { try { isFuelVehicle = this.m_MyGarage.IsFuelBasedVehicle(licensePlateNumber); if (isFuelVehicle) { if (isFuelRequired) { ChatBot.GetFuelingDetails(licensePlateNumber, out amountToFill, out fuelTypeCode); eFuelTypes.TryParse(fuelTypeCode, out fuelType); this.m_MyGarage.FillEnergy(licensePlateNumber, amountToFill, fuelType); } else { Console.WriteLine("Your vehicle based on Fuel, please select option #5."); } } else { if (!isFuelRequired) { amountToFill = ChatBot.GetChargingDetails(licensePlateNumber); this.m_MyGarage.FillEnergy(licensePlateNumber, amountToFill); } else { Console.WriteLine("Your vehicle based on Electric, please select option #6."); } } Console.WriteLine("Please prees enter"); Console.ReadLine(); chargedSuccessfully = true; } catch (VehicleNotInGarageException e) { ChatBot.PrintLicensePlateNotFoundMessage(licensePlateNumber); } catch (ValueOutOfRangeException e) { ChatBot.PrintValueOutOfRangeMessage(e.MaxValue, e.MinValue); } catch (System.ArgumentException e) { eFuelTypes.TryParse(e.Message, out fuelType); ChatBot.PrintFuelTypeErrorMessage(fuelType); } catch (System.FormatException e) { Console.WriteLine(e.Message); } } }