public static TProtocol CreateReadProtocol(Stream inputStream) { var trans = new TStreamClientTransport(inputStream, null); var proto = new TBinaryProtocol(trans); return(proto); }
public static TProtocol CreateWriteProtocol(Stream inputStream, Stream outputStream) { var trans = new TStreamClientTransport(inputStream, outputStream); var proto = new TBinaryProtocol(trans); return(proto); }
public ThriftStream(Stream s) { _s = s; TClientTransport transport = new TStreamClientTransport(s, s); _protocol = new TCompactProtocol(transport); }
private static Tuple <Stream, TProtocol> GetProtocolInstance(Type protocolType) { var memoryStream = new MemoryStream(); var streamClientTransport = new TStreamClientTransport(memoryStream, memoryStream); var protocol = (TProtocol)Activator.CreateInstance(protocolType, streamClientTransport); return(new Tuple <Stream, TProtocol>(memoryStream, protocol)); }
public async Task ProcessRequestAsync(HttpContext context, CancellationToken cancellationToken) { var transport = new TStreamClientTransport(context.Request.Body, context.Response.Body); try { var input = InputProtocolFactory.GetProtocol(transport); var output = OutputProtocolFactory.GetProtocol(transport); while (await Processor.ProcessAsync(input, output, cancellationToken)) { } } catch (TTransportException) { // Client died, just move on } finally { transport.Close(); } }