protected TDriver createDevice(string devName) { TDriver result = null; lock (driverSync) { if (Drivers.ContainsKey(devName)) { result = Drivers[devName]; } else { result = DriverLoader.GetImplementation <TDriver>(devName); if (result == null) { throw new DriverException($"Unable to create a driver instance for {devName} (DeviceType={DriverType})"); } Drivers.Add(devName, result); } } return(result); }
public void AddDriver(Driver driver) { if (driver is null) { throw new ArgumentNullException(nameof(driver)); } else if (Bus is LuxuryBus && driver.LicenseType != LicenseType.HighLicense || Bus is StandardBus && driver.LicenseType == LicenseType.None) { throw new InvalidOperationException("Driver License Type is not suitable"); } else { decimal maxdriver = Math.Ceiling((decimal)Route.Distance / _perkmfordriver); if (Drivers.Count < maxdriver) { Drivers.Add(driver); } } }
public string RegisterDriver(string driverName, Func <IWebDriver> driver) { try { string newName = driverName; if (Drivers.ContainsKey(driverName)) { var i = 1; while (Drivers.ContainsKey(newName = driverName + i++)) { ; } } Drivers.Add(newName, driver); CurrentDriverName = newName; } catch { throw new Exception($"Can't register WebDriver {driverName}. Driver with the same name already registered"); } return(driverName); }
public bool CreateOrUpdateDriver(YandexDriverModel driver) { try { var res = Drivers.Find(driver.Driver.InternalId); if (res == null) { _logger.Info($"New driver {driver}"); Drivers.Add(Driver.CreateFromYandexDriver(driver)); } else { if (!res.HasChanges(driver)) { return(true); } _logger.Debug($"Update driver data: {driver}"); res.UpdateFromYandexDriver(driver); } SaveChanges(); if (res == null) { Notifications.Add(new Notification { InternalId = driver.Driver.InternalId, Message = $"Найден новый водитель [{driver}]!", Type = "NewDriver", DateCreated = DateTime.Now }); SaveChanges(); } return(true); } catch { return(false); } }
public bool AddDriverToRace(Driver driver) { Console.Clear(); var response = false; if (driver.Car != null) { var driverNamesLower = Drivers.Select(s => s.Name.ToLower()).ToList(); if (!driverNamesLower.Contains(driver.Name.ToLower())) { try { Drivers.Add(driver); ResetLeaderBoard(); response = true; } catch (Exception) { } } PrintDrivers(); } return(response); }
public void InitialDbData() { if (!Cars.Any()) { List <Vehicle> cars = new List <Vehicle>() { new Car() { CarId = Guid.Parse("7295a624-dea8-479c-b920-a3254f92af77"), CurrentDistance = 20.3, RegistrationNumber = "KRA2436", Status = Status.wolny, TotalDistance = 15034.5, XPosition = 2.4, YPosition = 5.2 }, new Car() { CarId = Guid.Parse("6291ffd4-cb73-4c37-aa9a-1591247f554d"), CurrentDistance = 13.7, RegistrationNumber = "KOL0201", Status = Status.wypożyczony, TotalDistance = 20134.5, XPosition = 1.4, YPosition = -2.2 }, new Car() { CarId = Guid.Parse("7fb934b4-dae2-4659-a9ee-d5af7af36f40"), CurrentDistance = 20.3, RegistrationNumber = "KRA2436", Status = Status.wolny, TotalDistance = 15034.5, XPosition = 2.4, YPosition = 5.2 } }; foreach (Car item in cars) { Cars.Add(item); var carReadModel = new CarViewModel() { CarId = item.CarId, CurrentDistance = item.CurrentDistance, RegistrationNumber = item.RegistrationNumber, Status = item.Status, TotalDistance = item.TotalDistance, XPosition = item.XPosition, YPosition = item.YPosition }; CarViewModels.Add(carReadModel); } } if (!Drivers.Any()) { Driver driver = new Driver("42222/12/01118", "Jan", "Kowalski"); driver.DriverId = Guid.Parse("0871afd6-dae6-45f2-b9cf-8f91f184d6af"); Drivers.Add(driver); DriverViewModel driverViewModel = new DriverViewModel() { DriverId = driver.DriverId, FirstName = driver.FirstName, LastName = driver.LastName, LicenceNumber = driver.LicenceNumber }; DriverViewModels.Add(driverViewModel); } if (!Rentals.Any()) { Rental rental = new Rental() { RentalId = Guid.Parse("1c3444e1-e09c-48a1-9cf2-db713731b5b1"), CarId = Guid.Parse("6291ffd4-cb73-4c37-aa9a-1591247f554d"), Started = DateTime.ParseExact("21/05/2020 07:25:47", "dd/MM/yyyy hh:mm:ss", CultureInfo.InvariantCulture), DriverId = Guid.Parse("0871afd6-dae6-45f2-b9cf-8f91f184d6af") }; Rentals.Add(rental); if (Cars.Any()) { var carToUpdate = Cars.FirstOrDefault(x => x.CarId == rental.CarId); carToUpdate.ChangeStatus(); } RentalReadModel rentalReadModel = new RentalReadModel() { RentalId = rental.RentalId, RegistrationNumber = "KOL0201", CarId = rental.CarId, DriverId = rental.DriverId, Driver = "Jan Kowalski", Created = rental.Started, StartXPosition = 1.4, StartYPosition = -2.2 }; RentalReadModels.Add(rentalReadModel); } this.SaveChanges(); }
private async Task <bool> tryDownloadTrucksFromCloud() { bool trucksDownloaded = false; using (var dp = SimpleIoc.Default.GetInstance <IUnitOfWorkFactory>().CreateUnitOfWork()) { try { Logging.Logger.Log("INFO", "Fetch local trucks."); var localTrucks = dp.TruckRepository.GetAll(); Logging.Logger.Log("INFO", "Fetch local Drivers."); var localDrivers = dp.DriverRepository.GetAll(); Logging.Logger.Log("INFO", "Fetch current truck."); var currentTruck = dp.SettingsRepository.GetCurrentTruck(); Logging.Logger.Log("INFO", "Fetch current driver."); var currentDriver = dp.SettingsRepository.GetCurrentDriver(); if (currentDriver == null || currentTruck == null) //if no truck or driver set try to pull down from cloud and set a truck/driver { Logging.Logger.Log("INFO", "Initialize document db context."); CottonDBMS.Cloud.DocumentDBContext.Initialize(endpoint, key); Logging.Logger.Log("INFO", "Download trucks from cloud."); var trucks = await DocumentDBContext.GetAllItemsAsync <TruckEntity>(p => p.EntityType == EntityType.TRUCK); Logging.Logger.Log("INFO", "Download drivers from cloud."); var drivers = await DocumentDBContext.GetAllItemsAsync <DriverEntity>(p => p.EntityType == EntityType.DRIVER); if (localTrucks.Count() == 0) { Logging.Logger.Log("INFO", "Adding local trucks."); Trucks.Add(new ComboBoxItemViewModel { DisplayText = "-- Choose Truck --", ID = "" }); foreach (var t in trucks) { Logging.Logger.Log("INFO", "Adding truck " + t.Name); dp.TruckRepository.Add(t); Trucks.Add(new ComboBoxItemViewModel { DisplayText = t.Name, ID = t.Id.ToString() }); } } if (localDrivers.Count() == 0) { Drivers.Add(new ComboBoxItemViewModel { DisplayText = "-- Choose Driver --", ID = "" }); foreach (var d in drivers) { Logging.Logger.Log("INFO", "Adding driver " + d.Name); Drivers.Add(new ComboBoxItemViewModel { DisplayText = d.Name, ID = d.Id.ToString() }); dp.DriverRepository.Add(d); } } Logging.Logger.Log("INFO", "Saving db changes"); dp.SaveChanges(); Logging.Logger.Log("INFO", "Db changes saved"); trucksDownloaded = true; } else { Logging.Logger.Log("INFO", "Driver and truck already set."); } } catch (Exception exc) { Logging.Logger.Log(exc); } return(trucksDownloaded); } }
internal void AddDriver(DriverInfo driverInfo) { Drivers.Add(driverInfo); }
public void PositionCars() { Drivers.Add(new FarmerJoe(new Tractor())); Drivers.Add(new Antonio(new FordGt())); Drivers.Add(new SoccerMom(new Minivan())); }
public void AddDriver(ISplintDriver driver) { Drivers.Add(driver); }
public void AddDriver(Driver driver) { Drivers.Add(driver); }
public void AddDriver(string name) { Drivers.Add(name); }