aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs
diff options
context:
space:
mode:
authorstefan <stefan@hegedues.at>2018-09-12 19:26:21 +0200
committerstefan <stefan@hegedues.at>2018-09-12 19:26:21 +0200
commit48facb797ed912e4ea6b04b17d1ff190ac2daac4 (patch)
tree8dae77a31670a888d733484cb17dd4077d5444e8 /MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs
parentc32d8656382a0eacb301692e0084377fc433ae9b (diff)
Update to 3.5.2 and .net core 2.1
Diffstat (limited to 'MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs')
-rw-r--r--MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs67
1 files changed, 51 insertions, 16 deletions
diff --git a/MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs b/MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs
index 2c3dc0e31..78791906a 100644
--- a/MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs
+++ b/MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs
@@ -9,27 +9,15 @@ using MediaBrowser.Providers.Manager;
using System.Linq;
using MediaBrowser.Model.IO;
using MediaBrowser.Model.Extensions;
+using System.Collections.Generic;
namespace MediaBrowser.Providers.BoxSets
{
public class BoxSetMetadataService : MetadataService<BoxSet, BoxSetInfo>
{
- protected override ItemUpdateType BeforeSaveInternal(BoxSet item, bool isFullRefresh, ItemUpdateType currentUpdateType)
+ protected override IList<BaseItem> GetChildrenForMetadataUpdates(BoxSet item)
{
- var updateType = base.BeforeSaveInternal(item, isFullRefresh, currentUpdateType);
-
- if (isFullRefresh || currentUpdateType > ItemUpdateType.None)
- {
- if (!item.LockedFields.Contains(MetadataFields.OfficialRating))
- {
- if (item.UpdateRatingToContent())
- {
- updateType = updateType | ItemUpdateType.MetadataEdit;
- }
- }
- }
-
- return updateType;
+ return item.GetLinkedChildren();
}
protected override void MergeData(MetadataResult<BoxSet> source, MetadataResult<BoxSet> target, MetadataFields[] lockedFields, bool replaceData, bool mergeMetadataSettings)
@@ -42,12 +30,59 @@ namespace MediaBrowser.Providers.BoxSets
if (mergeMetadataSettings)
{
targetItem.LinkedChildren = sourceItem.LinkedChildren;
- targetItem.Shares = sourceItem.Shares;
}
}
+ protected override ItemUpdateType BeforeSaveInternal(BoxSet item, bool isFullRefresh, ItemUpdateType currentUpdateType)
+ {
+ var updateType = base.BeforeSaveInternal(item, isFullRefresh, currentUpdateType);
+
+ var libraryFolderIds = item.GetLibraryFolderIds();
+
+ var itemLibraryFolderIds = item.LibraryFolderIds;
+ if (itemLibraryFolderIds == null || !libraryFolderIds.SequenceEqual(itemLibraryFolderIds))
+ {
+ item.LibraryFolderIds = libraryFolderIds;
+ updateType |= ItemUpdateType.MetadataImport;
+ }
+
+ return updateType;
+ }
+
public BoxSetMetadataService(IServerConfigurationManager serverConfigurationManager, ILogger logger, IProviderManager providerManager, IFileSystem fileSystem, IUserDataManager userDataManager, ILibraryManager libraryManager) : base(serverConfigurationManager, logger, providerManager, fileSystem, userDataManager, libraryManager)
{
}
+
+ protected override bool EnableUpdatingGenresFromChildren
+ {
+ get
+ {
+ return true;
+ }
+ }
+
+ protected override bool EnableUpdatingOfficialRatingFromChildren
+ {
+ get
+ {
+ return true;
+ }
+ }
+
+ protected override bool EnableUpdatingStudiosFromChildren
+ {
+ get
+ {
+ return true;
+ }
+ }
+
+ protected override bool EnableUpdatingPremiereDateFromChildren
+ {
+ get
+ {
+ return true;
+ }
+ }
}
}