diff options
Diffstat (limited to 'MediaBrowser.Providers/Manager')
| -rw-r--r-- | MediaBrowser.Providers/Manager/ImageSaver.cs | 16 | ||||
| -rw-r--r-- | MediaBrowser.Providers/Manager/ItemImageProvider.cs | 5 | ||||
| -rw-r--r-- | MediaBrowser.Providers/Manager/MetadataService.cs | 22 |
3 files changed, 22 insertions, 21 deletions
diff --git a/MediaBrowser.Providers/Manager/ImageSaver.cs b/MediaBrowser.Providers/Manager/ImageSaver.cs index 9d183c880..e8eece299 100644 --- a/MediaBrowser.Providers/Manager/ImageSaver.cs +++ b/MediaBrowser.Providers/Manager/ImageSaver.cs @@ -119,13 +119,9 @@ namespace MediaBrowser.Providers.Manager var index = imageIndex ?? 0; - var paths = !string.IsNullOrEmpty(internalCacheKey) ? - new[] { GetCacheKeyPath(item, type, mimeType, internalCacheKey) } : - GetSavePaths(item, type, imageIndex, mimeType, saveLocally); + var paths = GetSavePaths(item, type, imageIndex, mimeType, saveLocally); - var retryPaths = !string.IsNullOrEmpty(internalCacheKey) ? - new[] { GetCacheKeyPath(item, type, mimeType, internalCacheKey) } : - GetSavePaths(item, type, imageIndex, mimeType, false); + var retryPaths = GetSavePaths(item, type, imageIndex, mimeType, false); // If there are more than one output paths, the stream will need to be seekable var memoryStream = new MemoryStream(); @@ -196,7 +192,7 @@ namespace MediaBrowser.Providers.Manager } catch (UnauthorizedAccessException) { - var retry = !string.IsNullOrWhiteSpace(retryPath) && + var retry = !string.IsNullOrWhiteSpace(retryPath) && !string.Equals(path, retryPath, StringComparison.OrdinalIgnoreCase); if (retry) @@ -213,12 +209,6 @@ namespace MediaBrowser.Providers.Manager await SaveImageToLocation(source, retryPath, cancellationToken).ConfigureAwait(false); } - private string GetCacheKeyPath(IHasImages item, ImageType type, string mimeType, string key) - { - var extension = MimeTypes.ToExtension(mimeType); - return Path.Combine(item.GetInternalMetadataPath(), type.ToString().ToLower() + "_key_" + key + extension); - } - /// <summary> /// Saves the image to location. /// </summary> diff --git a/MediaBrowser.Providers/Manager/ItemImageProvider.cs b/MediaBrowser.Providers/Manager/ItemImageProvider.cs index 838306e13..f13fb2613 100644 --- a/MediaBrowser.Providers/Manager/ItemImageProvider.cs +++ b/MediaBrowser.Providers/Manager/ItemImageProvider.cs @@ -505,6 +505,11 @@ namespace MediaBrowser.Providers.Manager return true; } + if (!item.IsSaveLocalMetadataEnabled()) + { + return true; + } + return false; } diff --git a/MediaBrowser.Providers/Manager/MetadataService.cs b/MediaBrowser.Providers/Manager/MetadataService.cs index 6860aeff3..a7f58e32b 100644 --- a/MediaBrowser.Providers/Manager/MetadataService.cs +++ b/MediaBrowser.Providers/Manager/MetadataService.cs @@ -99,7 +99,6 @@ namespace MediaBrowser.Providers.Manager var updateType = ItemUpdateType.None; var refreshResult = GetLastResult(item); - refreshResult.LastErrorMessage = string.Empty; var itemImageProvider = new ItemImageProvider(Logger, ProviderManager, ServerConfigurationManager, FileSystem); var localImagesFailed = false; @@ -119,7 +118,6 @@ namespace MediaBrowser.Providers.Manager { localImagesFailed = true; Logger.ErrorException("Error validating images for {0}", ex, item.Path ?? item.Name ?? "Unknown name"); - refreshResult.AddStatus(ex.Message); } var metadataResult = new MetadataResult<TItemType> @@ -150,7 +148,6 @@ namespace MediaBrowser.Providers.Manager var result = await RefreshWithProviders(metadataResult, id, refreshOptions, providers, itemImageProvider, cancellationToken).ConfigureAwait(false); updateType = updateType | result.UpdateType; - refreshResult.AddStatus(result.ErrorMessage); if (result.Failures == 0) { refreshResult.SetDateLastMetadataRefresh(DateTime.UtcNow); @@ -172,7 +169,6 @@ namespace MediaBrowser.Providers.Manager var result = await itemImageProvider.RefreshImages(itemOfType, providers, refreshOptions, config, cancellationToken).ConfigureAwait(false); updateType = updateType | result.UpdateType; - refreshResult.AddStatus(result.ErrorMessage); if (result.Failures == 0) { refreshResult.SetDateLastImagesRefresh(DateTime.UtcNow); @@ -231,22 +227,32 @@ namespace MediaBrowser.Providers.Manager private DateTime GetLastRefreshDate(IHasMetadata item) { - if (item.DateLastRefreshed != default(DateTime)) + if (EnableDateLastRefreshed(item)) { return item.DateLastRefreshed; } + return item.DateLastSaved; + } + + private bool EnableDateLastRefreshed(IHasMetadata item) + { if (ServerConfigurationManager.Configuration.EnableDateLastRefresh) { - return item.DateLastRefreshed; + return true; + } + + if (item.DateLastRefreshed != default(DateTime)) + { + return true; } if (item is BoxSet || (item is IItemByName && !(item is MusicArtist))) { - return item.DateLastRefreshed; + return true; } - return item.DateLastSaved; + return false; } protected async Task SaveItem(MetadataResult<TItemType> result, ItemUpdateType reason, CancellationToken cancellationToken) |
