From 853ef727daa75f7508157400eba3a3b1af2f8c8a Mon Sep 17 00:00:00 2001 From: Joe Rogers <1337joe@gmail.com> Date: Fri, 31 Dec 2021 17:05:02 +0100 Subject: Add refresh flag to remove existing data/images Fixes #7040 --- Jellyfin.Api/Controllers/ItemLookupController.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'Jellyfin.Api/Controllers/ItemLookupController.cs') diff --git a/Jellyfin.Api/Controllers/ItemLookupController.cs b/Jellyfin.Api/Controllers/ItemLookupController.cs index 4161e43f6..9cc23dc4f 100644 --- a/Jellyfin.Api/Controllers/ItemLookupController.cs +++ b/Jellyfin.Api/Controllers/ItemLookupController.cs @@ -263,7 +263,8 @@ namespace Jellyfin.Api.Controllers ImageRefreshMode = MetadataRefreshMode.FullRefresh, ReplaceAllMetadata = true, ReplaceAllImages = replaceAllImages, - SearchResult = searchResult + SearchResult = searchResult, + IsIdentify = true }, CancellationToken.None).ConfigureAwait(false); -- cgit v1.2.3 From b43f46d5c939a0df6b2a445b4c4d51f79e6e8365 Mon Sep 17 00:00:00 2001 From: Joe Rogers <1337joe@gmail.com> Date: Sat, 8 Jan 2022 14:03:59 +0100 Subject: Make identify flag describe purpose, not source --- Jellyfin.Api/Controllers/ItemLookupController.cs | 2 +- MediaBrowser.Controller/Providers/ImageRefreshOptions.cs | 4 ++-- MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs | 2 +- MediaBrowser.Providers/Manager/MetadataService.cs | 6 ++---- 4 files changed, 6 insertions(+), 8 deletions(-) (limited to 'Jellyfin.Api/Controllers/ItemLookupController.cs') diff --git a/Jellyfin.Api/Controllers/ItemLookupController.cs b/Jellyfin.Api/Controllers/ItemLookupController.cs index 9cc23dc4f..c49f85616 100644 --- a/Jellyfin.Api/Controllers/ItemLookupController.cs +++ b/Jellyfin.Api/Controllers/ItemLookupController.cs @@ -264,7 +264,7 @@ namespace Jellyfin.Api.Controllers ReplaceAllMetadata = true, ReplaceAllImages = replaceAllImages, SearchResult = searchResult, - IsIdentify = true + RemoveOldMetadata = true }, CancellationToken.None).ConfigureAwait(false); diff --git a/MediaBrowser.Controller/Providers/ImageRefreshOptions.cs b/MediaBrowser.Controller/Providers/ImageRefreshOptions.cs index 9f40f8a2c..4073d07ad 100644 --- a/MediaBrowser.Controller/Providers/ImageRefreshOptions.cs +++ b/MediaBrowser.Controller/Providers/ImageRefreshOptions.cs @@ -28,9 +28,9 @@ namespace MediaBrowser.Controller.Providers public bool IsAutomated { get; set; } /// - /// Gets or sets a value indicating whether the action is an identify. + /// Gets or sets a value indicating whether old metadata should be removed if it isn't be replaced. /// - public bool IsIdentify { get; set; } + public bool RemoveOldMetadata { get; set; } public bool IsReplacingImage(ImageType type) { diff --git a/MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs b/MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs index 1fb18334a..a38bbaf69 100644 --- a/MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs +++ b/MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs @@ -30,7 +30,7 @@ namespace MediaBrowser.Controller.Providers ReplaceAllImages = copy.ReplaceAllImages; ReplaceImages = copy.ReplaceImages; SearchResult = copy.SearchResult; - IsIdentify = copy.IsIdentify; + RemoveOldMetadata = copy.RemoveOldMetadata; if (copy.RefreshPaths != null && copy.RefreshPaths.Length > 0) { diff --git a/MediaBrowser.Providers/Manager/MetadataService.cs b/MediaBrowser.Providers/Manager/MetadataService.cs index eee3d3bd1..a7238831b 100644 --- a/MediaBrowser.Providers/Manager/MetadataService.cs +++ b/MediaBrowser.Providers/Manager/MetadataService.cs @@ -96,8 +96,7 @@ namespace MediaBrowser.Providers.Manager var allImageProviders = ((ProviderManager)ProviderManager).GetImageProviders(item, refreshOptions).ToList(); - // If replacing images with identify purge existing images. - if (refreshOptions.IsIdentify && refreshOptions.ReplaceAllImages) + if (refreshOptions.RemoveOldMetadata && refreshOptions.ReplaceAllImages) { if (ImageProvider.RemoveImages(item)) { @@ -755,9 +754,8 @@ namespace MediaBrowser.Providers.Manager } else { - if (!options.IsIdentify) + if (!options.RemoveOldMetadata) { - // Keep metadata for fields that the new metadata doesn't have populated MergeData(metadata, temp, Array.Empty(), false, false); } -- cgit v1.2.3