コード例 #1
0
        public List <string> getProperties(VehiclesCreator.VehicleType vehicleType)
        {
            List <string> properties = new List <string>();

            switch (vehicleType)
            {
            case VehiclesCreator.VehicleType.ElectricCar:
                properties.AddRange(Car.GetCarProperties());
                properties.AddRange(Electric.GetElectricProperties());
                break;

            case VehiclesCreator.VehicleType.FuelCar:
                properties.AddRange(Car.GetCarProperties());
                properties.AddRange(Fuel.GetFuelProperties());
                break;

            case VehiclesCreator.VehicleType.ElectricBike:
                properties.AddRange(MotorBike.GetMotorbikeProperties());
                properties.AddRange(Electric.GetElectricProperties());
                break;

            case VehiclesCreator.VehicleType.FuelBike:
                properties.AddRange(MotorBike.GetMotorbikeProperties());
                properties.AddRange(Fuel.GetFuelProperties());
                break;

            case VehiclesCreator.VehicleType.Truck:
                properties.AddRange(Truck.GetTruckProperties());
                properties.AddRange(Fuel.GetFuelProperties());
                break;
            }

            return(properties);
        }
コード例 #2
0
        public Vehicle CreateVehicle(
            string i_TypeOfVehicle,
            string i_Model,
            string i_LicenseNumber,
            string i_MnufacturerName,
            string i_CurrentAirPressure)
        {
            Vehicle      vehicle     = null;
            eVehicleType vehicleType = ParseUtils.EnumParse <eVehicleType>(i_TypeOfVehicle, " is not a type of vehicle");

            switch (vehicleType)
            {
            case eVehicleType.Truck:
            {
                vehicle = new Truck(i_Model, i_LicenseNumber, new FuelEngine(FuelEngine.eFuelType.Soler, 110f), i_MnufacturerName, i_CurrentAirPressure);
                break;
            }

            case eVehicleType.FuelCar:
            {
                vehicle = new Car(i_Model, i_LicenseNumber, new FuelEngine(FuelEngine.eFuelType.Octan96, 55f), i_MnufacturerName, i_CurrentAirPressure);
                break;
            }

            case eVehicleType.ElectricCar:
            {
                vehicle = new Car(i_Model, i_LicenseNumber, new ElectricityEngine(1.8f), i_MnufacturerName, i_CurrentAirPressure);
                break;
            }

            case eVehicleType.FuelMotorBike:
            {
                vehicle = new MotorBike(i_Model, i_LicenseNumber, new FuelEngine(FuelEngine.eFuelType.Octan95, 8f), i_MnufacturerName, i_CurrentAirPressure);
                break;
            }

            case eVehicleType.ElectricMotorBike:
            {
                vehicle = new MotorBike(i_Model, i_LicenseNumber, new ElectricityEngine(1.4f), i_MnufacturerName, i_CurrentAirPressure);
                break;
            }
            }

            return(vehicle);
        }