diff options
Diffstat (limited to 'MediaBrowser.Server.Implementations/ServerManager/ServerManager.cs')
| -rw-r--r-- | MediaBrowser.Server.Implementations/ServerManager/ServerManager.cs | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/MediaBrowser.Server.Implementations/ServerManager/ServerManager.cs b/MediaBrowser.Server.Implementations/ServerManager/ServerManager.cs index dcfb9c449..6428d10a9 100644 --- a/MediaBrowser.Server.Implementations/ServerManager/ServerManager.cs +++ b/MediaBrowser.Server.Implementations/ServerManager/ServerManager.cs @@ -1,11 +1,14 @@ -using MediaBrowser.Controller; +using MediaBrowser.Common.Events; +using MediaBrowser.Controller; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Net; +using MediaBrowser.Model.Events; using MediaBrowser.Model.Logging; using MediaBrowser.Model.Net; using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; +using System.Collections.Specialized; using System.Linq; using System.Net.Sockets; using System.Threading; @@ -44,6 +47,8 @@ namespace MediaBrowser.Server.Implementations.ServerManager get { return _webSocketConnections; } } + public event EventHandler<GenericEventArgs<IWebSocketConnection>> WebSocketConnected; + /// <summary> /// The _logger /// </summary> @@ -140,10 +145,17 @@ namespace MediaBrowser.Server.Implementations.ServerManager { var connection = new WebSocketConnection(e.WebSocket, e.Endpoint, _jsonSerializer, _logger) { - OnReceive = ProcessWebSocketMessageReceived + OnReceive = ProcessWebSocketMessageReceived, + Url = e.Url, + QueryString = new NameValueCollection(e.QueryString) }; _webSocketConnections.Add(connection); + + if (WebSocketConnected != null) + { + EventHelper.FireEventIfNotNull(WebSocketConnected, this, new GenericEventArgs<IWebSocketConnection> (connection), _logger); + } } /// <summary> |
