Beispiel #1
0
        public static Vehicle CreateTruck(string i_ModelName, string i_LicenseNumber, float i_RemainingPowerSupply,
                                          PowerSource.ePowerSupply i_PowerSupply, string i_ManufacturerName)
        {
            Truck truck = new Truck(i_ModelName, i_LicenseNumber, i_RemainingPowerSupply, i_PowerSupply, i_ManufacturerName);

            return(truck);
        }
Beispiel #2
0
        public static Vehicle CreateMotorcycle(string i_ModelName, string i_LicenseNumber, float i_RemainingPowerSupply,
                                               PowerSource.ePowerSupply i_PowerSupply, string i_ManufacturerName)
        {
            Motorcycle motorcycle = new Motorcycle(i_ModelName, i_LicenseNumber, i_RemainingPowerSupply, i_PowerSupply, i_ManufacturerName);

            return(motorcycle);
        }
Beispiel #3
0
        public static Vehicle CreateCar(string i_ModelName, string i_LicenseNumber, float i_RemainingPowerSupply,
                                        PowerSource.ePowerSupply i_PowerSupply, string i_ManufacturerName)
        {
            Car car = new Car(i_ModelName, i_LicenseNumber, i_RemainingPowerSupply, i_PowerSupply, i_ManufacturerName);

            return(car);
        }
Beispiel #4
0
 public Motorcycle(string i_ModelName, string i_LicenseNumber, float i_RemainingPowerSupply,
                   PowerSource.ePowerSupply i_PowerSupply, string i_ManufacturerName)
     : base(i_ModelName, i_LicenseNumber, i_RemainingPowerSupply, i_PowerSupply)
 {
     for (int i = 0; i < k_NumberOfWheels; i++)
     {
         Wheels.Add(new Wheel(i_ManufacturerName, (float)Wheel.eMaxTierAirPressure.Motorcycle));
     }
 }
Beispiel #5
0
        public static Vehicle CreateVehicle(Vehicle.eVehicleType i_VehicleType, string i_ModelName, string i_LicenseNumber, float i_RemainingPowerSupply, PowerSource.ePowerSupply i_PowerSupply, string i_TiresManufacturerName)
        {
            switch (i_VehicleType)
            {
            case Vehicle.eVehicleType.Car:
                m_Vehicle = CreateCar(i_ModelName, i_LicenseNumber, i_RemainingPowerSupply, i_PowerSupply, i_TiresManufacturerName);
                break;

            case Vehicle.eVehicleType.Motorcycle:
                m_Vehicle = CreateMotorcycle(i_ModelName, i_LicenseNumber, i_RemainingPowerSupply, i_PowerSupply, i_TiresManufacturerName);
                break;

            case Vehicle.eVehicleType.Truck:
                m_Vehicle = CreateTruck(i_ModelName, i_LicenseNumber, i_RemainingPowerSupply, i_PowerSupply,
                                        i_TiresManufacturerName);
                break;
            }

            return(m_Vehicle);
        }
Beispiel #6
0
        /// <summary>
        /// creating new vehicle.
        /// </summary>
        public static void CreateNewVehicle()
        {
            string typeOfVehicleInput = string.Empty;

            try
            {
                Console.WriteLine("Please choose the type of the vehicle :" + Environment.NewLine + "1.Car " + Environment.NewLine +
                                  "2.Motorcycle" + Environment.NewLine + "3.Truck");
                typeOfVehicleInput = Console.ReadLine();
                if (int.Parse(typeOfVehicleInput) >= 1 && int.Parse(typeOfVehicleInput) <= 3)
                {
                    bool checkPlateNumber = true;
                    while (checkPlateNumber)
                    {
                        //check if license number exists in garage
                        Console.WriteLine("Please enter license plate number");
                        string licensePlateNumberInput = Console.ReadLine();

                        checkPlateNumber = GarageLogic.Garage.CheckIfVehicleExistsInGarage(licensePlateNumberInput);
                        //checkPlateNumber = UserInputValidation.LicensePlateValidation(licensePlateNumber);
                        if (checkPlateNumber)
                        {
                            Console.WriteLine("This Vehicle already exists in the garage. starting treatment...");
                            //GarageLogic.GarageInfo.VehiclesState.Add(licensePlateNumberInput,new );
                        }
                        else
                        {
                            Vehicle.eVehicleType vehicleTypePick = Vehicle.GetVehicleTypeByDigit(int.Parse(typeOfVehicleInput));
                            string vehicleModelName = string.Format("Pleae enter your {0}'s Model: ", vehicleTypePick);
                            Console.WriteLine(vehicleModelName);
                            string modelNameInput = Console.ReadLine();

                            string vehiclePowerSupply = string.Format("Please enter your {0}'s Power Supply. 1.Fuel 2.Battery :  ", vehicleTypePick);
                            Console.WriteLine(vehiclePowerSupply);
                            string vehiclePowerSupplyInput       = Console.ReadLine();
                            PowerSource.ePowerSupply powerSupply = PowerSource.getPowerSupplyType(vehiclePowerSupplyInput);

                            string powerSupplyRemaining = string.Empty;
                            if (powerSupply == PowerSource.ePowerSupply.Fuel)
                            {
                                powerSupplyRemaining = string.Format("Please enter remaining fuel in your {0} by liters: ", vehicleTypePick);
                            }
                            else if (powerSupply == PowerSource.ePowerSupply.Battery)
                            {
                                powerSupplyRemaining = string.Format("Please enter remaining Battery time in your {0} by hours: ", vehicleTypePick);
                            }

                            Console.WriteLine(powerSupplyRemaining);
                            string powerSupplyRemainingInput = Console.ReadLine();

                            string manufacturerName = string.Format("Please enter your {0}'s tires Manufactuer Name: ", vehicleTypePick);
                            Console.WriteLine(manufacturerName);
                            string manufacturerNameInput = Console.ReadLine();

                            Vehicle createdVehicle = GarageLogic.VehiclesCreator.CreateVehicle(vehicleTypePick, modelNameInput,
                                                                                               licensePlateNumberInput, float.Parse(powerSupplyRemainingInput), powerSupply,
                                                                                               manufacturerNameInput);
                            AddVehicleDetails(createdVehicle);
                            AddVehicleToTreatment(createdVehicle);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                string exceptionType = string.Format("input is not valid - {0}", ex.Message);
                Console.WriteLine(exceptionType);
            }
        }
Beispiel #7
0
        public Vehicle(string i_ModelName, string i_LicenseNumber, float i_RemainingPowerSupply, PowerSource.ePowerSupply i_VehiclePowerSource)
        {
            this.r_Model            = i_ModelName;
            this.r_LicenseNumber    = i_LicenseNumber;
            this.m_EnergyPercentage = i_RemainingPowerSupply;
            this.m_Wheels           = new List <Wheel>();

            r_VehiclesList.Add(this);

            if (i_VehiclePowerSource == PowerSource.ePowerSupply.Battery)
            {
                m_VehiclePowerSource = new Battery();
            }
            else
            {
                m_VehiclePowerSource = new Fuel();
            }
        }