public static Vehicle createNewVehicle(eVehicleTypes i_VehicleType) { if (i_VehicleType.Equals(eVehicleTypes.regularCar)) { return newRegularCar(); } if (i_VehicleType.Equals(eVehicleTypes.regularMotorCycle)) { return newRegularMotorcycle(); } if (i_VehicleType.Equals(eVehicleTypes.regularVan)) { return newRegularVan(); } if (i_VehicleType.Equals(eVehicleTypes.electricCar)) { return newElectricCar(); } if (i_VehicleType.Equals(eVehicleTypes.electricMotorcycle)) { return newElectricMotorcycle(); } return null; }
public HoldAddGarageVehicleParams(string i_Name, string i_Phone, string i_Model, string i_Plate, HoldWheelParams i_Wheel, HoldEngineParams i_Engine, Garage.eVehicleStatus i_Status, eVehicleTypes i_Type) { r_ClientName = i_Name; r_PhoneNumber = i_Phone; r_VehicleType = i_Type; r_VehicleModel = i_Model; r_LicencePlate = i_Plate; r_Wheels = i_Wheel; r_Engine = i_Engine; }
public static Vehicle Create(int i_IntVehicleType, string i_NameOfModel, string i_LicenseNumber) { Vehicle newVehicle = null; if (Enum.IsDefined(typeof(eVehicleTypes), i_IntVehicleType)) { eVehicleTypes vehicleType = (eVehicleTypes)i_IntVehicleType; switch (vehicleType) { case eVehicleTypes.FuelMotorCycle: { newVehicle = new MotorCycle(Engine.eFuelType.Octan95, k_MaxEnergyCapacityFuelMotorCycle); break; } case eVehicleTypes.ElectricMotorCycle: { newVehicle = new MotorCycle(Engine.eFuelType.Electricity, k_MaxEnergyCapacityElectricMotorCycle); break; } case eVehicleTypes.FuelCar: { newVehicle = new Car(Engine.eFuelType.Octan96, k_MaxEnergyCapacityFuelCar); break; } case eVehicleTypes.ElectricCar: { newVehicle = new Car(Engine.eFuelType.Electricity, k_MaxEnergyCapacityElectricCar); break; } case eVehicleTypes.FuelTruck: { newVehicle = new Truck(Engine.eFuelType.Soler, k_MaxEnergyCapacityFuelTruck); break; } } newVehicle.LicenseNumber = i_LicenseNumber; newVehicle.NameOfModel = i_NameOfModel; } else { throw new FormatException(k_NoSuchAnOption); } return(newVehicle); }
public bool AddVehicleToGarage(string i_OwnerName, string i_OwnerPhone, eVehicleTypes i_Identifier, List <object> i_ParametersToCreateVehicle, Wheel[] i_Wheels) { bool vehicleAlreadyInGarage = false; Owner vehicleOwner = new Owner(i_OwnerName, i_OwnerPhone); Vehicle vehicleToAdd = VehicleFactory.Create(i_Identifier, i_ParametersToCreateVehicle, i_Wheels); if (m_VehiclesInGarage.ContainsKey(vehicleToAdd.LicenseNumber)) { m_VehiclesInGarage[vehicleToAdd.LicenseNumber].VehicleState = eVehicleConditions.InRepair; vehicleAlreadyInGarage = true; } else { m_VehiclesInGarage.Add(vehicleToAdd.LicenseNumber, new VehicleInGarage(vehicleToAdd, vehicleOwner)); } return(vehicleAlreadyInGarage); }
public VehiclePreset( int i_PresetNumber, string i_PresetDescription, eVehicleTypes i_VehicleType, int i_NumberOfWheels, float i_WheelsMaxPressure, eEngineType i_EngineType, eFuelType?i_FuelType, float i_EngineMaxEnergy ) { m_PresetNumber = i_PresetNumber; m_PresetDescription = i_PresetDescription; m_VehicleType = i_VehicleType; m_EngineType = i_EngineType; m_FuelType = i_FuelType; m_EngineMaxEnergy = i_EngineMaxEnergy; m_NumberOfWheels = i_NumberOfWheels; m_WheelsMaxPressure = i_WheelsMaxPressure; }
private static Vehicle newVehicle(Garage i_Garage) { Vehicle newVehicle = null; eVehicleTypes vehicleType = ChooseVehicle(); string userInput; bool checkInput = true; Dictionary <string, string> properites = VehicleSetup.BuiltPropertiesList(vehicleType); Printer.PrintSystemFormat("\n{0} Details:\n", vehicleType); foreach (KeyValuePair <string, string> str in properites) { while (checkInput) { Printer.PrintMessage(str.Key + ": "); userInput = Console.ReadLine(); try { if (VehicleSetup.CheckProperty(i_Garage, userInput, str.Key, str.Value)) { m_SetProperites.Add(str.Key, userInput); checkInput = false; } } catch (FormatException fx) { Printer.PrintError(fx.Message + "\n"); } catch (ArgumentException ae) { Printer.PrintError(ae.Message + "\n"); } } checkInput = true; } newVehicle = VehicleSetup.CreateNewVehicle(i_Garage, vehicleType, m_SetProperites); return(newVehicle); }
private Vehicle setGeneralInfo(eVehicleTypes i_VehicleType) { Console.Clear(); Vehicle newVehicleToCreat = null; bool isExist; bool isLicenseQuestion = true; string ModelName, LicensePlate; isExist = getGeneralAnswers(Messages.s_AskForLicense, out LicensePlate, isLicenseQuestion); if (!isExist) { isLicenseQuestion = false; getGeneralAnswers(Messages.s_AskForModel, out ModelName, isLicenseQuestion); Console.Clear(); newVehicleToCreat = m_VehicleCreator.CreatVehicle(i_VehicleType, ModelName, LicensePlate); setWheelsInfo(newVehicleToCreat); } Console.Clear(); return(newVehicleToCreat); }
public Vehicle CreatVehicle(eVehicleTypes i_TypeOfVehicle, string i_ModelName, string i_LicencePlate) { Vehicle vehicleToCreat = null; switch (i_TypeOfVehicle) { case eVehicleTypes.Car: vehicleToCreat = new Car(i_ModelName, i_LicencePlate); break; case eVehicleTypes.Motorcycle: vehicleToCreat = new Motorcycle(i_ModelName, i_LicencePlate); break; case eVehicleTypes.Truck: vehicleToCreat = new Truck(i_ModelName, i_LicencePlate); break; } return(vehicleToCreat); }
public static Vehicle MakeVehicle(eVehicleTypes i_VehicleType) { Vehicle Vehicle; switch (i_VehicleType) { case eVehicleTypes.FuelCar: Vehicle = new Car(); Vehicle.VehicleEnergy.EnergyType = VehicleEnergy.eEnergyType.Octan98.ToString(); Vehicle.VehicleEnergy.MaximalEnergyAmount = 45f; break; case eVehicleTypes.ElectricCar: Vehicle = new Car(); Vehicle.VehicleEnergy.EnergyType = VehicleEnergy.eEnergyType.Electricity.ToString(); Vehicle.VehicleEnergy.MaximalEnergyAmount = 3.2f; break; case eVehicleTypes.FuelMotorcycle: Vehicle = new Motorcycle(); Vehicle.VehicleEnergy.EnergyType = VehicleEnergy.eEnergyType.Octan96.ToString(); Vehicle.VehicleEnergy.MaximalEnergyAmount = 6f; break; case eVehicleTypes.ElectricMotorcycle: Vehicle = new Motorcycle(); Vehicle.VehicleEnergy.EnergyType = VehicleEnergy.eEnergyType.Electricity.ToString(); Vehicle.VehicleEnergy.MaximalEnergyAmount = 1.8f; break; case eVehicleTypes.FuelTruck: Vehicle = new FuelTruck(); break; default: throw new System.Exception("The vehicle's type is not supported."); } return(Vehicle); }
private static void addVehicleToGarage() { eVehicleTypes vehicleType = getVehicleTypeFromUser(); GarageFunctionalityManager.AddVehicleToTheGarage(vehicleType); }
public static Vehicle CreateNewVehicle(Garage i_Garage, eVehicleTypes vehicleType, Dictionary <string, string> i_Properties) { Vehicle i_Vehicle; bool creationSuccess = false; string modelName = "", licensePlate = "", manufacture = ""; float engineCapacity = 0, loadVolume = 0; bool isCarryingDangerousLoad = false; eCarDoors door = eCarDoors.Five; eColor color = eColor.Black; eLicenseType licenseType = eLicenseType.A; foreach (KeyValuePair <string, string> pairs in i_Properties) { switch (pairs.Key) { case "Model Name": modelName = pairs.Value; break; case "License Plate": licensePlate = pairs.Value; break; case "Manufacture": manufacture = pairs.Value; break; case "Car Color": eColor.TryParse(pairs.Value, out color); break; case "Number of Doors": eCarDoors.TryParse(pairs.Value, out door); break; case "Engine Capacity CCS": engineCapacity = float.Parse(pairs.Value); break; case "License Type": eLicenseType.TryParse(pairs.Value, out licenseType); break; case "Is carrying dangerous load": isCarryingDangerousLoad = bool.Parse(pairs.Value); break; case "Load Volume": loadVolume = float.Parse(pairs.Value); break; } } switch (vehicleType) { case eVehicleTypes.ElectronicCar: i_Vehicle = new ElectricCar(modelName, licensePlate, color, door, manufacture); //ElectricCar.TryParse(i_Properties, out newVehicle); break; case eVehicleTypes.ElectronicMotorCycle: i_Vehicle = new ElectricMotorCycle(modelName, licensePlate, engineCapacity, eLicenseType.A1, manufacture); break; case eVehicleTypes.FuelCar: i_Vehicle = new FuelCar(modelName, licensePlate, color, door, manufacture); //FuelCar.TryParse(i_Properties, out newVehicle); break; case eVehicleTypes.FuelMotorCycle: i_Vehicle = new FuelMotorCycle(modelName, licensePlate, engineCapacity, licenseType, manufacture); break; case eVehicleTypes.Truck: i_Vehicle = new Truck(modelName, licensePlate, manufacture, isCarryingDangerousLoad, loadVolume); break; default: i_Vehicle = null; break; } return(i_Vehicle); }