Пример #1
0
        public AsyncServerStreamingCall <FlightResult> DoAction(FlightAction action, Metadata headers = null)
        {
            var stream       = _client.DoAction(action.ToProtocol(), headers);
            var streamReader = new StreamReader <Protocol.Result, FlightResult>(stream.ResponseStream, result => new FlightResult(result));

            return(new AsyncServerStreamingCall <FlightResult>(streamReader, stream.ResponseHeadersAsync, stream.GetStatus, stream.GetTrailers, stream.Dispose));
        }
        public override Task DoAction(Protocol.Action request, IServerStreamWriter <Protocol.Result> responseStream, ServerCallContext context)
        {
            var action      = new FlightAction(request);
            var writeStream = new StreamWriter <FlightResult, Protocol.Result>(responseStream, result => result.ToProtocol());

            return(_flightServer.DoAction(action, writeStream, context));
        }
Пример #3
0
        public override async Task DoAction(FlightAction request, IAsyncStreamWriter <FlightResult> responseStream, ServerCallContext context)
        {
            switch (request.Type)
            {
            case "test":
                await responseStream.WriteAsync(new FlightResult("test data"));

                break;

            default:
                throw new NotImplementedException();
            }
        }
Пример #4
0
        public override Task DoAction(
            FlightAction request,
            IAsyncStreamWriter <FlightResult> responseStream,
            ServerCallContext context
            )
        {
            if (request.Type == "clear")
            {
                _flightData.Flights.Clear();
                _flightData.Tables.Clear();
            }
            else
            {
                throw new RpcException(new Status(StatusCode.InvalidArgument, "Action does not exist."));
            }

            return(Task.CompletedTask);
        }
Пример #5
0
 public virtual Task DoAction(FlightAction request, IAsyncStreamWriter <FlightResult> responseStream, ServerCallContext context)
 {
     throw new NotImplementedException();
 }