diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-01-28 16:25:10 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-01-28 16:25:10 -0500 |
| commit | 7c5b22246357ef6bcd6d74e61a8fe6a8a9d4df3e (patch) | |
| tree | d836be86d9829cf2df9e5d43112ab3e41bdd3889 /MediaBrowser.Providers | |
| parent | 2ae17a8d528f6a75cd8c91217be4860a13b03715 (diff) | |
Created ILibraryMonitor to replace IDirectoryWatchers
Diffstat (limited to 'MediaBrowser.Providers')
| -rw-r--r-- | MediaBrowser.Providers/Manager/ImageSaver.cs | 22 | ||||
| -rw-r--r-- | MediaBrowser.Providers/Manager/MetadataService.cs | 18 | ||||
| -rw-r--r-- | MediaBrowser.Providers/Manager/ProviderManager.cs | 16 |
3 files changed, 20 insertions, 36 deletions
diff --git a/MediaBrowser.Providers/Manager/ImageSaver.cs b/MediaBrowser.Providers/Manager/ImageSaver.cs index a75ce88aeb..56a1a9d4fe 100644 --- a/MediaBrowser.Providers/Manager/ImageSaver.cs +++ b/MediaBrowser.Providers/Manager/ImageSaver.cs @@ -3,7 +3,7 @@ using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Logging; @@ -36,7 +36,7 @@ namespace MediaBrowser.Providers.Manager /// <summary> /// The _directory watchers /// </summary> - private readonly IDirectoryWatchers _directoryWatchers; + private readonly ILibraryMonitor _libraryMonitor; private readonly IFileSystem _fileSystem; private readonly ILogger _logger; @@ -44,11 +44,11 @@ namespace MediaBrowser.Providers.Manager /// Initializes a new instance of the <see cref="ImageSaver"/> class. /// </summary> /// <param name="config">The config.</param> - /// <param name="directoryWatchers">The directory watchers.</param> - public ImageSaver(IServerConfigurationManager config, IDirectoryWatchers directoryWatchers, IFileSystem fileSystem, ILogger logger) + /// <param name="libraryMonitor">The directory watchers.</param> + public ImageSaver(IServerConfigurationManager config, ILibraryMonitor libraryMonitor, IFileSystem fileSystem, ILogger logger) { _config = config; - _directoryWatchers = directoryWatchers; + _libraryMonitor = libraryMonitor; _fileSystem = fileSystem; _logger = logger; _remoteImageCache = new FileSystemRepository(config.ApplicationPaths.DownloadedImagesDataPath); @@ -160,7 +160,7 @@ namespace MediaBrowser.Providers.Manager // Delete the current path if (!string.IsNullOrEmpty(currentPath) && !paths.Contains(currentPath, StringComparer.OrdinalIgnoreCase)) { - _directoryWatchers.TemporarilyIgnore(currentPath); + _libraryMonitor.ReportFileSystemChangeBeginning(currentPath); try { @@ -179,7 +179,7 @@ namespace MediaBrowser.Providers.Manager } finally { - _directoryWatchers.RemoveTempIgnore(currentPath); + _libraryMonitor.ReportFileSystemChangeComplete(currentPath, false); } } } @@ -197,8 +197,8 @@ namespace MediaBrowser.Providers.Manager var parentFolder = Path.GetDirectoryName(path); - _directoryWatchers.TemporarilyIgnore(path); - _directoryWatchers.TemporarilyIgnore(parentFolder); + _libraryMonitor.ReportFileSystemChangeBeginning(path); + _libraryMonitor.ReportFileSystemChangeBeginning(parentFolder); try { @@ -223,8 +223,8 @@ namespace MediaBrowser.Providers.Manager } finally { - _directoryWatchers.RemoveTempIgnore(path); - _directoryWatchers.RemoveTempIgnore(parentFolder); + _libraryMonitor.ReportFileSystemChangeComplete(path, false); + _libraryMonitor.ReportFileSystemChangeComplete(parentFolder, false); } } diff --git a/MediaBrowser.Providers/Manager/MetadataService.cs b/MediaBrowser.Providers/Manager/MetadataService.cs index dbe70b93d7..5dde3098ac 100644 --- a/MediaBrowser.Providers/Manager/MetadataService.cs +++ b/MediaBrowser.Providers/Manager/MetadataService.cs @@ -38,7 +38,6 @@ namespace MediaBrowser.Providers.Manager public void AddParts(IEnumerable<IMetadataProvider> providers, IEnumerable<IImageProvider> imageProviders) { _providers = providers.OfType<IMetadataProvider<TItemType>>() - .OrderBy(GetSortOrder) .ToArray(); _imageProviders = imageProviders.OrderBy(i => i.Order).ToArray(); @@ -180,21 +179,6 @@ namespace MediaBrowser.Providers.Manager } /// <summary> - /// Gets the sort order. - /// </summary> - /// <param name="provider">The provider.</param> - /// <returns>System.Int32.</returns> - protected virtual int GetSortOrder(IMetadataProvider<TItemType> provider) - { - if (provider is IRemoteMetadataProvider) - { - return 1; - } - - return 0; - } - - /// <summary> /// Determines whether this instance can refresh the specified provider. /// </summary> /// <param name="provider">The provider.</param> @@ -217,7 +201,7 @@ namespace MediaBrowser.Providers.Manager protected abstract Task SaveItem(TItemType item, ItemUpdateType reason, CancellationToken cancellationToken); - protected virtual ItemId GetId(TItemType item) + protected virtual ItemId GetId(IHasMetadata item) { return new ItemId { diff --git a/MediaBrowser.Providers/Manager/ProviderManager.cs b/MediaBrowser.Providers/Manager/ProviderManager.cs index ebad2e6e05..faad156698 100644 --- a/MediaBrowser.Providers/Manager/ProviderManager.cs +++ b/MediaBrowser.Providers/Manager/ProviderManager.cs @@ -36,7 +36,7 @@ namespace MediaBrowser.Providers.Manager /// <summary> /// The _directory watchers /// </summary> - private readonly IDirectoryWatchers _directoryWatchers; + private readonly ILibraryMonitor _libraryMonitor; /// <summary> /// Gets or sets the configuration manager. @@ -57,23 +57,23 @@ namespace MediaBrowser.Providers.Manager private readonly IItemRepository _itemRepo; - private IMetadataService[] _metadataServices = {}; + private IMetadataService[] _metadataServices = { }; /// <summary> /// Initializes a new instance of the <see cref="ProviderManager" /> class. /// </summary> /// <param name="httpClient">The HTTP client.</param> /// <param name="configurationManager">The configuration manager.</param> - /// <param name="directoryWatchers">The directory watchers.</param> + /// <param name="libraryMonitor">The directory watchers.</param> /// <param name="logManager">The log manager.</param> /// <param name="fileSystem">The file system.</param> /// <param name="itemRepo">The item repo.</param> - public ProviderManager(IHttpClient httpClient, IServerConfigurationManager configurationManager, IDirectoryWatchers directoryWatchers, ILogManager logManager, IFileSystem fileSystem, IItemRepository itemRepo) + public ProviderManager(IHttpClient httpClient, IServerConfigurationManager configurationManager, ILibraryMonitor libraryMonitor, ILogManager logManager, IFileSystem fileSystem, IItemRepository itemRepo) { _logger = logManager.GetLogger("ProviderManager"); _httpClient = httpClient; ConfigurationManager = configurationManager; - _directoryWatchers = directoryWatchers; + _libraryMonitor = libraryMonitor; _fileSystem = fileSystem; _itemRepo = itemRepo; } @@ -315,7 +315,7 @@ namespace MediaBrowser.Providers.Manager } //Tell the watchers to ignore - _directoryWatchers.TemporarilyIgnore(path); + _libraryMonitor.ReportFileSystemChangeBeginning(path); if (dataToSave.CanSeek) { @@ -338,7 +338,7 @@ namespace MediaBrowser.Providers.Manager finally { //Remove the ignore - _directoryWatchers.RemoveTempIgnore(path); + _libraryMonitor.ReportFileSystemChangeComplete(path, false); } } @@ -380,7 +380,7 @@ namespace MediaBrowser.Providers.Manager /// <returns>Task.</returns> public Task SaveImage(BaseItem item, Stream source, string mimeType, ImageType type, int? imageIndex, string sourceUrl, CancellationToken cancellationToken) { - return new ImageSaver(ConfigurationManager, _directoryWatchers, _fileSystem, _logger).SaveImage(item, source, mimeType, type, imageIndex, sourceUrl, cancellationToken); + return new ImageSaver(ConfigurationManager, _libraryMonitor, _fileSystem, _logger).SaveImage(item, source, mimeType, type, imageIndex, sourceUrl, cancellationToken); } /// <summary> |
