Exemple #1
0
        internal static void GetInfo(out Dictionary <eQuestions, object> io_DicToFill, int i_Choice)
        {
            //// Gets vehicle choice out of supported vehicles and a dictionary.
            //// Flll the dictionary keys with all the eQusetions (Enum) needed for this vehicle choice.

            io_DicToFill = new Dictionary <eQuestions, object>();

            if (i_Choice > 0 && i_Choice <= ArrOfSupportedVehicles.Length)
            {
                eSupportVehicles currentVehicle = (eSupportVehicles)i_Choice;

                io_DicToFill.Add(eQuestions.WheelManufacturer, string.Empty);
                io_DicToFill.Add(eQuestions.CurentWheelAirPressure, string.Empty);
                io_DicToFill.Add(eQuestions.ModelName, string.Empty);

                if (currentVehicle.Equals(eSupportVehicles.ElectricMotorcycle) || currentVehicle.Equals(eSupportVehicles.ElectricCar))
                { // Hours left in elecrtic engine
                    io_DicToFill.Add(eQuestions.CurrentHours, string.Empty);
                }
                else
                { // Fuel left
                    io_DicToFill.Add(eQuestions.CurrentFuel, string.Empty);
                }

                if (currentVehicle.Equals(eSupportVehicles.RegularMotorcycle) || currentVehicle.Equals(eSupportVehicles.ElectricMotorcycle))
                { // Case of motorcycle
                    io_DicToFill.Add(eQuestions.LicenseType, string.Empty);
                    io_DicToFill.Add(eQuestions.EngineCC, string.Empty);
                }

                if (currentVehicle.Equals(eSupportVehicles.ElectricCar) || currentVehicle.Equals(eSupportVehicles.RegularCar))
                { // Case of car
                    io_DicToFill.Add(eQuestions.Color, string.Empty);
                    io_DicToFill.Add(eQuestions.Doors, string.Empty);
                }

                if (currentVehicle.Equals(eSupportVehicles.Truck))
                { // Case of truck
                    io_DicToFill.Add(eQuestions.HazardousMaterials, false);
                    io_DicToFill.Add(eQuestions.CargoCpacity, string.Empty);
                }
            }
        }
Exemple #2
0
        internal static Vehicle CreateVehicle(eSupportVehicles i_VehiclesChoice, string io_LicenseNumber)
        {
            //// Gets license number of vehicle and choice of vehicle type out of supported vehicles.
            //// Create and return new vehicle according to supported vehicles fixed criterias.

            Vehicle newVehicle = null;

            switch (i_VehiclesChoice)
            {
            case eSupportVehicles.ElectricMotorcycle:
            {
                newVehicle = createElectricMotorcycle(io_LicenseNumber);
                break;
            }

            case eSupportVehicles.ElectricCar:
            {
                newVehicle = createElectricCar(io_LicenseNumber);
                break;
            }

            case eSupportVehicles.Truck:
            {
                newVehicle = createTruck(io_LicenseNumber);
                break;
            }

            case eSupportVehicles.RegularMotorcycle:
            {
                newVehicle = createRrgularMotorcycle(io_LicenseNumber);
                break;
            }

            case eSupportVehicles.RegularCar:
            {
                newVehicle = createRrgularCar(io_LicenseNumber);
                break;
            }
            }

            return(newVehicle);
        }