コード例 #1
0
ファイル: TestServiceImpl.cs プロジェクト: larsonmpdx/grpc
 public async Task StreamingOutputCall(StreamingOutputCallRequest request, IServerStreamWriter<StreamingOutputCallResponse> responseStream, ServerCallContext context)
 {
     foreach (var responseParam in request.ResponseParameters)
     {
         var response = new StreamingOutputCallResponse { Payload = CreateZerosPayload(responseParam.Size) };
         await responseStream.WriteAsync(response);
     }
 }
コード例 #2
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);
            }
        }
コード例 #3
0
ファイル: TestServiceImpl.cs プロジェクト: larsonmpdx/grpc
 public async Task FullDuplexCall(IAsyncStreamReader<StreamingOutputCallRequest> requestStream, IServerStreamWriter<StreamingOutputCallResponse> responseStream, ServerCallContext context)
 {
     await requestStream.ForEachAsync(async request =>
     {
         foreach (var responseParam in request.ResponseParameters)
         {
             var response = new StreamingOutputCallResponse { Payload = CreateZerosPayload(responseParam.Size) };
             await responseStream.WriteAsync(response);
         }
     });
 }
コード例 #4
0
ファイル: TestServiceImpl.cs プロジェクト: sbauer/AspNetCore
    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);
            }
        });
    }
コード例 #5
0
ファイル: TestServiceImpl.cs プロジェクト: sbauer/AspNetCore
    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);
        }
    }