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. }
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; }
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. }