public void RechargeElectric(string i_VehicleId, float i_AmountToRecharge) { StoredVehicle vehicleToRecharge = null; ElectricEngine engineToRecharge = null; bool isEngineElectric = false; vehicleToRecharge = getStoredVehicle(i_VehicleId); isEngineElectric = vehicleToRecharge.Vehicle.Engine is ElectricEngine; if (!isEngineElectric) { throw new ArgumentException("Engine is not ElectricEngine."); } engineToRecharge = (vehicleToRecharge.Vehicle.Engine as ElectricEngine); engineToRecharge.Recharge(i_AmountToRecharge); vehicleToRecharge.Vehicle.calculateCurrentEnergyPercent(); }
public void Charge(string i_LicenseNumber, float i_minutesAmountToAdd) { if (r_VehiclesInfo.ContainsKey(i_LicenseNumber)) { ElectricEngine electricEngine = r_VehiclesInfo[i_LicenseNumber].Vehicle.Engine as ElectricEngine; if (electricEngine != null) { electricEngine.Recharge(i_minutesAmountToAdd / 60); } else { throw new ArgumentException(k_NotLegalCharge); } } else { throw new ArgumentException(k_NoSuitableVehicleMassage); } }