diff options
| author | LukePulverenti <luke.pulverenti@gmail.com> | 2013-02-24 19:13:45 -0500 |
|---|---|---|
| committer | LukePulverenti <luke.pulverenti@gmail.com> | 2013-02-24 19:13:45 -0500 |
| commit | 28ccfb1bd17eceb683d428d1c0e2d2ea52a2f7ff (patch) | |
| tree | e5dccabace19f632c185781c4501d488c7dc7fae /MediaBrowser.Controller/Providers/TV | |
| parent | 5b1eea558a55b9a46e556b795189425441b4a026 (diff) | |
extracted httpclient dependancy
Diffstat (limited to 'MediaBrowser.Controller/Providers/TV')
4 files changed, 80 insertions, 15 deletions
diff --git a/MediaBrowser.Controller/Providers/TV/FanArtTVProvider.cs b/MediaBrowser.Controller/Providers/TV/FanArtTVProvider.cs index 05ab172a8e..8d5c2e0c74 100644 --- a/MediaBrowser.Controller/Providers/TV/FanArtTVProvider.cs +++ b/MediaBrowser.Controller/Providers/TV/FanArtTVProvider.cs @@ -1,4 +1,5 @@ using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Model.Entities; @@ -15,6 +16,22 @@ namespace MediaBrowser.Controller.Providers.TV { protected string FanArtBaseUrl = "http://api.fanart.tv/webservice/series/{0}/{1}/xml/all/1/1"; + /// <summary> + /// Gets the HTTP client. + /// </summary> + /// <value>The HTTP client.</value> + protected IHttpClient HttpClient { get; private set; } + + public FanArtTVProvider(IHttpClient httpClient) + : base() + { + if (httpClient == null) + { + throw new ArgumentNullException("httpClient"); + } + HttpClient = httpClient; + } + public override bool Supports(BaseItem item) { return item is Series; @@ -36,7 +53,7 @@ namespace MediaBrowser.Controller.Providers.TV protected override async Task<bool> FetchAsyncInternal(BaseItem item, bool force, CancellationToken cancellationToken) { cancellationToken.ThrowIfCancellationRequested(); - + var series = (Series)item; if (ShouldFetch(series, series.ProviderData.GetValueOrDefault(Id, new BaseProviderInfo { ProviderId = Id }))) { @@ -46,7 +63,7 @@ namespace MediaBrowser.Controller.Providers.TV try { - using (var xml = await Kernel.Instance.HttpManager.Get(url, Kernel.Instance.ResourcePools.FanArt, cancellationToken).ConfigureAwait(false)) + using (var xml = await HttpClient.Get(url, Kernel.Instance.ResourcePools.FanArt, cancellationToken).ConfigureAwait(false)) { doc.Load(xml); } @@ -56,7 +73,7 @@ namespace MediaBrowser.Controller.Providers.TV } cancellationToken.ThrowIfCancellationRequested(); - + if (doc.HasChildNodes) { string path; @@ -83,7 +100,7 @@ namespace MediaBrowser.Controller.Providers.TV } cancellationToken.ThrowIfCancellationRequested(); - + if (Kernel.Instance.Configuration.DownloadTVArt && !series.ResolveArgs.ContainsMetaFileByName(ART_FILE)) { var node = doc.SelectSingleNode("//fanart/series/cleararts/clearart[@lang = \"" + language + "\"]/@url") ?? @@ -107,7 +124,7 @@ namespace MediaBrowser.Controller.Providers.TV } cancellationToken.ThrowIfCancellationRequested(); - + if (Kernel.Instance.Configuration.DownloadTVThumb && !series.ResolveArgs.ContainsMetaFileByName(THUMB_FILE)) { var node = doc.SelectSingleNode("//fanart/series/tvthumbs/tvthumb[@lang = \"" + language + "\"]/@url") ?? diff --git a/MediaBrowser.Controller/Providers/TV/RemoteEpisodeProvider.cs b/MediaBrowser.Controller/Providers/TV/RemoteEpisodeProvider.cs index b065981148..a31520c9df 100644 --- a/MediaBrowser.Controller/Providers/TV/RemoteEpisodeProvider.cs +++ b/MediaBrowser.Controller/Providers/TV/RemoteEpisodeProvider.cs @@ -1,4 +1,5 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Extensions; using MediaBrowser.Controller.Resolvers.TV; @@ -19,6 +20,21 @@ namespace MediaBrowser.Controller.Providers.TV /// </summary> class RemoteEpisodeProvider : BaseMetadataProvider { + /// <summary> + /// Gets the HTTP client. + /// </summary> + /// <value>The HTTP client.</value> + protected IHttpClient HttpClient { get; private set; } + + public RemoteEpisodeProvider(IHttpClient httpClient) + : base() + { + if (httpClient == null) + { + throw new ArgumentNullException("httpClient"); + } + HttpClient = httpClient; + } /// <summary> /// The episode query @@ -171,7 +187,7 @@ namespace MediaBrowser.Controller.Providers.TV try { - using (var result = await Kernel.Instance.HttpManager.Get(url, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) + using (var result = await HttpClient.Get(url, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) { doc.Load(result); } @@ -189,7 +205,7 @@ namespace MediaBrowser.Controller.Providers.TV try { - using (var result = await Kernel.Instance.HttpManager.Get(url, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) + using (var result = await HttpClient.Get(url, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) { if (result != null) doc.Load(result); usingAbsoluteData = true; diff --git a/MediaBrowser.Controller/Providers/TV/RemoteSeasonProvider.cs b/MediaBrowser.Controller/Providers/TV/RemoteSeasonProvider.cs index 3e7f6b1a2b..72468c24ab 100644 --- a/MediaBrowser.Controller/Providers/TV/RemoteSeasonProvider.cs +++ b/MediaBrowser.Controller/Providers/TV/RemoteSeasonProvider.cs @@ -1,4 +1,5 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Resolvers.TV; using MediaBrowser.Model.Entities; @@ -17,6 +18,21 @@ namespace MediaBrowser.Controller.Providers.TV /// </summary> class RemoteSeasonProvider : BaseMetadataProvider { + /// <summary> + /// Gets the HTTP client. + /// </summary> + /// <value>The HTTP client.</value> + protected IHttpClient HttpClient { get; private set; } + + public RemoteSeasonProvider(IHttpClient httpClient) + : base() + { + if (httpClient == null) + { + throw new ArgumentNullException("httpClient"); + } + HttpClient = httpClient; + } /// <summary> /// Supportses the specified item. @@ -82,7 +98,7 @@ namespace MediaBrowser.Controller.Providers.TV protected override async Task<bool> FetchAsyncInternal(BaseItem item, bool force, CancellationToken cancellationToken) { cancellationToken.ThrowIfCancellationRequested(); - + var season = (Season)item; if (!HasLocalMeta(item)) @@ -135,7 +151,7 @@ namespace MediaBrowser.Controller.Providers.TV try { - using (var imgs = await Kernel.Instance.HttpManager.Get(url, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) + using (var imgs = await HttpClient.Get(url, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) { images.Load(imgs); } diff --git a/MediaBrowser.Controller/Providers/TV/RemoteSeriesProvider.cs b/MediaBrowser.Controller/Providers/TV/RemoteSeriesProvider.cs index b8941dbba3..c05e9c5e64 100644 --- a/MediaBrowser.Controller/Providers/TV/RemoteSeriesProvider.cs +++ b/MediaBrowser.Controller/Providers/TV/RemoteSeriesProvider.cs @@ -1,4 +1,5 @@ using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Extensions; @@ -21,6 +22,21 @@ namespace MediaBrowser.Controller.Providers.TV /// </summary> class RemoteSeriesProvider : BaseMetadataProvider { + /// <summary> + /// Gets the HTTP client. + /// </summary> + /// <value>The HTTP client.</value> + protected IHttpClient HttpClient { get; private set; } + + public RemoteSeriesProvider(IHttpClient httpClient) + : base() + { + if (httpClient == null) + { + throw new ArgumentNullException("httpClient"); + } + HttpClient = httpClient; + } /// <summary> /// The root URL @@ -153,7 +169,7 @@ namespace MediaBrowser.Controller.Providers.TV try { - using (var xml = await Kernel.Instance.HttpManager.Get(url, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) + using (var xml = await HttpClient.Get(url, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) { doc.Load(xml); } @@ -232,7 +248,7 @@ namespace MediaBrowser.Controller.Providers.TV try { - using (var actors = await Kernel.Instance.HttpManager.Get(urlActors, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) + using (var actors = await HttpClient.Get(urlActors, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) { docActors.Load(actors); } @@ -299,7 +315,7 @@ namespace MediaBrowser.Controller.Providers.TV try { - using (var imgs = await Kernel.Instance.HttpManager.Get(url, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) + using (var imgs = await HttpClient.Get(url, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) { images.Load(imgs); } @@ -446,7 +462,7 @@ namespace MediaBrowser.Controller.Providers.TV try { - using (var results = await Kernel.Instance.HttpManager.Get(url, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) + using (var results = await HttpClient.Get(url, Kernel.Instance.ResourcePools.TvDb, cancellationToken).ConfigureAwait(false)) { doc.Load(results); } |
