diff options
Diffstat (limited to 'MediaBrowser.Server.Implementations/LiveTv/RecordingImageProvider.cs')
| -rw-r--r-- | MediaBrowser.Server.Implementations/LiveTv/RecordingImageProvider.cs | 63 |
1 files changed, 14 insertions, 49 deletions
diff --git a/MediaBrowser.Server.Implementations/LiveTv/RecordingImageProvider.cs b/MediaBrowser.Server.Implementations/LiveTv/RecordingImageProvider.cs index adf1e7516..fce3223ea 100644 --- a/MediaBrowser.Server.Implementations/LiveTv/RecordingImageProvider.cs +++ b/MediaBrowser.Server.Implementations/LiveTv/RecordingImageProvider.cs @@ -1,9 +1,7 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Logging; using System; using System.Collections.Generic; using System.Linq; @@ -15,14 +13,10 @@ namespace MediaBrowser.Server.Implementations.LiveTv public class RecordingImageProvider : IDynamicImageProvider, IHasItemChangeMonitor { private readonly ILiveTvManager _liveTvManager; - private readonly IHttpClient _httpClient; - private readonly ILogger _logger; - public RecordingImageProvider(ILiveTvManager liveTvManager, IHttpClient httpClient, ILogger logger) + public RecordingImageProvider(ILiveTvManager liveTvManager) { _liveTvManager = liveTvManager; - _httpClient = httpClient; - _logger = logger; } public IEnumerable<ImageType> GetSupportedImages(IHasImages item) @@ -36,53 +30,24 @@ namespace MediaBrowser.Server.Implementations.LiveTv var imageResponse = new DynamicImageResponse(); - if (!string.IsNullOrEmpty(liveTvItem.ProviderImagePath)) - { - imageResponse.Path = liveTvItem.ProviderImagePath; - imageResponse.HasImage = true; - } - else if (!string.IsNullOrEmpty(liveTvItem.ProviderImageUrl)) - { - var options = new HttpRequestOptions - { - CancellationToken = cancellationToken, - Url = liveTvItem.ProviderImageUrl - }; + var service = _liveTvManager.Services.FirstOrDefault(i => string.Equals(i.Name, liveTvItem.ServiceName, StringComparison.OrdinalIgnoreCase)); - var response = await _httpClient.GetResponse(options).ConfigureAwait(false); - - if (response.ContentType.StartsWith("image/", StringComparison.OrdinalIgnoreCase)) - { - imageResponse.HasImage = true; - imageResponse.Stream = response.Content; - imageResponse.SetFormatFromMimeType(response.ContentType); - } - else - { - _logger.Error("Provider did not return an image content type."); - } - } - else + if (service != null) { - var service = _liveTvManager.Services.FirstOrDefault(i => string.Equals(i.Name, liveTvItem.ServiceName, StringComparison.OrdinalIgnoreCase)); - - if (service != null) + try { - try - { - var response = await service.GetRecordingImageAsync(liveTvItem.ExternalId, cancellationToken).ConfigureAwait(false); + var response = await service.GetRecordingImageAsync(liveTvItem.ExternalId, cancellationToken).ConfigureAwait(false); - if (response != null) - { - imageResponse.HasImage = true; - imageResponse.Stream = response.Stream; - imageResponse.Format = response.Format; - } - } - catch (NotImplementedException) + if (response != null) { + imageResponse.HasImage = true; + imageResponse.Stream = response.Stream; + imageResponse.Format = response.Format; } } + catch (NotImplementedException) + { + } } return imageResponse; @@ -109,7 +74,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv if (liveTvItem != null) { - return !liveTvItem.HasImage(ImageType.Primary) && (!string.IsNullOrWhiteSpace(liveTvItem.ProviderImagePath) || !string.IsNullOrWhiteSpace(liveTvItem.ProviderImageUrl)); + return !liveTvItem.HasImage(ImageType.Primary); } return false; } |
