private async Task <ServerReflectionResponse> SingleRequestAsync(ServerReflectionRequest request) { var call = client.ServerReflectionInfo(); await call.RequestStream.WriteAsync(request); Assert.IsTrue(await call.ResponseStream.MoveNext()); var response = call.ResponseStream.Current; await call.RequestStream.CompleteAsync(); Assert.IsFalse(await call.ResponseStream.MoveNext()); return(response); }
ServerReflectionResponse ProcessRequest(ServerReflectionRequest request) { switch (request.MessageRequestCase) { case ServerReflectionRequest.MessageRequestOneofCase.FileByFilename: return(FileByFilename(request.FileByFilename)); case ServerReflectionRequest.MessageRequestOneofCase.FileContainingSymbol: return(FileContainingSymbol(request.FileContainingSymbol)); case ServerReflectionRequest.MessageRequestOneofCase.ListServices: return(ListServices()); case ServerReflectionRequest.MessageRequestOneofCase.AllExtensionNumbersOfType: case ServerReflectionRequest.MessageRequestOneofCase.FileContainingExtension: default: return(CreateErrorResponse(StatusCode.Unimplemented, "Request type not supported by C# reflection service.")); } }
private ServerReflectionResponse ProcessRequest(ServerReflectionRequest request) => request.MessageRequestCase switch {
static async Task <ServerReflectionResponse> SingleRequestAsync(ServerReflection.ServerReflectionClient client, ServerReflectionRequest request) { var call = client.ServerReflectionInfo(); await call.RequestStream.WriteAsync(request); Debug.Assert(await call.ResponseStream.MoveNext()); var response = call.ResponseStream.Current; await call.RequestStream.CompleteAsync(); return(response); }
ServerReflectionResponse ProcessRequest(ServerReflectionRequest request) { switch (request.MessageRequestCase) { case ServerReflectionRequest.MessageRequestOneofCase.FileByFilename: return FileByFilename(request.FileByFilename); case ServerReflectionRequest.MessageRequestOneofCase.FileContainingSymbol: return FileContainingSymbol(request.FileContainingSymbol); case ServerReflectionRequest.MessageRequestOneofCase.ListServices: return ListServices(); case ServerReflectionRequest.MessageRequestOneofCase.AllExtensionNumbersOfType: case ServerReflectionRequest.MessageRequestOneofCase.FileContainingExtension: default: return CreateErrorResponse(StatusCode.Unimplemented, "Request type not supported by C# reflection service."); } }
private async Task<ServerReflectionResponse> SingleRequestAsync(ServerReflectionRequest request) { var call = client.ServerReflectionInfo(); await call.RequestStream.WriteAsync(request); Assert.IsTrue(await call.ResponseStream.MoveNext()); var response = call.ResponseStream.Current; await call.RequestStream.CompleteAsync(); Assert.IsFalse(await call.ResponseStream.MoveNext()); return response; }