Inheritance: ILandVehicle
        /// <summary>
        /// Randomly generated list of fake motorcycles.
        /// </summary>
        /// <param name="count"></param>
        /// <returns></returns>
        public static IList<Motorcycle> GetAll(int count)
        {
            var motos = new List<Motorcycle>();

            int yearMinimum = 2005;
            int yearMaximum = 2015;
            int priceMinimum = 4000;
            int priceMaximum = 25000;

            for (int i = 0; i < count; i++)
            {
                Thread.Sleep(20); // Need sleep to get random numbers (if happens too fast - get the same number).
                var rand = new Random();

                var moto = new Motorcycle()
                {
                    Manufacturer = manufacturers[rand.Next(manufacturers.Count - 1)],
                    Name = modelType[rand.Next(modelType.Count - 1)],
                    Year = rand.Next(yearMinimum, yearMaximum),
                    Price = rand.Next(priceMinimum, priceMaximum)
                };

                moto.MotorcycleID = Guid.NewGuid();
                moto.Sku = GenerateSku(moto);

                motos.Add(moto);
            }

            return motos;
        }
Example #2
0
 static void Main()
 {
     HorseAndBuggy hb = new HorseAndBuggy();
     Motorcycle mc = new Motorcycle();
     Winnebago win = new Winnebago();
     ReflectOnAttributesEarlyBinding();
     ReflectOnAttributesLateBinding();
 }
        public static int AddNewMotorcycle( Motorcycle dbMotorcycle)
        {
            using (ReviewsDataContext context = new ReviewsDataContext())
            {
                context.Motorcycles.InsertOnSubmit(dbMotorcycle); //.InsertAllOnSubmit(dbUserModel);
                context.SubmitChanges();

                return dbMotorcycle.MotorcycleId;
            }
        }
Example #4
0
        public Car Create(CarType type, int xPos, int yPos, City city, Passenger passenger)
        {
            Car car;

            switch (type)
            {
                case CarType.Sedan:
                    car = new Sedan(xPos, yPos, city, passenger);
                    break;
                case CarType.RaceCar:
                    car = new RaceCar(xPos, yPos, city, passenger);
                    break;
                case CarType.Motorcycle:
                    car = new Motorcycle(xPos, yPos, city, passenger);
                    break;
                default:
                    throw new ArgumentOutOfRangeException(nameof(type), type, null);
            }

            return car;
        }
Example #5
0
        public ActionResult DeleteMotorcycle(int motoId)
        {
            Motorcycle toDelete = repoBike.Get(motoId);

            return(View(toDelete));
        }
        private void Add_vehicle_Dict(object sender, RoutedEventArgs e)
        {
            int maxweight = 0, passanger = 0;

            if (tb_vehicle_brand.Text.Equals(Brand) || tb_fordon_modell.Text.Equals(Model) ||
                tb_fordon_odometer.Text.Equals(Odometer) || tb_regnr.Text.Equals(RegNr) || cb_fuel.SelectedIndex == -1 ||
                (cb_car_option.SelectedIndex == -1 || cb_car_hook.SelectedIndex == -1) && add_sp_typcar.Visibility == Visibility.Visible ||
                (tb_weight.Text.Equals(MaxWidth) || !Int32.TryParse(tb_weight.Text, out maxweight)) && add_sp_maxlast.Visibility == Visibility.Visible ||
                (tb_passanger.Text.Equals(Max_passanger) || !Int32.TryParse(tb_passanger.Text, out passanger)) && add_sp_passanger.Visibility == Visibility.Visible ||
                !Int32.TryParse(tb_fordon_odometer.Text, out int odometer) || !IUserDataAccess.LicenseVerification(tb_regnr.Text))
            {
                Error_msg.Content = Wrong_msg;
            }


            else if (!_check.Reg_check(tb_regnr.Text).Item1)
            {
                if (cb_choose_vehicle.SelectedIndex == 0)
                {
                    var Creat_Vehicle = IUserDataAccess.Read <string, Motorcycle>(cb_choose_vehicle.Text);

                    var obj = new Motorcycle(cb_choose_vehicle.Text, tb_vehicle_brand.Text, tb_fordon_modell.Text, odometer, cb_fuel.Text, tb_regnr.Text);
                    Creat_Vehicle.Add(tb_regnr.Text, obj);
                    IUserDataAccess.Write <string, Motorcycle>(Creat_Vehicle, cb_choose_vehicle.Text);
                    NavigationService.Navigate(new Add_vehicle());
                }
                else if (cb_choose_vehicle.SelectedIndex == 1)
                {
                    bool hook = cb_car_hook.Text.Equals("Ja") ? true : false;

                    var Creat_Vehicle = IUserDataAccess.Read <string, Car>(cb_choose_vehicle.Text);

                    var obj = new Car(cb_choose_vehicle.Text, tb_vehicle_brand.Text, tb_fordon_modell.Text, odometer, hook, cb_car_option.Text, cb_fuel.Text, tb_regnr.Text);
                    Creat_Vehicle.Add(tb_regnr.Text, obj);

                    IUserDataAccess.Write <string, Car>(Creat_Vehicle, cb_choose_vehicle.Text);
                    NavigationService.Navigate(new Add_vehicle());
                }
                else if (cb_choose_vehicle.SelectedIndex == 2)
                {
                    var Creat_Vehicle = IUserDataAccess.Read <string, Truck>(cb_choose_vehicle.Text);

                    var obj = new Truck(cb_choose_vehicle.Text, tb_vehicle_brand.Text, tb_fordon_modell.Text, odometer, cb_fuel.Text, maxweight, tb_regnr.Text);
                    Creat_Vehicle.Add(tb_regnr.Text, obj);

                    IUserDataAccess.Write <string, Truck>(Creat_Vehicle, cb_choose_vehicle.Text);
                    NavigationService.Navigate(new Add_vehicle());
                }
                else if (cb_choose_vehicle.SelectedIndex == 3)
                {
                    var Creat_Vehicle = IUserDataAccess.Read <string, Bus>(cb_choose_vehicle.Text);

                    var obj = new Bus(cb_choose_vehicle.Text, tb_vehicle_brand.Text, tb_fordon_modell.Text, odometer, passanger, cb_fuel.Text, tb_regnr.Text);
                    Creat_Vehicle.Add(tb_regnr.Text, obj);

                    IUserDataAccess.Write <string, Bus>(Creat_Vehicle, cb_choose_vehicle.Text);
                    NavigationService.Navigate(new Add_vehicle());
                }
                var licensePlatelist = IUserDataAccess.Read <string, string>(Enum.GetName(typeof(IUserDataAccess.File_Type), 9));
                licensePlatelist.Add(tb_regnr.Text, cb_choose_vehicle.Text);

                IUserDataAccess.Write <string, string>(licensePlatelist, Enum.GetName(typeof(IUserDataAccess.File_Type), 9));
            }
            else
            {
                Error_msg.Content = "** Registering nr redan finns i vårt system **";
            }
        }
Example #7
0
        private void ParkVehicle()
        {
            string  inString;
            Vehicle localVehicle;
            bool    yesOrNo;

            bool askYesNo(string question, out bool answer)
            {
                Console.WriteLine(question);
                string locStr = Console.ReadLine().ToLower();

                if (locStr == "y" || locStr == "yes")
                {
                    answer = true;
                    return(true);
                }
                else if (locStr == "n" || locStr == "no")
                {
                    answer = false;
                    return(true);
                }
                else
                {
                    Console.WriteLine("Could not interpret the answer as yes or no.\n");
                    answer = false; // Dummy value
                    return(false);
                }
            }

            if (!theHandler.Initialized())
            {
                Console.WriteLine("The garage must be built before it can be used\n");
                return;
            }
            Console.WriteLine("What does the license plate say?");
            string license = Console.ReadLine().ToUpper();

            Console.WriteLine("What color is the vehicle?");
            string color = Console.ReadLine();

            Console.WriteLine("How many wheels does the vehicle have?");
            inString = Console.ReadLine();
            if (!int.TryParse(inString, out int wheels))
            {
                Console.WriteLine("The input for number of wheel cannot be interpreted as a nnumber.");
                Console.WriteLine("The vehicle cannot be parked.");
                return;
            }
            Console.WriteLine("What kind of vehicle is being parked?"
                              + "\nAeroplane, Bus, Boat, Car or MC?");
            inString = Console.ReadLine().ToLower();
            if (inString == "aeroplane" || inString == "airplane" || inString == "plane")
            {
                if (!askYesNo("Does the plane have jet engines?", out yesOrNo))
                {
                    return;
                }
                localVehicle = new Airplane(license, color, wheels, yesOrNo);
            }
            else if (inString == "mc" || inString == "motorcycle")
            {
                if (!askYesNo("Does the bike have a side car?", out yesOrNo))
                {
                    return;
                }
                localVehicle = new Motorcycle(license, color, wheels, yesOrNo);
            }
            else if (inString == "bus")
            {
                if (!askYesNo("Does the bus have a middle bend?", out yesOrNo))
                {
                    return;
                }
                localVehicle = new Bus(license, color, wheels, yesOrNo);
            }
            else if (inString == "boat")
            {
                if (!askYesNo("Does the boat have sails?", out yesOrNo))
                {
                    return;
                }
                localVehicle = new Boat(license, color, wheels, yesOrNo);
            }
            else if (inString == "car")
            {
                Console.WriteLine("What is the number of seats?");
                inString = Console.ReadLine();
                if (!int.TryParse(inString, out int seats))
                {
                    Console.WriteLine("The input for number of seats cannot be interpreted as a nnumber.");
                    Console.WriteLine("The vehicle cannot be parked.\n");
                    return;
                }
                localVehicle = new Car(license, color, wheels, seats);
            }
            else
            {
                Console.WriteLine("Something went wrong when parking.");
                return;
            }
            theHandler.AddVehicle(localVehicle);
            Console.WriteLine($"Parking vehicle {localVehicle.License}.\n");
        }
 public IActionResult Index(string view, Motorcycle motorcycle)
 {
     return(View(view, motorcycle));
 }
 private void GetAdditionalVehicleInfo(Motorcycle motorcycle)
 {
     motorcycle.VehicleCategory = GetInput("Vehicle Category");
 }
Example #10
0
 /// <summary>
 /// Create a motorcycle by two parents
 /// </summary>
 /// <param name="vehicleParent1"></param>
 /// <param name="vehicleParent2"></param>
 /// <returns></returns>
 public Motorcycle CreateMotorcycle(Motorcycle vehicleParent1, Motorcycle vehicleParent2)
 {
     return(CreateMotorcycle(new Genome(vehicleParent1.genome(), vehicleParent2.genome())));
 }
Example #11
0
 public Motorcycle PostMotorcycle_When_Expecting_Motorcycle(Motorcycle motorcycle)
 {
     Assert.IsType <Motorcycle>(motorcycle);
     return(motorcycle);
 }
Example #12
0
        public void MotorcycleIsSelfPropelled()
        {
            Motorcycle motorcycle = new Motorcycle();

            Assert.True(motorcycle.SelfPropelled);
        }
        public void writeToFile()
        {
            using (StreamWriter garageData = File.CreateText("GarageData.txt"))
            {
                garageData.WriteLine(m_GarageSystem.VehicleInTheGarage.Count);

                foreach (KeyValuePair <int, Vehicle> curVehicle in m_GarageSystem.VehicleInTheGarage)
                {
                    garageData.WriteLine(curVehicle.Value.LicennseNumber);
                    if (curVehicle.Value is Motorcycle)
                    {
                        if (curVehicle.Value.EnergySource is FuelTank)
                        {
                            garageData.WriteLine(SupportedVehicles.eSupportedVehicles.FuelMotorcycle.GetHashCode());
                        }
                        else
                        {
                            garageData.WriteLine(SupportedVehicles.eSupportedVehicles.ElectricMotorcycle.GetHashCode());
                        }
                    }
                    if (curVehicle.Value is Car)
                    {
                        if (curVehicle.Value.EnergySource is FuelTank)
                        {
                            garageData.WriteLine(SupportedVehicles.eSupportedVehicles.FuelCar.GetHashCode());
                        }
                        else
                        {
                            garageData.WriteLine(SupportedVehicles.eSupportedVehicles.ElectricCar.GetHashCode());
                        }
                    }
                    if (curVehicle.Value is Truck)
                    {
                        garageData.WriteLine(SupportedVehicles.eSupportedVehicles.FuelTruck.GetHashCode());
                    }

                    garageData.WriteLine(curVehicle.Value.OwnerName);
                    garageData.WriteLine(curVehicle.Value.OwnerPhoneNumber);
                    garageData.WriteLine(curVehicle.Value.ModelName);
                    garageData.WriteLine(curVehicle.Value.PrecentOfenergyRemaining);
                    garageData.WriteLine(curVehicle.Value.Wheels[0].CanufacturerName);
                    garageData.WriteLine(curVehicle.Value.Wheels[0].CurrentAirPressure);
                    if (curVehicle.Value is Motorcycle)
                    {
                        Motorcycle curMotorcycle = curVehicle.Value as Motorcycle;
                        garageData.WriteLine(curMotorcycle._LicenseType.GetHashCode());
                        garageData.WriteLine(curMotorcycle.EngineVolume);
                    }
                    else if (curVehicle.Value is Car)
                    {
                        Car curCar = curVehicle.Value as Car;
                        garageData.WriteLine(curCar._CarColor.GetHashCode());
                        garageData.WriteLine(curCar._NumOfCarDoors.GetHashCode());
                    }
                    else
                    {
                        Truck curTruck = curVehicle.Value as Truck;
                        if (curTruck.isTransportsDangerousMaterials == true)
                        {
                            garageData.WriteLine("1");
                        }
                        else
                        {
                            garageData.WriteLine("0");
                        }
                        garageData.WriteLine(curTruck.CargoVolume);
                    }
                    garageData.WriteLine(curVehicle.Value._VehicleStatus.GetHashCode());
                }
            }
        }
Example #14
0
        public MotorcycleDetailsViewModel GetMotorcycleDetailsViewModel(Motorcycle motorcycle)
        {
            var model = Mapper.Map <MotorcycleDetailsViewModel>(motorcycle);

            return(model);
        }
Example #15
0
 private void updateMotorcycleInnerData(Motorcycle i_MotorcycleOwner)
 {
     setLicenseType(i_MotorcycleOwner);
     setEngineCapcity(i_MotorcycleOwner);
 }
 public MotorcycleMT09Builder()
 {
     Motorcycle = new Motorcycle {
         Name = "MT09"
     };
 }
Example #17
0
        static void Main(string[] args)
        {
            uint state = 0;
            char key;
            bool fail;

            string[] types = { "Auto:", "Motorka:", "Letadlo:", "Lod:" };

            //nacteni dat z XML, pokud existuje
            VehicleCollection col = XMLS.Load();

            SimpleDelegate simpleDelegate = new SimpleDelegate(col.Check);


            /// <summary>
            /// vypisy menu
            /// </summary>
            while (state != 5)
            {
                switch (state)
                {
                case 0:               //hlavni menu
                    simpleDelegate(); //kontrola, zda neni treba prevest nejake vozidlo do srotu
                    Console.Clear();
                    Console.WriteLine("HLAVNI MENU");
                    Console.WriteLine("");
                    Console.WriteLine("1. Seznam vozidel");
                    Console.WriteLine("2. Seznam vozidel k sesrotovani");
                    Console.WriteLine("3. Pridat nove vozidlo");
                    Console.WriteLine("4. Vymazat vozidlo");
                    Console.WriteLine("5. Konec aplikace");
                    Console.WriteLine("");
                    key = Console.ReadKey().KeyChar;
                    switch (key)
                    {
                    case '1':
                        state = 1;
                        break;

                    case '2':
                        state = 2;
                        break;

                    case '3':
                        state = 3;
                        break;

                    case '4':
                        state = 4;
                        break;

                    case '5':
                        state = 5;
                        break;
                    }
                    break;

                case 1:     //vypise seznam vozidel
                    Console.Clear();
                    Console.WriteLine("Seznam vozidel:");
                    Console.WriteLine("");
                    double overallValue = 0;
                    int    count        = 0;
                    foreach (Vehicle v in col.scrapList)
                    {
                        count++;
                        Console.WriteLine(types[v.Type - 1]);
                        Console.WriteLine("Datum porizeni: {0}", v.Date.Date.ToString("d"));
                        Console.WriteLine("Znacka:         {0}", v.Brand);
                        Console.WriteLine("Pocet sedadel:  {0}", v.SeatsNumber);
                        Console.WriteLine("Spotreba:       {0}", v.Usage);
                        Console.WriteLine("Puvodni cena:   {0}", Math.Round((decimal)v.OriginalValue, 2));
                        Console.WriteLine("Aktualni cena:  {0}", Math.Round(v.ActualValue, 2));
                        Console.WriteLine();
                        Console.WriteLine();
                    }
                    foreach (Vehicle v in col.vehicleList)
                    {
                        count++;
                        overallValue += v.ActualValue;
                        Console.WriteLine(types[v.Type - 1]);
                        Console.WriteLine("Datum porizeni: {0}", v.Date.Date.ToString("d"));
                        Console.WriteLine("Znacka:         {0}", v.Brand);
                        Console.WriteLine("Pocet sedadel:  {0}", v.SeatsNumber);
                        Console.WriteLine("Spotreba:       {0}", v.Usage);
                        Console.WriteLine("Puvodni cena:   {0}", Math.Round((decimal)v.OriginalValue, 2));
                        Console.WriteLine("Aktualni cena:  {0}", Math.Round(v.ActualValue, 2));
                        Console.WriteLine();
                        Console.WriteLine();
                    }
                    Console.WriteLine("Celkova hodnota: {0}Kc", overallValue);
                    Console.WriteLine("Celkem vozidel: {0}ks", count);
                    Console.WriteLine("");
                    Console.WriteLine("1. Zpet");
                    Console.WriteLine("");
                    key = Console.ReadKey().KeyChar;
                    if (key == '1')
                    {
                        state = 0;
                    }
                    break;

                case 2:     //vypise seznam vozidel k sesrotovani
                    Console.Clear();
                    Console.WriteLine("Seznam vozidel k sesrotovani:");
                    Console.WriteLine("");
                    foreach (Vehicle v in col.scrapList)
                    {
                        Console.WriteLine(types[v.Type - 1]);
                        Console.WriteLine("Datum porizeni: {0}", v.Date.Date.ToString("d"));
                        Console.WriteLine("Znacka:         {0}", v.Brand);
                        Console.WriteLine("Pocet sedadel:  {0}", v.SeatsNumber);
                        Console.WriteLine("Spotreba:       {0}", v.Usage);
                        Console.WriteLine("Puvodni cena:   {0}", Math.Round((decimal)v.OriginalValue, 2));
                        Console.WriteLine("Aktualni cena:  {0}", Math.Round(v.ActualValue, 2));
                        Console.WriteLine();
                        Console.WriteLine();
                    }
                    Console.WriteLine("1. Zpet");
                    Console.WriteLine("");
                    key = Console.ReadKey().KeyChar;
                    if (key == '1')
                    {
                        state = 0;
                    }
                    break;

                case 3:     //pridani noveho vozidla
                    Console.Clear();
                    Console.WriteLine("Pridat nove vozidlo:");
                    Console.WriteLine("");

                    int type;
                    do
                    {
                        Console.Write("Typ vozidla (1: Auto, 2: Motorka, 3: Letadlo, 4: Lod): ");
                        type = Console.ReadKey().KeyChar - '0';
                        Console.WriteLine("");
                    } while (type < 1 || type > 4);
                    Console.WriteLine("");

                    DateTime date;
                    do
                    {
                        Console.Write("Datum porizeni: ");
                    } while (!DateTime.TryParse(Console.ReadLine(), out date) || date.CompareTo(DateTime.Now) > 0);
                    Console.WriteLine("");

                    Console.Write("Znacka: ");
                    string brand = Console.ReadLine();
                    Console.WriteLine("");

                    int seatsNumber = 0;
                    do
                    {
                        fail = false;
                        try
                        {
                            Console.Write("Pocet sedadel: ");
                            seatsNumber = Convert.ToInt32(Console.ReadLine());
                            if (seatsNumber < 0)
                            {
                                fail = true;
                            }
                        }
                        catch (FormatException)
                        {
                            fail = true;
                        }
                        catch (OverflowException)
                        {
                            fail = true;
                        }
                    } while (fail);
                    Console.WriteLine();

                    int usage = 0;
                    do
                    {
                        fail = false;
                        try
                        {
                            Console.Write("Spotreba na 100km: ");
                            usage = Convert.ToInt32(Console.ReadLine());
                            if (usage < 0)
                            {
                                fail = true;
                            }
                        }
                        catch (FormatException)
                        {
                            fail = true;
                        }
                        catch (OverflowException)
                        {
                            fail = true;
                        }
                    } while (fail);
                    Console.WriteLine();

                    int originalValue = 0;
                    do
                    {
                        fail = false;
                        try
                        {
                            Console.Write("Puvodni hodnota: ");
                            originalValue = Convert.ToInt32(Console.ReadLine());
                            if (originalValue < 0)
                            {
                                fail = true;
                            }
                        }
                        catch (FormatException)
                        {
                            fail = true;
                        }
                        catch (OverflowException)
                        {
                            fail = true;
                        }
                    } while (fail);
                    Console.WriteLine("");

                    if (type == 1)
                    {
                        Car newVehicle = new Car(date, originalValue, brand, seatsNumber, usage);
                        col.Add(newVehicle);
                    }
                    else if (type == 2)
                    {
                        Motorcycle newVehicle = new Motorcycle(date, originalValue, brand, seatsNumber, usage);
                        col.Add(newVehicle);
                    }
                    else if (type == 3)
                    {
                        Plane newVehicle = new Plane(date, originalValue, brand, seatsNumber, usage);
                        col.Add(newVehicle);
                    }
                    else
                    {
                        Ship newVehicle = new Ship(date, originalValue, brand, seatsNumber, usage);
                        col.Add(newVehicle);
                    }
                    Console.WriteLine("");
                    Console.WriteLine("Vozidlo uspesne pridano!");
                    Console.WriteLine("");
                    Console.Write("Press any key to continue...");
                    Console.ReadKey();
                    state = 0;
                    break;

                case 4:     //smazani vozidla
                    Console.Clear();
                    Console.WriteLine("Vymazat vozidlo:");
                    Console.WriteLine("");

                    int i = 0;
                    int j = 0;

                    foreach (Vehicle v in col.scrapList)
                    {
                        i++;
                        Console.WriteLine("{0}. " + types[v.Type - 1], i);
                        Console.WriteLine("Datum porizeni: {0}", v.Date.Date.ToString("d"));
                        Console.WriteLine("Znacka:         {0}", v.Brand);
                        Console.WriteLine("Pocet sedadel:  {0}", v.SeatsNumber);
                        Console.WriteLine("Spotreba:       {0}", v.Usage);
                        Console.WriteLine("Puvodni cena:   {0}", Math.Round((decimal)v.OriginalValue, 2));
                        Console.WriteLine("Aktualni cena:  {0}", Math.Round(v.ActualValue, 2));
                        Console.WriteLine();
                        Console.WriteLine();
                    }
                    foreach (Vehicle v in col.vehicleList)
                    {
                        j++;
                        Console.WriteLine("{0}. " + types[v.Type - 1], i + j);
                        Console.WriteLine("Datum porizeni: {0}", v.Date.Date.ToString("d"));
                        Console.WriteLine("Znacka:         {0}", v.Brand);
                        Console.WriteLine("Pocet sedadel:  {0}", v.SeatsNumber);
                        Console.WriteLine("Spotreba:       {0}", v.Usage);
                        Console.WriteLine("Puvodni cena:   {0}", Math.Round((decimal)v.OriginalValue, 2));
                        Console.WriteLine("Aktualni cena:  {0}", Math.Round(v.ActualValue, 2));
                        Console.WriteLine();
                        Console.WriteLine();
                    }
                    Console.WriteLine("{0}. Zpet", i + j + 1);
                    Console.WriteLine("");

                    int number = 0;
                    do
                    {
                        fail = false;
                        try
                        {
                            number = Convert.ToInt32(Console.ReadLine());
                            if (number < 1 || number > i + j + 1)
                            {
                                fail = true;
                            }
                        }
                        catch (FormatException)
                        {
                            fail = true;
                        }
                        catch (OverflowException)
                        {
                            fail = true;
                        }
                    } while (fail);

                    if (number < i + j + 1)
                    {
                        if (number > i)
                        {
                            col.scrapList.RemoveAt(number - i - 1);
                        }
                        else
                        {
                            col.vehicleList.RemoveAt(number - 1);
                        }
                        Console.WriteLine("");
                        Console.WriteLine("Vozidlo uspesne vymazano!");
                        Console.WriteLine("");
                        Console.Write("Press any key to continue...");
                        Console.ReadKey();
                    }

                    state = 0;
                    break;
                }
            }

            //ulozi aktualni stav do xml souboru
            if (!XMLS.Save(col))
            {
                Console.WriteLine("Nepodarilo se ulozit do souboru.");
            }
        }
Example #18
0
        /// <summary>
        /// Lägger till ärendet när AddErrandknappen trycks ned
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void AddErrand_CLICK(object sender, RoutedEventArgs e)
        {
            #region Kollar om inmatningarna är giltiga annars kliver den ut ur metoden
            NewErrandValidator ev = new NewErrandValidator()
            {
                Description        = Description.Text,
                Issue              = Issue.Text,
                MechanicID         = MechanicsAvailable.SelectedValuePath,
                RegistrationNumber = RegistrationNumber.Text,
                VehicleType        = VehicleType.Text,
                Model              = Model.Text,
                FuelType           = FuelType.Text,
                Odometer           = Odometer.Text,
                MaxSpeed           = MaxSpeed.Text,
                MaxLoad            = MaxLoad.Text,
                MaxPassenger       = MaxPassenger.Text,
                CarType            = CarType.Text
            };

            var results = ev.Validate(ev);
            if (!results.IsValid)
            {
                var sb = new StringBuilder();
                foreach (var failure in results.Errors)
                {
                    sb.Append($"{failure.ErrorMessage}\n");
                }
                MessageBox.Show(sb.ToString());
                return;
            }
            #endregion

            //All kod under denna kommentar körs endast om datan användaren matat in är giltiga
            #region Sparandet av fordon till databasen
            //Skapar upp fordon
            switch (VehicleType.Text)
            {
            case "Bil":
            {
                var towbar = false;
                if (Towbar1.IsChecked == true)
                {
                    towbar = true;
                }
                else
                {
                    towbar = false;
                }
                var vehicle = new Car(Model.Text, RegistrationNumber.Text, int.Parse(Odometer.Text), FuelType.Text, towbar, CarType.Text);
                DBService.Save(vehicle);
                break;
            }

            case "Lastbil":
            {
                var vehicle = new Truck(Model.Text, RegistrationNumber.Text, int.Parse(Odometer.Text), FuelType.Text, int.Parse(MaxLoad.Text));
                DBService.Save(vehicle);
                break;
            }

            case "Motorcykel":
            {
                var vehicle = new Motorcycle(Model.Text, RegistrationNumber.Text, int.Parse(Odometer.Text), FuelType.Text, int.Parse(MaxSpeed.Text));
                DBService.Save(vehicle);
                break;
            }

            case "Buss":
            {
                var vehicle = new Bus(Model.Text, RegistrationNumber.Text, int.Parse(Odometer.Text), FuelType.Text, int.Parse(MaxPassenger.Text));
                DBService.Save(vehicle);
                break;
            }
            }
            #endregion



            if (MechanicsAvailable.SelectedItem is Mechanic)
            {
                var mechanic = MechanicsAvailable.SelectedItem as Mechanic;
                mechanic.NumberOfErrands += 1;
                DBService.Modify(mechanic);
            }

            //Sparar ärendet till databasen
            _errand.Status = true;
            _errand.ID     = Guid.NewGuid();
            DBService.Save(_errand);

            //Går tillbaka till föregående sida
            ErrandPageAdmin page = new ErrandPageAdmin();
            NavigationService.Navigate(page);
        }
Example #19
0
        static void Main(string[] args)
        {
            int  indexBaseVehicles = 0, indexTollCabin = 0;
            bool condicaoWhile = true;

            BaseVehicles[] baseVehicles = new BaseVehicles[GetNumberByArg("veículos")];
            TollCabin[]    tollCabin    = new TollCabin[GetNumberByArg("cabines do pedágio")];

            while (condicaoWhile)
            {
                switch (Menu())
                {
                case 1:
                    Console.Clear();
                    if (AddBaseVehicles())
                    {
                        baseVehicles[indexBaseVehicles] = new Car(GetNumberAxis(), GetTollPaymentBalance());
                        Console.WriteLine(ReturnMessage.SucessAddVehicle);
                        indexBaseVehicles++;
                    }
                    else
                    {
                        Console.WriteLine(ReturnMessage.NoMoreRoom);
                    }
                    Console.ReadKey();
                    break;

                case 2:
                    Console.Clear();
                    if (AddBaseVehicles())
                    {
                        baseVehicles[indexBaseVehicles] = new Truck(GetNumberAxis(), GetTollPaymentBalance());
                        Console.WriteLine(ReturnMessage.SucessAddVehicle);
                        indexBaseVehicles++;
                    }
                    else
                    {
                        Console.WriteLine(ReturnMessage.NoMoreRoom);
                    }
                    Console.ReadKey();
                    break;

                case 3:
                    Console.Clear();
                    if (AddBaseVehicles())
                    {
                        baseVehicles[indexBaseVehicles] = new Motorcycle(GetNumberAxis(), GetTollPaymentBalance());
                        Console.WriteLine(ReturnMessage.SucessAddVehicle);
                        indexBaseVehicles++;
                    }
                    else
                    {
                        Console.WriteLine(ReturnMessage.NoMoreRoom);
                    }
                    Console.ReadKey();
                    break;

                case 4:
                    Console.Clear();
                    if (indexTollCabin < tollCabin.Length)
                    {
                        Console.Write("Digite qual o valor do pedágio por eixo:\t");
                        double tollValuePerAxis = Double.Parse(Console.ReadLine());
                        tollCabin[indexTollCabin] = new TollCabin(tollValuePerAxis);
                        Console.WriteLine(ReturnMessage.SucessAddVehicle);
                        indexTollCabin++;
                    }
                    else
                    {
                        Console.WriteLine(ReturnMessage.NoMoreRoom);
                    }
                    Console.ReadKey();
                    break;

                case 5:
                    Console.Clear();
                    if (indexBaseVehicles > 0)
                    {
                        GetListBaseVehicle();
                    }
                    else
                    {
                        Console.WriteLine(ReturnMessage.EmptyList);
                    }
                    Console.ReadKey();
                    break;

                case 6:
                    Console.Clear();
                    if (indexTollCabin > 0)
                    {
                        GetListTollCabin();
                    }
                    else
                    {
                        Console.WriteLine(ReturnMessage.EmptyList);
                    }
                    Console.ReadKey();
                    break;

                case 7:
                    Console.Clear();
                    if (indexBaseVehicles != 0 && indexTollCabin != 0)
                    {
                        GetListBaseVehicle();
                        Console.Write("Escolha um veículo:\t");
                        int numVehicle = Int32.Parse(Console.ReadLine()) - 1;
                        Console.Clear();
                        GetListTollCabin();
                        Console.Write("Escolha uma cabine:\t");
                        int numCabin = Int32.Parse(Console.ReadLine()) - 1;
                        if (tollCabin[numCabin].AddVehiclesPass(baseVehicles[numVehicle]))
                        {
                            Console.WriteLine(ReturnMessage.SuccessAddVehiclePass);
                        }
                        else
                        {
                            Console.WriteLine(ReturnMessage.ErrorAddVehiclePass);
                        }
                    }
                    else
                    {
                        Console.WriteLine(ReturnMessage.SomeEmptyList);
                    }
                    Console.ReadKey();
                    break;

                case 8:
                    Console.Clear();
                    Console.WriteLine(ReturnMessage.ExitProgram);
                    condicaoWhile = false;
                    break;

                default:
                    Console.Clear();
                    Console.WriteLine(ReturnMessage.OptionInvalid);
                    Console.ReadKey();
                    break;
                }
            }

            int Menu()
            {
                Console.Clear();
                Console.Write("[1] - Criar Automóvel\n[2] - Criar Caminhão\n"
                              + "[3] - Criar Motocicleta\n[4] - Criar Cabine Pedágio\n"
                              + "[5] - Listar Automóveis\n[6] - Listar Cabines Pedágio\n"
                              + "[7] - Passar Veículo\n[8] - Sair\n\nDigite um opção:\t");
                return(Int32.Parse(Console.ReadLine()));
            }

            int GetNumberByArg(string arg)
            {
                Console.Clear();
                Console.Write($"Digite o número de {arg}:\t");
                return(Int32.Parse(Console.ReadLine()));
            }

            bool AddBaseVehicles()
            {
                if (indexBaseVehicles < baseVehicles.Length)
                {
                    return(true);
                }

                return(false);
            }

            int GetNumberAxis()
            {
                Console.Write("Digite o número de eixos para o automóvel:\t");
                return(Int32.Parse(Console.ReadLine()));
            }

            double GetTollPaymentBalance()
            {
                Console.Write("Digite o saldo para pagamento de pedágios:\t");
                return(Double.Parse(Console.ReadLine()));
            }

            void GetListBaseVehicle()
            {
                Console.WriteLine("Lista de Veículos:");
                Console.WriteLine("\n");
                for (int i = 0; i < indexBaseVehicles; i++)
                {
                    Console.WriteLine($"[{i + 1}] - {baseVehicles[i].GetTypeName()}");
                    Console.WriteLine(baseVehicles[i].GetVehicle());
                    Console.WriteLine("\n");
                }
            }

            void GetListTollCabin()
            {
                Console.WriteLine("Lista de Cabines do Pedágio:");
                Console.WriteLine("\n");
                for (int i = 0; i < indexTollCabin; i++)
                {
                    Console.WriteLine($"Cabine [{i + 1}]:");
                    Console.WriteLine(tollCabin[i].GetTollCabin());
                    Console.WriteLine("\n");
                }
            }
        }
Example #20
0
        public void MotorcycleRequiresLicense()
        {
            Motorcycle motorcycle = new Motorcycle();

            Assert.True(motorcycle.RequiresLicense);
        }
Example #21
0
        static void Main(string[] args)
        {
            Vehicle[] vehicle = new Vehicle[6];

            Car dodge = new Car();

            dodge.Height   = 1.73;
            dodge.Weight   = 2214;
            dodge.Width    = 1.97;
            dodge.Price    = 44390;
            dodge.MaxSpeed = 367.9;

            //dodge.Start();
            //dodge.Stop();

            Truck truck = new Truck();

            truck.Height   = 3.4;
            truck.Weight   = 10321;
            truck.Width    = 2.7;
            truck.Price    = 49390;
            truck.MaxSpeed = 207.1;

            //truck.Start();
            //truck.Stop();

            Bus bus = new Bus();

            bus.Height   = 2.83;
            bus.Weight   = 8214;
            bus.Width    = 3.1;
            bus.Price    = 63290;
            bus.MaxSpeed = 127.9;

            //bus.Start();
            //bus.Stop();

            Bicycle bicycle = new Bicycle();

            bicycle.Height   = 1;
            bicycle.Price    = 231;
            bicycle.MaxSpeed = 40;
            bicycle.Weight   = 2;
            bicycle.Width    = 20;

            //bicycle.Start();
            //bicycle.Stop();


            Motorcycle motorcycle = new Motorcycle();

            motorcycle.Height   = 1;
            motorcycle.Price    = 2103;
            motorcycle.MaxSpeed = 250;
            motorcycle.Weight   = 1000;
            motorcycle.Width    = 2;

            //motorcycle.Start();
            //motorcycle.Stop();

            Plane plane = new Plane();

            plane.Height   = 30;
            plane.Price    = 1283758.23;
            plane.MaxSpeed = 1800;
            plane.Weight   = 30_000;
            plane.Width    = 30;

            //plane.Start();
            //plane.Stop();

            vehicle[0] = dodge;
            vehicle[1] = bicycle;
            vehicle[2] = bus;
            vehicle[3] = motorcycle;
            vehicle[4] = plane;
            vehicle[5] = truck;

            //for (int i = 0; i < vehicle.Length; i++)
            //{
            //    vehicle[i].Start();
            //    vehicle[i].Stop();
            //    Console.WriteLine();
            //}
            Console.WriteLine("**  Garage 1  **");
            Garage garage1 = new Garage(vehicle);

            Vehicle vehicle1 = garage1.GetVehicle(2);

            vehicle1.Start();
            vehicle1.Stop();
            garage1.SetVehicle(2, vehicle1);


            Console.WriteLine("\n**  Garage 2  (empty) **");
            Garage  garage2  = new Garage();
            Vehicle vehicle2 = garage2.GetVehicle(0);

            garage2.SetVehicle(2, vehicle2);

            Console.WriteLine("\n**  Garage 3  **");
            Garage garage3 = new Garage(vehicle);

            Vehicle vehicle3 = garage1.GetVehicle(5);

            vehicle3.Start();
            vehicle3.Stop();
            garage1.SetVehicle(2, vehicle3);
        }
Example #22
0
 public MyCar(Motorcycle moto)
 {
     _moto = moto;
 }
Example #23
0
 protected void Init()
 {
     Motorcycle = new Motorcycle();
 }
Example #24
0
    /// <summary>
    /// Assemble all separated pieces into one object with connected joints
    /// </summary>
    /// <param name="motorcycleBase"></param>
    /// <param name="swingarmParent"></param>
    /// <param name="leftWheel"></param>
    /// <param name="rightWheel"></param>
    /// <param name="driver"></param>
    /// <param name="genome"></param>
    /// <returns></returns>
    private Motorcycle AssembleMotorcycle(Transform motorcycleBase, Transform swingarmParent, Transform leftWheel, Transform rightWheel, Transform driver, Genome genome)
    {
        // Save all necessary transforms for later
        Transform chasis                 = motorcycleBase.GetChild(0);
        Transform chasisAnchors          = chasis.GetChild(0);
        Transform chasisRightWheelAnchor = chasisAnchors.Find("Front Wheel");
        Transform chasisSwingarmAnchor   = chasisAnchors.Find("Swingarm");
        Transform chasisDriverAnchor     = chasisAnchors.Find("Driver");

        Transform swingarm = swingarmParent.GetChild(0);
        Transform swingarmLeftWheelAnchor = swingarm.GetChild(0);

        Transform driverBody = driver.GetChild(0);

        // Set the transform and the hinge joint values of the swingarm
        swingarmParent.parent        = chasisSwingarmAnchor;
        swingarmParent.localPosition = new Vector3(0.0f, 0.0f, 0.0f);

        HingeJoint2D swingarmHingeJoint = swingarm.GetComponent <HingeJoint2D>();

        swingarmHingeJoint.connectedBody   = chasis.GetComponent <Rigidbody2D>();
        swingarmHingeJoint.connectedAnchor = new Vector2(chasisSwingarmAnchor.localPosition.x, chasisSwingarmAnchor.localPosition.y);

        // Set the transform and the wheel joint values of the left wheel
        leftWheel.parent        = swingarm;
        leftWheel.localPosition = new Vector3(0.0f, 0.0f, 0.0f);

        WheelJoint2D leftWheelJoint = leftWheel.GetComponent <WheelJoint2D>();

        leftWheelJoint.connectedBody   = swingarm.GetComponent <Rigidbody2D>();
        leftWheelJoint.connectedAnchor = new Vector2(swingarmLeftWheelAnchor.localPosition.x, swingarmLeftWheelAnchor.localPosition.y);

        // Set the transform and the wheel joint values of the right wheel

        rightWheel.parent        = chasis;
        rightWheel.localPosition = new Vector3(0.0f, 0.0f, 0.0f);

        WheelJoint2D rightWheelJoint = rightWheel.GetComponent <WheelJoint2D>();

        rightWheelJoint.connectedBody   = chasis.GetComponent <Rigidbody2D>();
        rightWheelJoint.connectedAnchor = new Vector2(chasisRightWheelAnchor.localPosition.x, chasisRightWheelAnchor.localPosition.y);

        // Set the driver's transform and hinge joint values
        driver.parent        = chasisDriverAnchor;
        driver.localPosition = new Vector3(0.0f, 0.0f, 0.0f);;

        driverBody.GetComponent <HingeJoint2D>().connectedBody = chasis.GetComponent <Rigidbody2D>();

        // Set parents of each part to the base object
        swingarm.parent   = motorcycleBase;
        leftWheel.parent  = motorcycleBase;
        rightWheel.parent = motorcycleBase;
        driver.parent     = motorcycleBase;

        // Destroy all anchors

        Destroy(swingarmParent.gameObject);
        Destroy(swingarmLeftWheelAnchor.gameObject);
        Destroy(chasisRightWheelAnchor.gameObject);
        Destroy(chasisDriverAnchor.gameObject);
        Destroy(chasisAnchors.gameObject);

        // To finish, add a motorcycle controller component  to the parent object
        Motorcycle motorcycleComp = motorcycleBase.gameObject.AddComponent <Motorcycle>();
        Transform  head           = driver.Find("head").transform;

        motorcycleComp.Initialize(genome, leftWheel, rightWheel, driver, head);

        // Set the head collision detector (needs a delegate)
        CollisionDetector collisionDetector = head.gameObject.AddComponent <CollisionDetector>();

        collisionDetector.SetCollisionCommunication(motorcycleComp.HeadCollided);

        return(motorcycleComp);
    }
Example #25
0
 public void GetPrice(Motorcycle motorcycle)
 {
     motorcycle.Price = 50;
 }
 public static decimal Calculate(Motorcycle motorcycle)
 {
     return((motorcycle.Capacity + 99) / 100 * 20m);
 }
Example #27
0
    static void Main()
    {
        ConsoleKeyInfo ch;
        ConsoleKeyInfo ch1;
        Vehicle choosen_car = new Car("", "", 0, false);
        Vehicle car1 = new Car("Peugeot", "Blue", 120, false);
        Vehicle car2 = new Car("Opel", "Black", 150, false);
        Vehicle choosen_motorcycle = new Motorcycle("", "", 0, false);
        Vehicle motorcycle1 = new Motorcycle("Yamaha", "Blue", 140, false);
        Vehicle motorcycle2 = new Motorcycle("Harley Davidson", "Red", 170, false);
        Vehicle choosen_powerboat = new Powerboat("", "", 0, false);
        Vehicle powerboat1 = new Powerboat("Windboat", "White", 50, false);
        Vehicle powerboat2 = new Powerboat("Shark boats", "Green", 60, false);

        while (true)
        {
            Console.Clear();
            Console.WriteLine("Choose the vehicle: ");
            Console.WriteLine("");
            Console.WriteLine("1 - Car");
            Console.WriteLine("2 - Motorcycle");
            Console.WriteLine("3 - Powerboat");
            Console.WriteLine("0 - Exit");
            ch = Console.ReadKey();
            if (ch.KeyChar == '1')
            {
                while (true)
                {
                    Console.Clear();
                    car1.Information();
                    car2.Information();
                    Console.WriteLine("");
                    Console.WriteLine("1 - Start the car");
                    Console.WriteLine("2 - Choose the car");
                    Console.WriteLine("3 - Fuel the car");
                    Console.WriteLine("0 - Back");
                    ch1 = Console.ReadKey();
                    if (ch1.KeyChar == '1')
                    {
                        Console.Clear();
                        if (choosen_car.VehicleBrand == "")
                            choosen_car.StartTheVehicle();
                        else
                            choosen_car.StartTheVehicle(choosen_car);
                    }
                    if (ch1.KeyChar == '2')
                    {
                        Console.Clear();
                        Console.WriteLine("What car do you want to choose?");
                        Console.WriteLine("1 - Peugeot");
                        Console.WriteLine("2 - Opel");
                        ch1 = Console.ReadKey();
                        if (ch1.KeyChar == '1')
                            choosen_car = car1;
                        if (ch1.KeyChar == '2')
                            choosen_car = car2;
                    }
                    if (ch1.KeyChar == '3')
                    {
                        Console.Clear();
                        Console.WriteLine("What car do you want to fill?");
                        Console.WriteLine("1 - Peugeot");
                        Console.WriteLine("2 - Opel");
                        ch1 = Console.ReadKey();
                        if (ch1.KeyChar == '1')
                            car1.FuelTheVehicle(car1);
                        if (ch1.KeyChar == '2')
                            car2.FuelTheVehicle(car2);
                    }
                    if (ch1.KeyChar == '0')
                        break;
                    Console.ReadKey();
                }
            }
            if (ch.KeyChar == '2')
            {
                while (true)
                {
                    Console.Clear();
                    motorcycle1.Information();
                    motorcycle2.Information();
                    Console.WriteLine("");
                    Console.WriteLine("1 - Start the motorcycle");
                    Console.WriteLine("2 - Choose the motorcycle");
                    Console.WriteLine("3 - Fuel the motorcycle");
                    Console.WriteLine("0 - Back");
                    ch1 = Console.ReadKey();
                    if (ch1.KeyChar == '1')
                    {
                        Console.Clear();
                        if (choosen_motorcycle.VehicleBrand == "")
                            choosen_motorcycle.StartTheVehicle();
                        else
                            choosen_motorcycle.StartTheVehicle(choosen_motorcycle);
                    }
                    if (ch1.KeyChar == '2')
                    {
                        Console.Clear();
                        Console.WriteLine("What motorcycle do you want to choose?");
                        Console.WriteLine("1 - Yamaha");
                        Console.WriteLine("2 - Harley Davidson");
                        ch1 = Console.ReadKey();
                        if (ch1.KeyChar == '1')
                            choosen_motorcycle = motorcycle1;
                        if (ch1.KeyChar == '2')
                            choosen_motorcycle = motorcycle2;
                    }
                    if (ch1.KeyChar == '3')
                    {
                        Console.Clear();
                        Console.WriteLine("What motorcycle do you want to fill?");
                        Console.WriteLine("1 - Yamaha");
                        Console.WriteLine("2 - Harley Davidson");
                        ch1 = Console.ReadKey();
                        if (ch1.KeyChar == '1')
                            motorcycle1.FuelTheVehicle(motorcycle1);
                        if (ch1.KeyChar == '2')
                            motorcycle2.FuelTheVehicle(motorcycle2);
                    }
                    if (ch1.KeyChar == '0')
                        break;
                    Console.ReadKey();
                }
            }
            if (ch.KeyChar == '3')
            {
                while (true)
                {
                    Console.Clear();
                    powerboat1.Information();
                    powerboat2.Information();
                    Console.WriteLine("");
                    Console.WriteLine("1 - Start the powerboat");
                    Console.WriteLine("2 - Choose the powerboat");
                    Console.WriteLine("3 - Fuel the powerboat");
                    Console.WriteLine("0 - Back");
                    ch1 = Console.ReadKey();
                    if (ch1.KeyChar == '1')
                    {
                        Console.Clear();
                        if (choosen_powerboat.VehicleBrand == "")
                            choosen_powerboat.StartTheVehicle();
                        else
                            choosen_powerboat.StartTheVehicle(choosen_powerboat);
                    }
                    if (ch1.KeyChar == '2')
                    {
                        Console.Clear();
                        Console.WriteLine("What powerboat do you want to choose?");
                        Console.WriteLine("1 - Windboat");
                        Console.WriteLine("2 - Shark boats");
                        ch1 = Console.ReadKey();
                        if (ch1.KeyChar == '1')
                            choosen_powerboat = powerboat1;
                        if (ch1.KeyChar == '2')
                            choosen_powerboat = powerboat2;
                    }
                    if (ch1.KeyChar == '3')
                    {
                        Console.Clear();
                        Console.WriteLine("What powerboat do you want to fill?");
                        Console.WriteLine("1 - Windboat");
                        Console.WriteLine("2 - Shark boats");
                        ch1 = Console.ReadKey();
                        if (ch1.KeyChar == '1')
                            powerboat1.FuelTheVehicle(powerboat1);
                        if (ch1.KeyChar == '2')
                            powerboat2.FuelTheVehicle(powerboat2);
                    }
                    if (ch1.KeyChar == '0')
                        break;
                    Console.ReadKey();
                }
            }
            if (ch.KeyChar == '0')
                break;
            Console.ReadKey();
        }
    }
Example #28
0
        public void IndexSample(bool useServerSession, bool optimisticLocking)
        {
            string           brandName              = "Toyota";
            string           color                  = "Blue";
            int              maxPassengers          = 5;
            int              fuelCapacity           = 40;
            double           litresPer100Kilometers = 5;
            DateTime         modelYear              = new DateTime(2003, 1, 1, 0, 0, 0, DateTimeKind.Utc);
            string           modelName              = "Highlander";
            int              maxSpeed               = 200;
            int              odometer               = 100000;
            string           registrationState      = "Texas";
            string           registrationPlate      = "TX343434";
            string           insurancePolicy        = "CAA7878787";
            DriversLicense   license                = new DriversLicense("California", "B7788888", DateTime.Now + new TimeSpan(1825, 0, 0, 0));
            Person           person                 = new Person("Mats Persson", license);
            InsuranceCompany insuranceCompany       = new InsuranceCompany("Allstate", "858727878");
            Car              car = new Car(color, maxPassengers, fuelCapacity, litresPer100Kilometers, modelYear, brandName, modelName, maxSpeed,
                                           odometer, registrationState, registrationPlate, insuranceCompany, insurancePolicy);

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir, null, 2000, optimisticLocking) : (SessionBase) new SessionNoServer(systemDir, 5000, optimisticLocking))
            {
                session.BeginUpdate();
                File.Copy(licenseDbFile, Path.Combine(systemDir, "4.odb"), true);
                foreach (Database db in session.OpenAllDatabases(true))
                {
                    if (db.DatabaseNumber >= 10 || db.DatabaseNumber == SessionBase.IndexDescriptorDatabaseNumber)
                    {
                        session.DeleteDatabase(db);
                    }
                }
                session.Commit();
                session.BeginUpdate();
                DatabaseLocation defaultLocation = session.DatabaseLocations.Default();
                List <Database>  dbList          = session.OpenLocationDatabases(defaultLocation, true);
                foreach (Database db in dbList)
                {
                    if (db.DatabaseNumber > Database.InitialReservedDatabaseNumbers)
                    {
                        session.DeleteDatabase(db);
                    }
                }
                session.DeleteLocation(defaultLocation);
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginUpdate();
                File.Copy(licenseDbFile, Path.Combine(systemDir, "4.odb"), true);
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginRead();
                int ct     = 0;
                var mIndex = session.Index <Motorcycle>();
                if (mIndex != null)
                {
                    foreach (Motorcycle mc in session.Index <Motorcycle>())
                    {
                        Assert.NotNull(mc);
                        ++ct;
                    }
                }
                Assert.AreEqual(ct, 0);
                session.Commit();
            }
            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginUpdate();
                for (int i = 0; i < 10000; i++)
                {
                    Motorcycle mc = new Motorcycle();
                    session.Persist(mc);
                }
                session.Commit();
                session.BeginUpdate();
                int ct     = 0;
                var mIndex = session.Index <Car>();
                if (mIndex != null)
                {
                    foreach (Car c in mIndex)
                    {
                        Assert.NotNull(c);
                        ++ct;
                    }
                }
                Assert.AreEqual(ct, 0);
                ct = 0;
                session.RegisterClass(typeof(Person));
                foreach (Person p in session.AllObjects <Person>(true, false))
                {
                    Assert.NotNull(p);
                    ++ct;
                }
                session.Commit();
                session.BeginRead();
                ct = 0;
                foreach (Motorcycle mc in session.AllObjects <Motorcycle>(false, true))
                {
                    Assert.NotNull(mc);
                    ++ct;
                }
                Assert.AreEqual(ct, 10000);
                session.Commit();
                session.BeginRead();
                ct = 0;
                foreach (Motorcycle mc in session.AllObjects <Motorcycle>(false, true))
                {
                    Assert.NotNull(mc);
                    ++ct;
                }
                Assert.AreEqual(ct, 10000);
                session.Abort();
                session.BeginRead();
                ct = 0;
                foreach (Motorcycle mc in session.AllObjects <Motorcycle>(false, true))
                {
                    Assert.NotNull(mc);
                    ++ct;
                }
                Assert.AreEqual(ct, 10000);
                session.Commit();
                session.BeginRead();
                ct = 0;
                foreach (Motorcycle mc in session.Index <Motorcycle>())
                {
                    Assert.NotNull(mc);
                    ++ct;
                }
                Assert.AreEqual(ct, 10000);
                session.Abort();
                session.BeginRead();
                ct = 0;
                foreach (Motorcycle mc in session.Index <Motorcycle>())
                {
                    Assert.NotNull(mc);
                    ++ct;
                }
                Assert.AreEqual(ct, 10000);
                session.Commit();
                try
                {
                    ct = 0;
                    foreach (Motorcycle mc in session.Index <Motorcycle>())
                    {
                        Assert.NotNull(mc);
                        ++ct;
                    }
                    Assert.AreEqual(ct, 10000);
                }
                catch (NotInTransactionException ex)
                {
                    Console.WriteLine(ex.Message);
                }
                session.BeginUpdate();
                ct = 0;
                foreach (Motorcycle mc in session.AllObjects <Motorcycle>(false, true))
                {
                    if (++ct % 2 == 0)
                    {
                        mc.Unpersist(session);
                    }
                }
                ct = 0;
                foreach (Motorcycle mc in session.Index <Motorcycle>())
                {
                    ++ct;
                }
                Assert.AreEqual(ct, 5000);
                session.Abort();
                session.BeginUpdate();
                ct = 0;
                foreach (Motorcycle mc in session.AllObjects <Motorcycle>(false, true))
                {
                    if (++ct % 2 == 0)
                    {
                        mc.Unpersist(session);
                    }
                }
                ct = 0;
                foreach (Motorcycle mc in session.Index <Motorcycle>())
                {
                    Assert.NotNull(mc);
                    ++ct;
                }
                Assert.AreEqual(ct, 5000);
                ct = 0;
                foreach (Motorcycle mc in session.Index <Motorcycle>("cc"))
                {
                    Assert.NotNull(mc);
                    ++ct;
                }
                Assert.AreEqual(ct, 5000);
                ct = 0;
                try
                {
                    foreach (Motorcycle mc in session.Index <Motorcycle>("ccx"))
                    {
                        Assert.NotNull(mc);
                        ++ct;
                    }
                    Assert.AreEqual(ct, 5000);
                }
                catch (FieldDoesNotExistException)
                {
                }
                session.Commit();
                session.BeginUpdate();
                ct = 0;
                double prior = -44.0;
                foreach (Motorcycle mc in session.Index <Motorcycle>("cc"))
                {
                    Assert.NotNull(mc);
                    mc.CC = mc.CC - prior;
                    prior = mc.CC;
                    ++ct;
                }
                Assert.AreEqual(ct, 2500);
                for (int i = 0; i < 95000; i++)
                {
                    Motorcycle mc = new Motorcycle();
                    session.Persist(mc);
                }
                session.FlushUpdates();
                ct = 0;
                foreach (Motorcycle mc in session.Index <Motorcycle>())
                {
                    Assert.NotNull(mc);
                    ++ct;
                }
                Assert.AreEqual(ct, 100000);
                session.Abort();
                session.BeginUpdate();
                ct    = 0;
                prior = double.MinValue;
                foreach (Motorcycle mc in session.Index <Motorcycle>("cc"))
                {
                    Assert.NotNull(mc);
                    Assert.GreaterOrEqual(mc.CC, prior);
                    prior = mc.CC;
                    ++ct;
                    if (ct < 25)
                    {
                        Console.Write(prior.ToString() + " ");
                    }
                }
                ct    = 0;
                prior = -44.0;
                foreach (Motorcycle mc in session.Index <Motorcycle>("cc"))
                {
                    Assert.NotNull(mc);
                    mc.CC = mc.CC - prior;
                    prior = mc.CC;
                    ++ct;
                }
                Assert.AreEqual(ct, 2500);
                session.Commit();
                session.BeginUpdate();
                ct    = 0;
                prior = double.MinValue;
                foreach (Motorcycle mc in session.Index <Motorcycle>("cc"))
                {
                    Assert.NotNull(mc);
                    Assert.GreaterOrEqual(mc.CC, prior);
                    prior = mc.CC;
                    ++ct;
                }
                for (int i = 0; i < 95000; i++)
                {
                    Motorcycle mc = new Motorcycle();
                    session.Persist(mc);
                    DataBaseFileEntry dbEntry = new DataBaseFileEntry {
                        Something = "Something"
                    };
                    session.Persist(dbEntry);
                    mc.AddChild(dbEntry);
                    mc.AddChild(dbEntry);
                }
                session.FlushUpdates();
                ct = 0;
                foreach (Motorcycle mc in session.Index <Motorcycle>())
                {
                    Assert.NotNull(mc);
                    ++ct;
                }
                Assert.AreEqual(ct, 100000);
                session.Commit();
                session.BeginRead();
                session.Abort();
                session.BeginUpdate();
                foreach (Motorcycle mc in session.Index <Motorcycle>())
                {
                    Assert.NotNull(mc);
                    VelocityDbList <DataBaseFileEntry> children = mc.Children;
                    if (children != null && children.Count > 0)
                    {
                        mc.RemoveChild(children[0]);
                    }
                    ++ct;
                }
                session.Commit();
                session.BeginRead();
                ct    = 0;
                prior = double.MinValue;
                foreach (Motorcycle mc in session.Index <Motorcycle>("cc"))
                {
                    Assert.NotNull(mc);
                    Assert.GreaterOrEqual(mc.CC, prior);
                    prior = mc.CC;
                    ++ct;
                }
                Assert.AreEqual(ct, 100000);
                session.Commit();
                Console.WriteLine("Motorcycle index Test OK");
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginUpdate();
                session.Persist(car);
                registrationState = "Maine";
                car = new Car(color, maxPassengers, fuelCapacity, litresPer100Kilometers, modelYear, brandName, modelName, maxSpeed,
                              odometer, registrationState, registrationPlate, insuranceCompany, insurancePolicy);
                session.Persist(car);
                color                  = "Red";
                maxPassengers          = 5;
                fuelCapacity           = 50;
                litresPer100Kilometers = 8;
                modelYear              = new DateTime(2006, 1, 1, 0, 0, 0, DateTimeKind.Utc);
                brandName              = "Toyota";
                modelName              = "Tacoma";
                maxSpeed               = 210;
                odometer               = 50000;
                registrationState      = "Texas";
                registrationPlate      = "TX343433";
                insurancePolicy        = "CAA7878777";
                car = new Car(color, maxPassengers, fuelCapacity, litresPer100Kilometers, modelYear, brandName, modelName, maxSpeed,
                              odometer, registrationState, registrationPlate, insuranceCompany, insurancePolicy);
                session.Persist(car);
                color                  = "Black";
                maxPassengers          = 5;
                fuelCapacity           = 60;
                litresPer100Kilometers = 3;
                modelYear              = new DateTime(2001, 1, 1, 0, 0, 0, DateTimeKind.Utc);
                brandName              = "Lincoln";
                modelName              = "Town Car";
                maxSpeed               = 220;
                odometer               = 250000;
                registrationState      = "Texas";
                registrationPlate      = "TX543433";
                insurancePolicy        = "CAA7878775";
                for (int i = 0; i < 1; i++)
                {
                    registrationState = RandomString(2);
                    registrationPlate = RandomString(12);
                    car = new Car(color, maxPassengers, fuelCapacity, litresPer100Kilometers, modelYear, brandName, modelName, maxSpeed, odometer, registrationState, registrationPlate, insuranceCompany, insurancePolicy);
                    session.Persist(car);
                    color                  = null;
                    maxPassengers          = i;
                    fuelCapacity           = 60;
                    litresPer100Kilometers = 3;
                    modelYear              = new DateTime(2001, 1, 1, 0, 0, 0, DateTimeKind.Utc);
                    brandName              = "Null Car";
                    modelName              = null;
                    maxSpeed               = 220;
                    odometer               = 250000;
                    insurancePolicy        = null;
                }
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginRead();
                Console.WriteLine("Blue Cars");
                BTreeSet <Car> bTree = session.Index <Car>("color");
                foreach (Car c in (from aCar in bTree where aCar.Color == "Blue" select aCar))
                {
                    Console.WriteLine(c.ToStringDetails(session));
                }
                Console.WriteLine("Cars in fuel efficiency order");
                foreach (Car c in session.Index <Car>("litresPer100Kilometers"))
                {
                    Console.WriteLine(c.ToStringDetails(session));
                }
                Console.WriteLine("Vehicles ordered modelYear, brandName, modelName, color");
                foreach (Vehicle v in session.Index <Vehicle>())
                {
                    Console.WriteLine(v.ToStringDetails(session));
                }
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginUpdate();
                // these LINQ statements will trigger a binary search lookup (not a linear search) of the matching Car objects in the BTreeSet
                Car c = (from aCar in session.Index <Car>("color") where aCar.Color == "Blue" select aCar).First();
                c.Color = "Green";
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginUpdate();
                // these LINQ statements will trigger a binary search lookup (not a linear search) of the matching Car objects in the BTreeSet
                Car    c  = (from aCar in session.Index <Car>("color") where aCar.Color == "Green" select aCar).First();
                UInt64 id = c.Id;
                session.DeleteObject(id);
                session.Abort();
                session.BeginUpdate();
                session.DeleteObject(id);
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                Stopwatch sw = new Stopwatch();
                sw.Start();
                session.BeginRead();
                // these LINQ statements will trigger a binary search lookup (not a linear search) of the matching Car objects in the BTreeSet
                Console.WriteLine("Blue Cars");
                foreach (Car c in (from aCar in session.Index <Car>("color") where aCar.Color == "Blue" select aCar))
                {
                    Console.WriteLine(c.ToStringDetails(session));
                }
                session.Commit();
                sw.Stop();
                Console.WriteLine(sw.Elapsed);
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginUpdate();
                for (int i = 0; i < 10000; i++)
                { // add some junk to make search harder
                    car = new Car(color, maxPassengers, fuelCapacity, litresPer100Kilometers, modelYear, brandName, modelName, i,
                                  odometer, registrationState, registrationPlate + i, insuranceCompany, insurancePolicy);
                    session.Persist(car);
                }
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginRead();
                // these LINQ statements will trigger a binary search lookup (not a linear search) of the matching Car objects in the BTreeSet
                Console.WriteLine("Blue Cars");
                foreach (Car c in (from aCar in session.Index <Car>("color") where aCar.Color == "Blue" select aCar))
                {
                    Console.WriteLine(c.ToStringDetails(session));
                }
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginUpdate();
                Car c = (from aCar in session.Index <Car>("color") where aCar.Color == "Blue" select aCar).First();
                c.Unpersist(session);
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginRead();
                foreach (Car c in session.Index <Car>())
                {
                    Console.WriteLine(c.ToStringDetails(session));
                }
                Console.WriteLine("Blue Cars");
                foreach (Car c in (from aCar in session.Index <Car>() where aCar.Color == "Blue" select aCar))
                {
                    Console.WriteLine(c.ToStringDetails(session));
                }
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginUpdate();
                InsuranceCompany prior = insuranceCompany;
                try
                {
                    for (int i = 0; i < 100000; i++)
                    {
                        insuranceCompany = new InsuranceCompany("AAA", "858787878");
                        insuranceCompany.Persist(session, prior);
                        prior = insuranceCompany;
                    }
                    Assert.IsTrue(false); // should not get here
                }
                catch (UniqueConstraintException)
                {
                }
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginRead();
                Database db = session.OpenDatabase(session.DatabaseNumberOf(typeof(InsuranceCompany)));
                var      q  = from company in session.Index <InsuranceCompany>("name", db) where company.Name == "AAA" select company;
                foreach (InsuranceCompany company in q)
                {
                    Console.WriteLine(company.ToStringDetails(session)); // only one will match
                }
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginUpdate();
                InsuranceCompany prior = insuranceCompany;
                try
                {
                    for (int i = 0; i < 100000; i++)
                    {
                        insuranceCompany = new InsuranceCompany("AAA", "858787878");
                        session.Persist(insuranceCompany);
                    }
                    Assert.IsTrue(false); // should not get here
                }
                catch (UniqueConstraintException)
                {
                }
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginRead();
                Database db = session.OpenDatabase(session.DatabaseNumberOf(typeof(InsuranceCompany)));
                var      q  = from company in session.Index <InsuranceCompany>("name", db) where company.Name == "AAA" select company;
                foreach (InsuranceCompany company in q)
                {
                    Console.WriteLine(company.ToStringDetails(session)); // only one will match
                }
                bool exists = (from anEntry in session.Index <InsuranceCompany>("name", db) where anEntry.Name == "AAA" select 0).Any();
                Assert.IsTrue(exists);
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginUpdate();
                try
                {
                    for (int i = 0; i < 100000; i++)
                    {
                        insuranceCompany = new InsuranceCompanySpecial("AAA", "858787878");
                        session.Persist(insuranceCompany);
                    }
                    Assert.IsTrue(false); // should not get here
                }
                catch (UniqueConstraintException)
                {
                }
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginUpdate();
                try
                {
                    for (int i = 0; i < 100000; i++)
                    {
                        insuranceCompany = new InsuranceCompanySpecial2("AAA", "858787878");
                        session.Persist(insuranceCompany);
                    }
                    Assert.IsTrue(false); // should not get here
                }
                catch (UniqueConstraintException)
                {
                }
                session.Commit();
            }

            using (SessionBase session = useServerSession ? (SessionBase) new ServerClientSession(systemDir) : (SessionBase) new SessionNoServer(systemDir))
            {
                session.BeginRead();
                session.TraceIndexUsage = true;
                Database db = session.OpenDatabase(session.DatabaseNumberOf(typeof(InsuranceCompanySpecial)));
                var      q  = from company in session.Index <InsuranceCompany>("name", db) where company.Name == "AAA" select company;
                foreach (InsuranceCompany company in q)
                {
                    Console.WriteLine(company.ToStringDetails(session)); // only one will match
                }
                bool exists = (from anEntry in session.Index <InsuranceCompanySpecial>("name", db) where anEntry.Name == "AAA" select 0).Any();
                Assert.IsTrue(exists);
                exists = (from anEntry in session.Index <InsuranceCompanySpecial>("name", db) where String.Equals(anEntry.Name, "AAA", StringComparison.OrdinalIgnoreCase) select anEntry).Any();
                Assert.IsTrue(exists);
                exists = (from anEntry in session.Index <InsuranceCompanySpecial>("name", db) where String.Equals(anEntry.Name, "AAA", StringComparison.OrdinalIgnoreCase) == true select anEntry).Any();
                Assert.IsTrue(exists);
                session.Commit();
            }
        }
 private static int GenerateSku(Motorcycle motorcycle)
 {
     return GenerateID(manufacturers.IndexOf(motorcycle.Manufacturer), modelType.IndexOf(motorcycle.Name), motorcycle.Year);
 }
Example #30
0
        private void SparaTillDisk()
        {
            var document   = new XDocument();
            var allagarage = new XElement("Garages");

            foreach (var gar in garages)
            {
                var garra = new XElement("Garage");
                garra.Add(new XAttribute("Name", gar.Name));
                garra.Add(new XAttribute("Capacity", gar.Max));
                foreach (var vehicle in gar)
                {
                    var reg     = new XElement("REG_NR", vehicle.REG_NR);
                    var col     = new XElement("Color", vehicle.Color);
                    var nowhels = new XElement("NumberofWheels", vehicle.NumberofWheels);
                    var conyear = new XElement("ConstructionYear", vehicle.ConstructionYear);
                    if (vehicle is LandVehicle)
                    {
                        LandVehicle landvehicle = vehicle as LandVehicle;
                        var         mil         = new XElement("Mileage", landvehicle.Mileage);
                        var         lic         = new XElement("LicenseRequirement", landvehicle.LicenseRequirement);
                        if (vehicle is Buss)
                        {
                            Buss buss    = vehicle as Buss;
                            var  noseats = new XElement("NumberofSeats", buss.NumberofSeats);
                            var  line    = new XElement("Line", buss.Line);
                            garra.Add(new XElement(vehicle.Type, reg, col, nowhels, conyear, mil, lic, noseats, line));
                        }
                        else if (vehicle is Car)
                        {
                            Car car    = vehicle as Car;
                            var bagvol = new XElement("BaggageVolume", car.BaggageVolume);
                            var fuel   = new XElement("FuelType", car.FuelType);
                            garra.Add(new XElement(vehicle.Type, reg, col, nowhels, conyear, mil, lic, bagvol, fuel));
                        }
                        else if (vehicle is Motorcycle)
                        {
                            Motorcycle motorcycle = vehicle as Motorcycle;
                            var        brand      = new XElement("Brand", motorcycle.Brand);
                            var        cat        = new XElement("Category", motorcycle.Category);
                            garra.Add(new XElement(vehicle.Type, reg, col, nowhels, conyear, mil, lic, brand, cat));
                        }
                    }
                    else if (vehicle is Boat)
                    {
                        Boat boat = vehicle as Boat;
                        var  buoy = new XElement("Buoyancy", boat.Buoyancy);
                        var  len  = new XElement("Length", boat.Length);
                        garra.Add(new XElement(vehicle.Type, reg, col, nowhels, conyear, buoy, len));
                    }
                    else if (vehicle is Airplane)
                    {
                        Airplane airplane = vehicle as Airplane;
                        var      max      = new XElement("MaxAltitude", airplane.MaxAltitude);
                        var      line     = new XElement("AirLine", airplane.AirLine);
                        garra.Add(new XElement(vehicle.Type, reg, col, nowhels, conyear, max, line));
                    }
                }
                allagarage.Add(garra);
            }
            document.Add(allagarage);
            document.Save("vehicles.xml");
        }
Example #31
0
 public static bool checkMotorcycle(Motorcycle motorcycle)
 {
     return(motorcycle.Capacity != 0);
 }
Example #32
0
 public ActionResult DeleteMotorcycle(Motorcycle moto)
 {
     repoBike.Delete(moto);
     return(RedirectToAction("Motorcycles"));
 }
Example #33
0
        public void MotorcycleHasCorrectCost()
        {
            Motorcycle motorcycle = new Motorcycle();

            Assert.Equal(24000, motorcycle.Cost);
        }
Example #34
0
        static void Main(string[] args)
        {
            Car rangRover = new Car()
            {
                _model          = "Sport",
                _numberOfDoors  = 4,
                _numberOfWheels = 4
            };

            Car audi = new Car()
            {
                _model          = "R8 V10 plus",
                _numberOfDoors  = 2,
                _numberOfWheels = 4
            };

            Motorcycle triumph = new Motorcycle()
            {
                _model               = "Rocket 3 GT",
                _numberOfWheels      = 2,
                _numberofHandBreakes = 2
            };

            Motorcycle kawasaki = new Motorcycle()
            {
                _model               = "NINJA H2R",
                _numberOfWheels      = 2,
                _numberofHandBreakes = 2
            };

            Console.WriteLine("=========Vehicle Model==========");
            PrintVehicle(audi);
            PrintVehicle(kawasaki);

            Vehicle[] myVehicles = new Vehicle[3]
            {
                new Motorcycle()
                {
                    _model               = "NINJA 1000SX",
                    _numberOfWheels      = 2,
                    _numberofHandBreakes = 1
                },

                new Car()
                {
                    _model          = "Mclaren 600LT",
                    _numberOfDoors  = 2,
                    _numberOfWheels = 4
                },

                new Car()
                {
                    _model          = "Sián FKP 37",
                    _numberOfDoors  = 2,
                    _numberOfWheels = 4
                }
            };

            Console.WriteLine("=========Vehicle Array==========");
            PrintVehicleArray(myVehicles);
            Console.WriteLine("=========Print Model Vehicle Array==========");
            PrintVehicle(myVehicles[2]);


            Carrier carrier = new Carrier()
            {
                _vehicle = new Vehicle[]
                {
                    new Car
                    {
                        _model          = "TT",
                        _numberOfDoors  = 2,
                        _numberOfWheels = 4
                    },

                    new Motorcycle
                    {
                        _model               = "Honda CRF",
                        _numberOfWheels      = 2,
                        _numberofHandBreakes = 1
                    }
                }
            };

            Console.WriteLine("========Carrier=========");
            Console.WriteLine(carrier);
        }
        private void Change_vehicle_info(object sender, RoutedEventArgs e)
        {
            var lisence = IUserDataAccess.Read <string, string>(Enum.GetName(typeof(IUserDataAccess.File_Type), 9));

            var dict = IUserDataAccess.GetVehicleInfo(tb_sc_vehicle_rg.Text, vehicle_typ);

            AProperties currentVehicleinfo = (AProperties)dict;

            string msg    = $"Vill du ändra {vehicle_typ} info ?";
            string result = MessageBox.Show(msg, "Bekräftelse", MessageBoxButton.YesNo, MessageBoxImage.Question).ToString();


            bool odometer_bool  = Int32.TryParse(tb_sc_vehicle_odometer.Text, out int odometer);
            bool passanger_bool = Int32.TryParse(tb_sc_passanger.Text, out int passanger);
            bool weight_bool    = Int32.TryParse(tb_sc_weight.Text, out int weight);



            if (result.Equals("Yes") && odometer_bool && odometer >= currentVehicleinfo.Odometer)
            {
                currentVehicleinfo.Fuel_Type = cb_sc_fuel.Text;
                currentVehicleinfo.Odometer  = odometer;


                if (vehicle_typ == Enum.GetName(typeof(IUserDataAccess.File_Type), 4))
                {
                    Motorcycle castedMc = (Motorcycle)currentVehicleinfo;

                    Dictionary <string, Motorcycle> mc = IUserDataAccess.Read <string, Motorcycle>(Enum.GetName(typeof(IUserDataAccess.File_Type), 4));

                    mc.Remove(tb_sc_vehicle_rg.Text);
                    lisence.Remove(tb_sc_vehicle_rg.Text);


                    mc.Add(castedMc.Registration_Nr, castedMc);
                    lisence.Add(castedMc.Registration_Nr, castedMc.Vehicle_Type);
                    IUserDataAccess.Write(mc, vehicle_typ);
                }
                else if (vehicle_typ == Enum.GetName(typeof(IUserDataAccess.File_Type), 5))
                {
                    Dictionary <string, Car> car = IUserDataAccess.Read <string, Car>(Enum.GetName(typeof(IUserDataAccess.File_Type), 5));
                    car.Remove(tb_sc_vehicle_rg.Text);
                    lisence.Remove(tb_sc_vehicle_rg.Text);


                    Car castedCar = (Car)currentVehicleinfo;
                    castedCar.Dragkrok    = cb_sc_car_hook.Text.Equals("Ja");
                    castedCar.Type_Of_Car = cb_sc_car_option.Text;


                    car.Add(castedCar.Registration_Nr, castedCar);
                    lisence.Add(castedCar.Registration_Nr, castedCar.Vehicle_Type);
                    IUserDataAccess.Write(car, vehicle_typ);
                }
                else if (vehicle_typ == Enum.GetName(typeof(IUserDataAccess.File_Type), 6))
                {
                    if (weight_bool)
                    {
                        Dictionary <string, Truck> truck = IUserDataAccess.Read <string, Truck>(Enum.GetName(typeof(IUserDataAccess.File_Type), 6));
                        truck.Remove(tb_sc_vehicle_rg.Text);
                        lisence.Remove(tb_sc_vehicle_rg.Text);


                        Truck castedTruck = (Truck)currentVehicleinfo;
                        castedTruck.Max_Load = weight;

                        truck.Add(castedTruck.Registration_Nr, castedTruck);
                        lisence.Add(castedTruck.Registration_Nr, castedTruck.Vehicle_Type);
                        IUserDataAccess.Write(truck, vehicle_typ);
                    }
                    else
                    {
                        Error_msg.Content = Wrong_msg;
                        return;
                    }
                }
                else if (vehicle_typ == Enum.GetName(typeof(IUserDataAccess.File_Type), 7))
                {
                    if (passanger_bool)
                    {
                        Dictionary <string, Bus> bus = IUserDataAccess.Read <string, Bus>(Enum.GetName(typeof(IUserDataAccess.File_Type), 7));
                        bus.Remove(tb_sc_vehicle_rg.Text);
                        lisence.Remove(tb_sc_vehicle_rg.Text);


                        Bus castedBus = (Bus)currentVehicleinfo;
                        castedBus.Max_Passengers = passanger;

                        bus.Add(castedBus.Registration_Nr, castedBus);
                        lisence.Add(castedBus.Registration_Nr, castedBus.Vehicle_Type);
                        IUserDataAccess.Write(bus, vehicle_typ);
                    }
                    else
                    {
                        Error_msg.Content = Wrong_msg;
                        return;
                    }
                }
                NavigationService.Navigate(new Add_vehicle());
            }
            else if (result.Equals("No"))
            {
                return;
            }
            else
            {
                Error_msg.Content = Wrong_msg;
            }
        }
Example #36
0
        public void Get_WhenInstanceIsExplicitSetAndResolvedSeveralTimes_ReturnsSameInstance()
        {
            // Arrange
            var mc = new Motorcycle();
            var c = new Container();
            c.For<IVehicle>().Use(mc);

            // Act
            var vehicle1 = c.Get<IVehicle>();
            var vehicle2 = c.Get<IVehicle>();

            // Assert
            Assert.IsNotNull(vehicle1);
            Assert.IsNotNull(vehicle2);
            Assert.AreSame(vehicle1, vehicle2);
        }
Example #37
0
        public void MotorcycleHas2Wheels()
        {
            Motorcycle motorcycle = new Motorcycle();

            Assert.Equal(2, motorcycle.NumberOfWheels);
        }