Example #1
0
        public override async Task StreamingOutputCall(StreamingOutputCallRequest request, IServerStreamWriter <StreamingOutputCallResponse> responseStream, ServerCallContext context)
        {
            await EnsureEchoMetadataAsync(context);

            EnsureEchoStatus(request.ResponseStatus, context);

            foreach (var responseParam in request.ResponseParameters)
            {
                var response = new StreamingOutputCallResponse {
                    Payload = CreateZerosPayload(responseParam.Size)
                };
                await responseStream.WriteAsync(response);
            }
        }
        public override async Task FullDuplexCall(IAsyncStreamReader <StreamingOutputCallRequest> requestStream, IServerStreamWriter <StreamingOutputCallResponse> responseStream, ServerCallContext context)
        {
            await EnsureEchoMetadataAsync(context);

            await requestStream.ForEachAsync(async request =>
            {
                EnsureEchoStatus(request.ResponseStatus, context);
                foreach (var responseParam in request.ResponseParameters)
                {
                    var response = new StreamingOutputCallResponse {
                        Payload = CreateZerosPayload(responseParam.Size)
                    };
                    await responseStream.WriteAsync(response);
                }
            });
        }
        public override async Task StreamingOutputCall(StreamingOutputCallRequest request, IServerStreamWriter <StreamingOutputCallResponse> responseStream, ServerCallContext context)
        {
            await EnsureEchoMetadataAsync(context, request.ResponseParameters.Any(rp => rp.Compressed?.Value ?? false));

            EnsureEchoStatus(request.ResponseStatus, context);

            foreach (var responseParam in request.ResponseParameters)
            {
                responseStream.WriteOptions = !(responseParam.Compressed?.Value ?? false)
                    ? new WriteOptions(WriteFlags.NoCompress)
                    : null;

                var response = new StreamingOutputCallResponse {
                    Payload = CreateZerosPayload(responseParam.Size)
                };
                await responseStream.WriteAsync(response);
            }
        }
Example #4
0
        public override async Task StreamingOutputCall(StreamingOutputCallRequest request, IServerStreamWriter <StreamingOutputCallResponse> responseStream, ServerCallContext context)
        {
            await EnsureEchoMetadataAsync(context, request.ResponseParameters.Any(rp => rp.Compressed?.Value ?? false));

            EnsureEchoStatus(request.ResponseStatus, context);

            foreach (var responseParam in request.ResponseParameters)
            {
                // TODO(JamesNK): Remove nullable override after Grpc.Core.Api update
#pragma warning disable CS8601 // Possible null reference assignment.
                responseStream.WriteOptions = !(responseParam.Compressed?.Value ?? false)
                    ? new WriteOptions(WriteFlags.NoCompress)
                    : null;
#pragma warning restore CS8601 // Possible null reference assignment.

                var response = new StreamingOutputCallResponse {
                    Payload = CreateZerosPayload(responseParam.Size)
                };
                await responseStream.WriteAsync(response);
            }
        }