Create ServiceController via DI instead of manual construction

This commit is contained in:
Mark Monteiro 2020-03-21 23:18:41 +01:00
parent dc140429fe
commit 72c822513f

View file

@ -60,7 +60,8 @@ namespace Emby.Server.Implementations.HttpServer
IJsonSerializer jsonSerializer, IJsonSerializer jsonSerializer,
IXmlSerializer xmlSerializer, IXmlSerializer xmlSerializer,
IHttpListener socketListener, IHttpListener socketListener,
ILocalizationManager localizationManager) ILocalizationManager localizationManager,
ServiceController serviceController)
{ {
_appHost = applicationHost; _appHost = applicationHost;
_logger = logger; _logger = logger;
@ -71,6 +72,8 @@ namespace Emby.Server.Implementations.HttpServer
_jsonSerializer = jsonSerializer; _jsonSerializer = jsonSerializer;
_xmlSerializer = xmlSerializer; _xmlSerializer = xmlSerializer;
_socketListener = socketListener; _socketListener = socketListener;
ServiceController = serviceController;
_socketListener.WebSocketConnected = OnWebSocketConnected; _socketListener.WebSocketConnected = OnWebSocketConnected;
_funcParseFn = t => s => JsvReader.GetParseFn(t)(s); _funcParseFn = t => s => JsvReader.GetParseFn(t)(s);
@ -90,7 +93,7 @@ namespace Emby.Server.Implementations.HttpServer
public string GlobalResponse { get; set; } public string GlobalResponse { get; set; }
public ServiceController ServiceController { get; private set; } public ServiceController ServiceController { get; }
public object CreateInstance(Type type) public object CreateInstance(Type type)
{ {
@ -601,7 +604,6 @@ namespace Emby.Server.Implementations.HttpServer
{ {
_webSocketListeners = listeners.ToArray(); _webSocketListeners = listeners.ToArray();
UrlPrefixes = urlPrefixes.ToArray(); UrlPrefixes = urlPrefixes.ToArray();
ServiceController = new ServiceController();
ServiceController.Init(this, serviceTypes); ServiceController.Init(this, serviceTypes);