/// <summary> /// Adds the provided middleware for task orchestrations. /// </summary> /// <param name="builder">The builder to add to, not null.</param> /// <param name="descriptor">The middleware descriptor to add.</param> /// <returns>This instance, for chaining calls.</returns> public static ITaskHubWorkerBuilder UseOrchestrationMiddleware( this ITaskHubWorkerBuilder builder, TaskMiddlewareDescriptor descriptor) { Check.NotNull(builder, nameof(builder)); Check.NotNull(descriptor, nameof(descriptor)); builder.OrchestrationMiddleware.Add(descriptor); return(builder); }
/// <inheritdoc /> public ITaskHubWorkerBuilder UseActivityMiddleware(TaskMiddlewareDescriptor descriptor) { Check.NotNull(descriptor, nameof(descriptor)); _activitiesMiddleware.Add(descriptor.Type); return(this); }
/// <inheritdoc /> public ITaskHubWorkerBuilder UseOrchestrationMiddleware(TaskMiddlewareDescriptor descriptor) { Check.NotNull(descriptor, nameof(descriptor)); _orchestrationsMiddleware.Add(descriptor.Type); return(this); }
private static Func <DispatchMiddlewareContext, Func <Task>, Task> WrapMiddleware( TaskMiddlewareDescriptor descriptor) { return((context, next) => TaskMiddlewareRunner.RunAsync(descriptor, context, next)); }