/* * createVehicle({ * type: .. * ... * }) * * => * vehicleFactory(data){ * data.type => instance * instance.builder(data) * } */ public Vechicles add(string plate, Vechicles.OprtionOfVechicles vechiclesType) { Vechicles newVechicle = null; if (vechiclesType == Vechicles.OprtionOfVechicles.ElectricCar) { newVechicle = new Car(new ElectricEngine(), plate); } else if (vechiclesType == Vechicles.OprtionOfVechicles.FuelCar) { newVechicle = new Car(new FuelEngine(), plate); } else if (vechiclesType == Vechicles.OprtionOfVechicles.ElectricMotorcycle) { //newVechicle = new Motorcycle(); } else if (vechiclesType == Vechicles.OprtionOfVechicles.FuelMotorcycle) { //newVechicle = new Motorcycle(); } else if (vechiclesType == Vechicles.OprtionOfVechicles.Truck) { //newVechicle = new Truck(); } return(newVechicle); }
public void AddNewV(Vechicles.OprtionOfVechicles i_VechicleType, string i_PlateNumber) { if (m_ListOfVechicles.ContainsKey(i_PlateNumber)) { throw new Exception("there are already plate nuber like that, try again."); } else { Vechicles newVechicle = m_VeichiclesCreator.add(i_PlateNumber, i_VechicleType); m_ListOfVechicles.Add(i_PlateNumber, newVechicle); } }