-
Notifications
You must be signed in to change notification settings - Fork 185
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improved middleware support to enable Durable Functions #739
Comments
@cgillum Let's set up something in the new year to discuss this and update this thread. |
Any updates you guys could share? |
I believe it's being worked on as we speak, and I'm waiting eagerly to try it out. :) (speaking about the middleware part) |
Yes, the second item is in-progress. #798 tracks the progress of that work. |
Version 1.8.0-preview1 of
The sample project has some examples of this API usage.
|
Is it possible to update the input bindings themselves during the startup? |
Orchestrator functions in Durable Functions have some very special requirements in terms of how they deal with inputs, outputs, and invocation. In WebJobs, we were able to take advantage of abstractions like invocation handlers to inject trigger-specific middleware into the orchestrator function execution pipeline. This was needed so that we could wrap the function execution in the body of a Durable Task Framework orchestration, manipulate the function inputs and outputs, and short-circuit the function execution when an
await
is encountered for the first time. However, there are some issues with the .NET worker extensibility that make it hard for us to implement this same functionality for .NET Isolated.I looked at
IFunctionsWorkerMiddleware
, which seems to be the closest thing to invocation handlers, but there seem to be a few issues with it:IInputConverter
can be combined withIFunctionsWorkerMiddleware
.[OrchestrationTrigger]
function to their code (similar toInputConverterAttribute
, which we can place on our predefined input types).The issues above are ordered by perceived severity.
The text was updated successfully, but these errors were encountered: