aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers/Manager/ProviderManager.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-03-02 10:42:21 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-03-02 10:42:21 -0500
commite1387a24c16dc1982856f4a87e3c44124e58ac64 (patch)
treef354811f3c8a889fb46ba7262c9ac3f56dc346db /MediaBrowser.Providers/Manager/ProviderManager.cs
parent6c5cf81752c4189e9a7a8c79ea84d802cc979eea (diff)
implement series searching
Diffstat (limited to 'MediaBrowser.Providers/Manager/ProviderManager.cs')
-rw-r--r--MediaBrowser.Providers/Manager/ProviderManager.cs20
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));