Esempio n. 1
0
 public async Task UpdateData(OsmDataServiceOperations operations)
 {
     try
     {
         if (operations == OsmDataServiceOperations.None)
         {
             _logger.Warn("No operations are requested, doing nothing...");
             return;
         }
         _logger.Info("Updating OSM data");
         var osmFilePath = Path.Combine(_serverPath, PBF_FILE_NAME);
         if ((operations & OsmDataServiceOperations.GetOsmFile) != 0)
         {
             await FetchOsmFile(osmFilePath);
         }
         if (_fileSystemHelper.Exists(osmFilePath) == false)
         {
             _logger.Error(osmFilePath + " File is missing. Fatal error - exiting.");
             return;
         }
         if ((operations & OsmDataServiceOperations.UpdateElasticSearch) != 0)
         {
             await UpdateElasticSearchFromFile(osmFilePath);
         }
         if ((operations & OsmDataServiceOperations.UpdateGraphHopper) != 0)
         {
             await _graphHopperHelper.UpdateData(osmFilePath);
         }
         _logger.Info("Finished Updating OSM data");
     }
     catch (Exception ex)
     {
         _logger.Error(ex.ToString());
     }
 }
Esempio n. 2
0
 private static async Task Run(OsmDataServiceOperations operations)
 {
     var logger = new ConsoleLogger();
     try
     {
         var container = new UnityContainer();
         UnityRegisterDataAccess.RegisterUnityTypes(container, logger);
         UnityRegisterApi.RegisterUnityTypes(container);
         var osmDataService = container.Resolve<IOsmDataService>();
         var fileSystemHelper = container.Resolve<IFileSystemHelper>();
         var directory = fileSystemHelper.GetCurrentDirectory();
         await osmDataService.Initialize(directory);
         await osmDataService.UpdateData(operations);
     }
     catch (Exception ex)
     {
         logger.Error("Failed updating OSM data with exception: " + ex);
     }
 }