Exemple #1
0
 public ExifCopy(IStorage iStorage, IStorage thumbnailStorage, IExifTool exifTool, IReadMeta readMeta)
 {
     _iStorage         = iStorage;
     _exifTool         = exifTool;
     _readMeta         = readMeta;
     _thumbnailStorage = thumbnailStorage;
 }
Exemple #2
0
 /// <summary>
 /// Run ExifTool
 /// </summary>
 /// <param name="exifTool">ExifTool Abstraction</param>
 /// <param name="iStorage">Source storage provider</param>
 /// <param name="thumbnailStorage">Thumbnail Storage Abstraction provider</param>
 /// <param name="readMeta">ReadMeta abstraction</param>
 public ExifToolCmdHelper(IExifTool exifTool, IStorage iStorage, IStorage thumbnailStorage, IReadMeta readMeta)
 {
     _exifTool         = exifTool;
     _iStorage         = iStorage;
     _readMeta         = readMeta;
     _thumbnailStorage = thumbnailStorage;
 }
Exemple #3
0
        public Import(
            ISelectorStorage selectorStorage,
            AppSettings appSettings,
            IImportQuery importQuery,
            IExifTool exifTool,
            IQuery query,
            IConsole console,
            IMetaExifThumbnailService metaExifThumbnailService,
            IWebLogger logger,
            IMemoryCache?memoryCache = null)
        {
            _importQuery = importQuery;

            _filesystemStorage = selectorStorage.Get(SelectorStorage.StorageServices.HostFilesystem);
            _subPathStorage    = selectorStorage.Get(SelectorStorage.StorageServices.SubPath);
            _thumbnailStorage  = selectorStorage.Get(SelectorStorage.StorageServices.Thumbnail);

            _appSettings                 = appSettings;
            _readMetaHost                = new ReadMeta(_filesystemStorage, appSettings);
            _exifTool                    = exifTool;
            _query                       = query;
            _console                     = console;
            _metaExifThumbnailService    = metaExifThumbnailService;
            _memoryCache                 = memoryCache;
            _logger                      = logger;
            _updateImportTransformations = new UpdateImportTransformations(logger, _exifTool, selectorStorage, appSettings);
        }
        public MetaUpdateControllerTest()
        {
            var provider = new ServiceCollection()
                           .AddMemoryCache()
                           .BuildServiceProvider();
            var memoryCache = provider.GetService <IMemoryCache>();

            var builderDb = new DbContextOptionsBuilder <ApplicationDbContext>();

            builderDb.UseInMemoryDatabase("test1234");
            var options = builderDb.Options;
            var context = new ApplicationDbContext(options);

            _query = new Query(context, new AppSettings(), null, new FakeIWebLogger(), memoryCache);

            // Inject Fake ExifTool; dependency injection
            var services = new ServiceCollection();

            // Fake the readMeta output
            services.AddSingleton <IReadMeta, FakeReadMeta>();

            // Inject Config helper
            services.AddSingleton <IConfiguration>(new ConfigurationBuilder().Build());
            // random config
            _createAnImage = new CreateAnImage();
            var dict = new Dictionary <string, string>
            {
                { "App:StorageFolder", _createAnImage.BasePath },
                { "App:ThumbnailTempFolder", _createAnImage.BasePath },
                { "App:Verbose", "true" }
            };
            // Start using dependency injection
            var builder = new ConfigurationBuilder();

            // Add random config to dependency injection
            builder.AddInMemoryCollection(dict);
            // build config
            var configuration = builder.Build();

            // inject config as object to a service
            services.ConfigurePoCo <AppSettings>(configuration.GetSection("App"));

            // Add Background services
            services.AddSingleton <IHostedService, UpdateBackgroundQueuedHostedService>();
            services.AddSingleton <IUpdateBackgroundTaskQueue, UpdateBackgroundTaskQueue>();

            // build the service
            var serviceProvider = services.BuildServiceProvider();

            // get the service
            _appSettings = serviceProvider.GetRequiredService <AppSettings>();

            // inject fake exifTool
            _exifTool = new FakeExifTool(_iStorage, _appSettings);

            // get the background helper
            _bgTaskQueue = serviceProvider.GetRequiredService <IUpdateBackgroundTaskQueue>();

            _iStorage = new StorageSubPathFilesystem(_appSettings, new FakeIWebLogger());
        }
Exemple #5
0
        public ExifToolService(ISelectorStorage selectorStorage, AppSettings appSettings, IWebLogger logger)
        {
            var iStorage         = selectorStorage.Get(SelectorStorage.StorageServices.SubPath);
            var thumbnailStorage = selectorStorage.Get(SelectorStorage.StorageServices.Thumbnail);

            _exifTool = new ExifTool(iStorage, thumbnailStorage, appSettings, logger);
        }
Exemple #6
0
        public ExifToolHostStorageService(ISelectorStorage selectorStorage, AppSettings appSettings, IWebLogger webLogger)
        {
            var iStorage         = selectorStorage.Get(SelectorStorage.StorageServices.HostFilesystem);
            var thumbnailStorage = selectorStorage.Get(SelectorStorage.StorageServices.Thumbnail);

            _exifTool  = new ExifTool(iStorage, thumbnailStorage, appSettings, _webLogger);
            _webLogger = webLogger;
        }
Exemple #7
0
 public GeoLocationWrite(AppSettings appSettings, IExifTool exifTool, ISelectorStorage selectorStorage, IConsole console)
 {
     _exifTool         = exifTool;
     _appSettings      = appSettings;
     _thumbnailStorage = selectorStorage.Get(SelectorStorage.StorageServices.Thumbnail);
     _iStorage         = selectorStorage.Get(SelectorStorage.StorageServices.SubPath);
     _console          = console;
 }
 public UpdateImportTransformations(IWebLogger logger,
                                    IExifTool exifTool, ISelectorStorage selectorStorage, AppSettings appSettings)
 {
     _logger           = logger;
     _exifTool         = exifTool;
     _subPathStorage   = selectorStorage.Get(SelectorStorage.StorageServices.SubPath);
     _thumbnailStorage = selectorStorage.Get(SelectorStorage.StorageServices.Thumbnail);
     _appSettings      = appSettings;
 }
Exemple #9
0
 public Worker(
     IOptionsMonitor <MedioOptions> optionsMonitor,
     IExifTool exifTool,
     ILogger <Worker> logger)
 {
     _logger   = logger;
     _options  = optionsMonitor.CurrentValue;
     _exifTool = exifTool;
 }
Exemple #10
0
 public MetaUpdateService(
     IQuery query,
     IExifTool exifTool,
     ISelectorStorage selectorStorage,
     IMetaPreflight metaPreflight,
     IWebLogger logger,
     IReadMetaSubPathStorage readMetaSubPathStorage)
 {
     _query            = query;
     _exifTool         = exifTool;
     _iStorage         = selectorStorage.Get(SelectorStorage.StorageServices.SubPath);
     _thumbnailStorage = selectorStorage.Get(SelectorStorage.StorageServices.Thumbnail);
     _readMeta         = readMetaSubPathStorage;
     _metaPreflight    = metaPreflight;
     _logger           = logger;
 }
Exemple #11
0
 public WebHtmlPublishService(IPublishPreflight publishPreflight, ISelectorStorage
                              selectorStorage, AppSettings appSettings, IExifToolHostStorage exifTool,
                              IOverlayImage overlayImage, IConsole console, IWebLogger logger)
 {
     _publishPreflight      = publishPreflight;
     _subPathStorage        = selectorStorage.Get(SelectorStorage.StorageServices.SubPath);
     _thumbnailStorage      = selectorStorage.Get(SelectorStorage.StorageServices.Thumbnail);
     _hostFileSystemStorage = selectorStorage.Get(SelectorStorage.StorageServices.HostFilesystem);
     _appSettings           = appSettings;
     _exifTool             = exifTool;
     _console              = console;
     _overlayImage         = overlayImage;
     _publishManifest      = new PublishManifest(_hostFileSystemStorage, new PlainTextFileHelper());
     _toCreateSubfolder    = new ToCreateSubfolder(_hostFileSystemStorage);
     _copyPublishedContent = new CopyPublishedContent(_appSettings, _toCreateSubfolder,
                                                      selectorStorage);
     _logger           = logger;
     _thumbnailService = new Thumbnail(_subPathStorage, _thumbnailStorage, _logger);
 }
Exemple #12
0
 public GeoLocationWriteTest()
 {
     // get the service
     _appSettings = new AppSettings();
     _exifTool    = new FakeExifTool(new FakeIStorage(), _appSettings);
 }