diff options
Diffstat (limited to 'MediaBrowser.Providers/Manager/ProviderManager.cs')
| -rw-r--r-- | MediaBrowser.Providers/Manager/ProviderManager.cs | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/MediaBrowser.Providers/Manager/ProviderManager.cs b/MediaBrowser.Providers/Manager/ProviderManager.cs index b35c4887c..5f6702e74 100644 --- a/MediaBrowser.Providers/Manager/ProviderManager.cs +++ b/MediaBrowser.Providers/Manager/ProviderManager.cs @@ -492,7 +492,7 @@ namespace MediaBrowser.Providers.Manager Type = MetadataPluginType.MetadataFetcher })); } - + if (item.IsSaveLocalMetadataEnabled()) { // Savers @@ -668,7 +668,7 @@ namespace MediaBrowser.Providers.Manager foreach (var provider in providers) { - var results = await provider.GetSearchResults(searchInfo.SearchInfo, cancellationToken).ConfigureAwait(false); + var results = await GetSearchResults(provider, searchInfo.SearchInfo, cancellationToken).ConfigureAwait(false); var list = results.ToList(); @@ -682,6 +682,22 @@ namespace MediaBrowser.Providers.Manager return new List<RemoteSearchResult>(); } + private async Task<IEnumerable<RemoteSearchResult>> GetSearchResults<TLookupType>(IRemoteSearchProvider<TLookupType> provider, TLookupType searchInfo, + CancellationToken cancellationToken) + where TLookupType : ItemLookupInfo + { + var results = await provider.GetSearchResults(searchInfo, cancellationToken).ConfigureAwait(false); + + var list = results.ToList(); + + foreach (var item in list) + { + item.SearchProviderName = provider.Name; + } + + return list; + } + public Task<HttpResponseInfo> GetSearchImage(string providerName, string url, CancellationToken cancellationToken) { var provider = _metadataProviders.OfType<IRemoteSearchProvider>().FirstOrDefault(i => string.Equals(i.Name, providerName, StringComparison.OrdinalIgnoreCase)); |
