コード例 #1
0
        public LibraryScanningQueue(MediaDatabase dbOptions, IDistinctQueueProcessor <IConversionItem> converter, IEnumerable <IConversionPlugin> conversionPlugins, ILogger <LibraryScanningQueue> logger)
        {
            this.dbOptions         = dbOptions;
            this.converter         = converter;
            this.conversionPlugins = conversionPlugins;
            log = logger;

            Parallelization = 1; // Process linearly.
        }
コード例 #2
0
 public LibraryScanner(ILibrary library, IStorage storageBackend, IDistinctQueueProcessor <IConversionItem> converter, DbContextOptions <VolyContext> dbOptions, IEnumerable <IConversionPlugin> conversionPlugins, ILogger log) : base(ScanType.Library, library.Name)
 {
     this.library           = library;
     this.storageBackend    = storageBackend;
     this.converter         = converter;
     this.dbOptions         = dbOptions;
     this.conversionPlugins = conversionPlugins;
     this.log = log;
 }
コード例 #3
0
 public LibraryScanner(ILibrary library, IStorage storageBackend, IDistinctQueueProcessor <IConversionItem> converter, DbContextOptions <VolyContext> dbOptions, IEnumerable <IConversionPlugin> conversionPlugins, ILogger log, IEnumerable <string> scanTheseFilesOnly) : base(ScanType.FilteredLibrary, library.Name)
 {
     this.library           = library;
     this.storageBackend    = storageBackend;
     this.converter         = converter;
     this.dbOptions         = dbOptions;
     this.conversionPlugins = conversionPlugins;
     this.log = log;
     this.scanTheseFilesOnly = new HashSet <string>(scanTheseFilesOnly);
     Name = GenerateFilteredName(library.Name, this.scanTheseFilesOnly); // This is needed to allow multiple queued scans with different file filters.
 }