public AsyncServerStreamingCall <TResponse> AsyncServerStreamingCall(TRequest request, Interceptor.AsyncServerStreamingCallContinuation <TRequest, TResponse> continuation)
        {
            _logger.Request(request);
            var rspCnt = continuation(request, _context);
            var tracingResponseStream = new TracingAsyncStreamReader <TResponse>(rspCnt.ResponseStream, _logger.Response, _logger.FinishSuccess, _logger.FinishException);
            var rspHeaderAsync        = rspCnt.ResponseHeadersAsync.ContinueWith(LogResponseHeader);

            return(new AsyncServerStreamingCall <TResponse>(tracingResponseStream, rspHeaderAsync, rspCnt.GetStatus, rspCnt.GetTrailers, rspCnt.Dispose));
        }
Example #2
0
        public AsyncServerStreamingCall <TResponse> AsyncServerStreamingCall(TRequest request, Interceptor.AsyncServerStreamingCallContinuation <TRequest, TResponse> continuation)
        {
            _tracer.Request(request, _context);
            var rspCnt = continuation(request, _context);
            var tracingResponseStream = new TracingAsyncClientStreamReader <TResponse, TRequest>(rspCnt.ResponseStream, _context, _tracer.Response, _tracer.Finish, _tracer.Exception);

            return(new AsyncServerStreamingCall <TResponse>(tracingResponseStream, rspCnt.ResponseHeadersAsync, rspCnt.GetStatus, rspCnt.GetTrailers, rspCnt.Dispose));
        }