diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-03-02 10:42:21 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-03-02 10:42:21 -0500 |
| commit | e1387a24c16dc1982856f4a87e3c44124e58ac64 (patch) | |
| tree | f354811f3c8a889fb46ba7262c9ac3f56dc346db /MediaBrowser.Providers/Manager/ProviderManager.cs | |
| parent | 6c5cf81752c4189e9a7a8c79ea84d802cc979eea (diff) | |
implement series searching
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 b35c4887c3..5f6702e745 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)); |
