static string DecompressFrame(IExtension extn, params byte[] data) { var handler = new TcpHandler(); var ctx = new NetContext(delegate { }, handler); if (extn == null) { extn = PerFrameDeflate.Default.CreateExtension("deflate-frame"); } var frame = new WebSocketsFrame { OpCode = WebSocketsFrame.OpCodes.Text, Payload = new MemoryStream(data), PayloadLength = data.Length, Reserved1 = true }; var connection = new WebSocketConnection(new IPEndPoint(IPAddress.Loopback, 20000)); var decoded = extn.ApplyIncoming(ctx, connection, frame).Single(); return(ReadFrameMessage(decoded)); }
static string DecompressFrame(IExtension extn, params byte[] data) { var handler = new TcpHandler(); var ctx = new NetContext(delegate { }, handler); if (extn == null) extn = PerFrameDeflate.Default.CreateExtension("deflate-frame"); var frame = new WebSocketsFrame { OpCode = WebSocketsFrame.OpCodes.Text, Payload = new MemoryStream(data), PayloadLength = data.Length, Reserved1 = true }; var connection = new WebSocketConnection(new IPEndPoint(IPAddress.Loopback, 20000)); var decoded = extn.ApplyIncoming(ctx, connection, frame).Single(); return ReadFrameMessage(decoded); }