more dependancy injection

This commit is contained in:
LukePulverenti
2013-02-21 16:39:53 -05:00
parent 8f41685a96
commit 931c0ea455
16 changed files with 193 additions and 117 deletions

View File

@@ -412,18 +412,18 @@ namespace MediaBrowser.Common.Kernel
Logger.Info("Version {0} initializing", ApplicationVersion);
DisposeHttpManager();
HttpManager = new HttpManager(this);
HttpManager = new HttpManager(this, Logger);
await OnConfigurationLoaded().ConfigureAwait(false);
DisposeTaskManager();
TaskManager = new TaskManager(this);
TaskManager = new TaskManager(this, Logger);
Logger.Info("Loading Plugins");
await ReloadComposableParts().ConfigureAwait(false);
DisposeTcpManager();
TcpManager = new TcpManager(this);
TcpManager = new TcpManager(this, Logger);
}
/// <summary>

View File

@@ -1,6 +1,4 @@
using MediaBrowser.Common.Logging;
using MediaBrowser.Model.Logging;
using System;
using System;
namespace MediaBrowser.Common.Kernel
{
@@ -9,14 +7,8 @@ namespace MediaBrowser.Common.Kernel
/// </summary>
/// <typeparam name="TKernelType">The type of the T kernel type.</typeparam>
public abstract class BaseManager<TKernelType> : IDisposable
where TKernelType : IKernel
where TKernelType : class, IKernel
{
/// <summary>
/// Gets the logger.
/// </summary>
/// <value>The logger.</value>
protected ILogger Logger { get; private set; }
/// <summary>
/// The _kernel
/// </summary>
@@ -33,12 +25,8 @@ namespace MediaBrowser.Common.Kernel
{
throw new ArgumentNullException("kernel");
}
Kernel = kernel;
Logger = LogManager.GetLogger(GetType().Name);
Logger.Info("Initializing");
}
/// <summary>
@@ -46,8 +34,6 @@ namespace MediaBrowser.Common.Kernel
/// </summary>
public void Dispose()
{
Logger.Info("Disposing");
Dispose(true);
GC.SuppressFinalize(this);
}

View File

@@ -3,6 +3,7 @@ using Alchemy.Classes;
using MediaBrowser.Common.Net;
using MediaBrowser.Common.Serialization;
using MediaBrowser.Model.Configuration;
using MediaBrowser.Model.Logging;
using System;
using System.Collections.Generic;
using System.Diagnostics;
@@ -59,6 +60,11 @@ namespace MediaBrowser.Common.Kernel
/// <value>The external web socket server.</value>
private WebSocketServer ExternalWebSocketServer { get; set; }
/// <summary>
/// The _logger
/// </summary>
private readonly ILogger _logger;
/// <summary>
/// The _supports native web socket
/// </summary>
@@ -103,9 +109,12 @@ namespace MediaBrowser.Common.Kernel
/// Initializes a new instance of the <see cref="TcpManager" /> class.
/// </summary>
/// <param name="kernel">The kernel.</param>
public TcpManager(IKernel kernel)
/// <param name="logger">The logger.</param>
public TcpManager(IKernel kernel, ILogger logger)
: base(kernel)
{
_logger = logger;
if (kernel.IsFirstRun)
{
RegisterServerWithAdministratorAccess();
@@ -141,7 +150,7 @@ namespace MediaBrowser.Common.Kernel
ExternalWebSocketServer.Start();
Logger.Info("Alchemy Web Socket Server started");
_logger.Info("Alchemy Web Socket Server started");
}
/// <summary>
@@ -150,7 +159,7 @@ namespace MediaBrowser.Common.Kernel
/// <param name="context">The context.</param>
private void OnAlchemyWebSocketClientConnected(UserContext context)
{
var connection = new WebSocketConnection(new AlchemyWebSocket(context, Logger), context.ClientAddress, ProcessWebSocketMessageReceived, Logger);
var connection = new WebSocketConnection(new AlchemyWebSocket(context, _logger), context.ClientAddress, ProcessWebSocketMessageReceived, _logger);
_webSocketConnections.Add(connection);
}
@@ -169,15 +178,15 @@ namespace MediaBrowser.Common.Kernel
DisposeHttpServer();
Logger.Info("Loading Http Server");
_logger.Info("Loading Http Server");
try
{
HttpServer = new HttpServer(Kernel.HttpServerUrlPrefix, "Media Browser", Kernel, Logger);
HttpServer = new HttpServer(Kernel.HttpServerUrlPrefix, "Media Browser", Kernel, _logger);
}
catch (HttpListenerException ex)
{
Logger.ErrorException("Error starting Http Server", ex);
_logger.ErrorException("Error starting Http Server", ex);
if (registerServerOnFailure)
{
@@ -202,7 +211,7 @@ namespace MediaBrowser.Common.Kernel
/// <param name="e">The <see cref="WebSocketConnectEventArgs" /> instance containing the event data.</param>
void HttpServer_WebSocketConnected(object sender, WebSocketConnectEventArgs e)
{
var connection = new WebSocketConnection(e.WebSocket, e.Endpoint, ProcessWebSocketMessageReceived, Logger);
var connection = new WebSocketConnection(e.WebSocket, e.Endpoint, ProcessWebSocketMessageReceived, _logger);
_webSocketConnections.Add(connection);
}
@@ -221,7 +230,7 @@ namespace MediaBrowser.Common.Kernel
}
catch (Exception ex)
{
Logger.ErrorException("{0} failed processing WebSocket message {1}", ex, i.GetType().Name, result.MessageType);
_logger.ErrorException("{0} failed processing WebSocket message {1}", ex, i.GetType().Name, result.MessageType);
}
}));
@@ -254,7 +263,7 @@ namespace MediaBrowser.Common.Kernel
}
catch (SocketException ex)
{
Logger.ErrorException("Failed to start UDP Server", ex);
_logger.ErrorException("Failed to start UDP Server", ex);
return;
}
@@ -265,7 +274,7 @@ namespace MediaBrowser.Common.Kernel
if (expectedMessageBytes.SequenceEqual(res.Buffer))
{
Logger.Info("Received UDP server request from " + res.RemoteEndPoint.ToString());
_logger.Info("Received UDP server request from " + res.RemoteEndPoint.ToString());
// Send a response back with our ip address and port
var response = String.Format("MediaBrowser{0}|{1}:{2}", Kernel.KernelContext, NetUtils.GetLocalIpAddress(), Kernel.UdpServerPortNumber);
@@ -330,7 +339,7 @@ namespace MediaBrowser.Common.Kernel
if (connections.Count > 0)
{
Logger.Info("Sending web socket message {0}", messageType);
_logger.Info("Sending web socket message {0}", messageType);
var message = new WebSocketMessage<T> { MessageType = messageType, Data = dataFunction() };
var bytes = JsonSerializer.SerializeToBytes(message);
@@ -347,7 +356,7 @@ namespace MediaBrowser.Common.Kernel
}
catch (Exception ex)
{
Logger.ErrorException("Error sending web socket message {0} to {1}", ex, messageType, s.RemoteEndPoint);
_logger.ErrorException("Error sending web socket message {0} to {1}", ex, messageType, s.RemoteEndPoint);
}
}));
@@ -386,7 +395,7 @@ namespace MediaBrowser.Common.Kernel
if (HttpServer != null)
{
Logger.Info("Disposing Http Server");
_logger.Info("Disposing Http Server");
HttpServer.WebSocketConnected -= HttpServer_WebSocketConnected;
HttpServer.Dispose();