extracted httpclient dependancy

This commit is contained in:
LukePulverenti
2013-02-24 19:13:45 -05:00
parent 5b1eea558a
commit 28ccfb1bd1
40 changed files with 412 additions and 171 deletions

View File

@@ -1,4 +1,5 @@
using MediaBrowser.Controller;
using MediaBrowser.Common.Net;
using MediaBrowser.Controller;
using MediaBrowser.Controller.Weather;
using MediaBrowser.Model.Logging;
using MediaBrowser.Model.Serialization;
@@ -28,25 +29,34 @@ namespace MediaBrowser.Server.Implementations.WorldWeatherOnline
/// <value>The json serializer.</value>
protected IJsonSerializer JsonSerializer { get; private set; }
/// <summary>
/// The _HTTP client
/// </summary>
private IHttpClient HttpClient { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="WeatherProvider" /> class.
/// </summary>
/// <param name="jsonSerializer">The json serializer.</param>
/// <param name="logger">The logger.</param>
/// <exception cref="System.ArgumentNullException">logger</exception>
public WeatherProvider(IJsonSerializer jsonSerializer, ILogger logger)
public WeatherProvider(IJsonSerializer jsonSerializer, IHttpClient httpClient, ILogger logger)
{
if (logger == null)
{
throw new ArgumentNullException("logger");
}
if (httpClient == null)
{
throw new ArgumentNullException("httpClient");
}
if (jsonSerializer == null)
{
throw new ArgumentNullException("jsonSerializer");
}
JsonSerializer = jsonSerializer;
HttpClient = httpClient;
Logger = logger;
}
@@ -81,7 +91,7 @@ namespace MediaBrowser.Server.Implementations.WorldWeatherOnline
Logger.Info("Accessing weather from " + url);
using (var stream = await Kernel.Instance.HttpManager.Get(url, _weatherSemaphore, cancellationToken).ConfigureAwait(false))
using (var stream = await HttpClient.Get(url, _weatherSemaphore, cancellationToken).ConfigureAwait(false))
{
var data = JsonSerializer.DeserializeFromStream<WeatherResult>(stream).data;