aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers/Manager/MetadataService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Providers/Manager/MetadataService.cs')
-rw-r--r--MediaBrowser.Providers/Manager/MetadataService.cs6
1 files changed, 4 insertions, 2 deletions
diff --git a/MediaBrowser.Providers/Manager/MetadataService.cs b/MediaBrowser.Providers/Manager/MetadataService.cs
index e8b3a6ad6..d946f9cbd 100644
--- a/MediaBrowser.Providers/Manager/MetadataService.cs
+++ b/MediaBrowser.Providers/Manager/MetadataService.cs
@@ -14,7 +14,7 @@ using System.Threading.Tasks;
namespace MediaBrowser.Providers.Manager
{
public abstract class MetadataService<TItemType> : IMetadataService
- where TItemType : IHasMetadata, new()
+ where TItemType : IHasMetadata
{
protected readonly IServerConfigurationManager ServerConfigurationManager;
protected readonly ILogger Logger;
@@ -263,7 +263,7 @@ namespace MediaBrowser.Providers.Manager
Providers = providers.Select(i => i.GetType().FullName.GetMD5()).ToList()
};
- var temp = new TItemType();
+ var temp = CreateNew();
// If replacing all metadata, run internet providers first
if (options.ReplaceAllMetadata)
@@ -317,6 +317,8 @@ namespace MediaBrowser.Providers.Manager
return refreshResult;
}
+ protected abstract TItemType CreateNew();
+
private async Task ExecuteRemoteProviders(TItemType item, TItemType temp, IEnumerable<IRemoteMetadataProvider<TItemType>> providers, RefreshResult refreshResult, CancellationToken cancellationToken)
{
var id = GetId(item);