grpc / grpc/grpc-java

Method type specific MethodDescriptor wrapper

Abierto
#6,252 2 comentarios 0 reacciones 0 asignados Ver en GitHub
enhancement
Lenguaje dominante
Java
Estrellas
12.1k
Forks
4k
Merge medio
2 d 17 h
PR fusionados (30 d)
37

Descripción

### Is your feature request related to a problem? Please describe.

It would be great if MethodDescriptors would be wrapped in method type specific class/interface, similar to RequestMethods. It would enable gRPC tooling to know what type of method it is at compile type, so it would be possible to return appropriate action interfaces based on the method type (does method have single/multiple request/responses). This would help to reduce the tools API verbosity and a bit of complexity.

### Describe alternatives you've considered
Current approach is to have differently named methods (unaryMethod(), serverStreamingMethod(), ...) and check if appropriate method type is passed at runtime.

### Additional context

I'm trying to create a gRPC method mocking tool for easier testing - [gRPCMock](https://github.com/Fadelis/grpcmock/). This feature would help determining what type of stub needs to be returned and have single name method for all types.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza revisando las API existentes de MethodDescriptor y RequestMethods; después, rastrea cómo las herramientas de grpc-java distinguen actualmente los tipos de método. Define el alcance de los wrappers específicos de cada método y el comportamiento en tiempo de compilación que deben proporcionar; el trabajo estará terminado cuando la API admita las cuatro formas de métodos de solicitud/respuesta sin depender de comprobaciones en tiempo de ejecución.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
grpc, java
Área
api, developer-experience
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.