示例#1
0
 public Session(ISettings settings, ILogicSettings logicSettings, IElevationService elevationService) : this(settings, logicSettings, elevationService, Common.Translation.Load(logicSettings))
 {
 }
示例#2
0
        public string GetServiceId()
        {
            IElevationService service = GetService();

            return(service.GetServiceId());
        }
示例#3
0
 public ElevationSamples(ILogger <ElevationSamples> logger
                         , IElevationService elevationService)
 {
     _logger           = logger;
     _elevationService = elevationService;
 }
示例#4
0
 public DatasetTests(DemNetFixture fixture)
 {
     _rasterService        = fixture.ServiceProvider.GetService <IRasterService>();
     _elevationService     = fixture.ServiceProvider.GetService <IElevationService>();
     _indexServiceResolver = fixture.ServiceProvider.GetService <RasterIndexServiceResolver>();
 }
示例#5
0
 public Session(GlobalSettings globalSettings, ISettings settings, ILogicSettings logicSettings, IElevationService elevationService) : this(
         globalSettings, settings, logicSettings, elevationService, Common.Translation.Load(logicSettings))
 {
     LoggedTime = DateTime.Now;
 }
示例#6
0
 public ClientSettings(GlobalSettings settings, IElevationService elevationService)
 {
     _settings         = settings;
     _elevationService = elevationService;
 }
示例#7
0
 public DatasetTests(DemNetFixture fixture)
 {
     _rasterService    = fixture.ServiceProvider.GetService <IRasterService>();
     _elevationService = fixture.ServiceProvider.GetService <IElevationService>();
     _gdalService      = fixture.ServiceProvider.GetService <IGDALVRTFileService>();
 }
示例#8
0
 public ProfileCommandHandler(IDomainRepository domainRepository, IDateTimeProvider dateTimeProvider, IUserService userService, IPlaceFinder placeFinder, IElevationService elevationService)
 {
     _domainRepository = domainRepository;
     _dateTimeProvider = dateTimeProvider;
     _userService      = userService;
     _placeFinder      = placeFinder;
     _elevationService = elevationService;
 }
 public IntervisibilitySample(ILogger <IntervisibilitySample> logger
                              , IElevationService elevationService)
 {
     _logger           = logger;
     _elevationService = elevationService;
 }
示例#10
0
 public HeightMapTests(DemNetFixture fixture)
 {
     _elevationService = fixture.ServiceProvider.GetService <IElevationService>();
 }
示例#11
0
 public DatasetTests(DemNetFixture fixture)
 {
     _rasterService    = fixture.ServiceProvider.GetService <IRasterService>();
     _elevationService = fixture.ServiceProvider.GetService <IElevationService>();
     _gdalService      = fixture.ServiceProvider.GetService <IDEMDataSetIndex>();
 }
示例#12
0
        public static async Task <ElevationLocation> FindOrUpdateInDatabase(double latitude, double longitude, IElevationService service)
        {
            using (await DB_LOCK.LockAsync().ConfigureAwait(false))
            {
                if (!Directory.Exists(CACHE_DIR))
                {
                    Directory.CreateDirectory(CACHE_DIR);
                }

                using (var db = new LiteDatabase(DB_NAME))
                {
                    db.GetCollection <ElevationLocation>("locations").EnsureIndex(s => s.Id);

                    var locationsCollection = db.GetCollection <ElevationLocation>("locations");
                    var id = GetIdTokenFromLatLng(latitude, longitude);
                    var elevationLocation = locationsCollection.FindOne(x => x.Id == id);

                    if (elevationLocation != null)
                    {
                        return(elevationLocation);
                    }

                    for (var i = 0; i < MAX_RETRIES; i++)
                    {
                        try
                        {
                            var altitude = await service.GetElevation(latitude, longitude).ConfigureAwait(false);

                            if (altitude == 0 || altitude < -100)
                            {
                                // Invalid altitude
                                return(null);
                            }

                            elevationLocation          = new ElevationLocation(latitude, longitude);
                            elevationLocation.Altitude = altitude;
                            locationsCollection.Insert(elevationLocation);

                            return(elevationLocation);
                        }
                        catch (Exception)
                        {
                            // Just ignore exception and retry after delay
                            await Task.Delay(i * 100).ConfigureAwait(false);
                        }
                    }

                    return(null);
                }
            }
        }
示例#13
0
 public ElevationTests(DemNetFixture fixture)
 {
     _rasterService    = fixture.ServiceProvider.GetService <IRasterService>();
     _elevationService = fixture.ServiceProvider.GetService <IElevationService>();
 }
示例#14
0
        public static Session SetupSettings(Session session, GlobalSettings settings, IElevationService elevationService, string configPath)
        {
            var newSession = SetupTranslationCode(session, elevationService, session.Translation, settings);

            SetupAccountType(newSession.Translation, settings);
            SetupUserAccount(newSession.Translation, settings);
            SetupConfig(newSession.Translation, settings);
            SetupWalkingConfig(newSession.Translation, settings);
            SetupTelegramConfig(newSession.Translation, settings);
            SetupProxyConfig(newSession.Translation, settings);
            SetupAutoCompleteTutConfig(newSession.Translation, settings);
            SetupWebSocketConfig(newSession.Translation, settings);
            SaveFiles(settings, configPath);

            Logger.Write(session.Translation.GetTranslation(TranslationString.FirstStartSetupCompleted), LogLevel.None);

            return(newSession);
        }