/// <summary> /// Methos changes the chosen vehicle state /// </summary> /// <param name="i_licenseNumber">the change is made by the given license number</param> /// <param name="i_vehicleState">current vehicle change</param> public void ChangeVehicleState(string i_licenseNumber, e_VehicleState i_vehicleState) { if (CheckIfDictionaryNotEmpty() == true) { if (m_ownerVehicleDictionary.TryGetValue(i_licenseNumber, out m_ownerDetailsAndVehicle) == true) { m_ownerDetailsAndVehicle = m_ownerVehicleDictionary[i_licenseNumber]; m_ownerDetailsAndVehicle.VehicleState = i_vehicleState; if (m_ownerVehicleDictionary.Remove(i_licenseNumber) == true) { m_ownerVehicleDictionary.Add(i_licenseNumber, m_ownerDetailsAndVehicle); } else { throw new Exception(); } } else { throw new FormatException(); } } else { throw new Exception("Vehicle Does not exsist in this garage\n"); } }
public void AddNewVehicleToGarageContentsList(string i_ownerName, string i_ownerPhone, string i_licenseNumber, Vehicle i_ownerVehicle) { if (m_ownerVehicleDictionary.ContainsKey(i_licenseNumber) == false) { m_ownerDetailsAndVehicle = new OwnerAndVehicleDetails(); m_ownerDetailsAndVehicle.OwnerName = i_ownerName; m_ownerDetailsAndVehicle.OwnerPhone = i_ownerPhone; m_ownerDetailsAndVehicle.VehicleState = e_VehicleState.WaitForStartingRepair; m_ownerDetailsAndVehicle.OwnerVehicle = i_ownerVehicle; m_ownerVehicleDictionary.Add(i_licenseNumber, m_ownerDetailsAndVehicle); } else { ChangeVehicleState(i_licenseNumber, e_VehicleState.InRepairProcess); throw new ArgumentException("The license number already exsists in the garage."); } }