public override async Task HandleMessageAsync(MessageHeader header, LXWebSocket socket, CancellationToken cancellationToken) { var content = new byte[header.Length]; await socket.ReceiveAtomicAsync(new ArraySegment <byte>(content), true, cancellationToken).ConfigureAwait(false); var s = LXWebSocket.Encoding.GetString(content); base.TrySetResult(s); }
public override async Task HandleMessageAsync(MessageHeader header, LXWebSocket socket, CancellationToken cancellationToken) { var content = new byte[header.Length]; await socket.ReceiveAtomicAsync(new ArraySegment <byte>(content), true, cancellationToken).ConfigureAwait(false); var s = LXWebSocket.Encoding.GetString(content); if (Decoder != null) { s = Decoder.DecodeCommand(s); } var response = LXResponse <T> .Deserialize(s); base.TrySetResult(response); }