diff options
| author | Liggy <Liggy@users.noreply.github.com> | 2019-02-20 14:24:23 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-02-20 14:24:23 +0100 |
| commit | 13bfe5093ec0d198a23d5454f0b7d8f5969a7dfb (patch) | |
| tree | 001a76a3321476095898ffc8eddf2e3e72e01dc4 /Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs | |
| parent | 5917e91447ee0d8db3055614aebf27c03ea91752 (diff) | |
| parent | 99bed9a9c3791bcff648029088d766f1dfde3a96 (diff) | |
Merge branch 'master' into populate-extras
Diffstat (limited to 'Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs')
| -rw-r--r-- | Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs | 26 |
1 files changed, 8 insertions, 18 deletions
diff --git a/Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs b/Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs index 58c4d38a2..736f9feef 100644 --- a/Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs +++ b/Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs @@ -69,7 +69,7 @@ namespace Jellyfin.Server.SocketSharp { if (_listener == null) { - _listener = new HttpListener(_logger, _cryptoProvider, _socketFactory, _networkManager, _streamHelper, _fileSystem, _environment); + _listener = new HttpListener(_logger, _cryptoProvider, _socketFactory, _streamHelper, _fileSystem, _environment); } _listener.EnableDualMode = _enableDualMode; @@ -79,22 +79,14 @@ namespace Jellyfin.Server.SocketSharp _listener.LoadCert(_certificate); } - foreach (var prefix in urlPrefixes) - { - _logger.LogInformation("Adding HttpListener prefix " + prefix); - _listener.Prefixes.Add(prefix); - } + _logger.LogInformation("Adding HttpListener prefixes {Prefixes}", urlPrefixes); + _listener.Prefixes.AddRange(urlPrefixes); - _listener.OnContext = ProcessContext; + _listener.OnContext = async c => await InitTask(c, _disposeCancellationToken).ConfigureAwait(false); _listener.Start(); } - private void ProcessContext(HttpListenerContext context) - { - _ = Task.Run(async () => await InitTask(context, _disposeCancellationToken).ConfigureAwait(false)); - } - private static void LogRequest(ILogger logger, HttpListenerRequest request) { var url = request.Url.ToString(); @@ -151,10 +143,7 @@ namespace Jellyfin.Server.SocketSharp Endpoint = endpoint }; - if (WebSocketConnecting != null) - { - WebSocketConnecting(connectingArgs); - } + WebSocketConnecting?.Invoke(connectingArgs); if (connectingArgs.AllowConnection) { @@ -165,6 +154,7 @@ namespace Jellyfin.Server.SocketSharp if (WebSocketConnected != null) { var socket = new SharpWebSocket(webSocketContext.WebSocket, _logger); + await socket.ConnectAsServerAsync().ConfigureAwait(false); WebSocketConnected(new WebSocketConnectEventArgs { @@ -174,7 +164,7 @@ namespace Jellyfin.Server.SocketSharp Endpoint = endpoint }); - await ReceiveWebSocket(ctx, socket).ConfigureAwait(false); + await ReceiveWebSocketAsync(ctx, socket).ConfigureAwait(false); } } else @@ -192,7 +182,7 @@ namespace Jellyfin.Server.SocketSharp } } - private async Task ReceiveWebSocket(HttpListenerContext ctx, SharpWebSocket socket) + private async Task ReceiveWebSocketAsync(HttpListenerContext ctx, SharpWebSocket socket) { try { |
