Azure / Azure/azure-functions-java-worker

reorder arguments resolving logics to full support middleware - V5 - breaking change.

Abierto
#648 0 comentarios 0 reacciones 1 asignado Reclamado por @kaibocai Ver en GitHub
Enhancement Needs: Triage (Functions) reviewed V5
Lenguaje dominante
Java
Estrellas
103
Forks
74
Merge medio
4 d 8 h
PR fusionados (30 d)
2

Descripción

For today's middleware support logics we are convert the parameter payload to String for middleware to consume during the invocation request at https://github.com/Azure/azure-functions-java-worker/blob/679e5618010d6c3b68b48654048c268b7274a116/src/main/java/com/microsoft/azure/functions/worker/binding/ExecutionContextDataSource.java#L120,

This has limitation as middleware is getting the payload that already got transferred to String type. Middleware may want to use the original type of parameter payload which build by java worker. I see from two advantages of this approach:
- Give more fliexibility to middleware when they want to play around the input parameter payload, not only restrict payload type to String.
- Reduce the repeat work we already did in the worker - convert the payload type from GRPC type to corresponding java type. Currently without this we are trying to did the same worker for middleware only different we convert all GRPC type to String.

Attached the potential PR here https://github.com/Azure/azure-functions-java-worker/tree/kaibocai/v5-bench

Potential break changes:

- Unique Parameter Name: https://github.com/Azure/azure-functions-java-worker/blob/305a00a0ce322c72a49a0f779dde1c41d37a5fc7/src/main/java/com/microsoft/azure/functions/worker/broker/ParameterResovler.java#L23

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.