Table of Contents

Class ValidationMiddleware

Namespace
WorkflowForge.Extensions.Validation
Assembly
WorkflowForge.Extensions.Validation.dll

Middleware that validates workflow data using registered validators.

public sealed class ValidationMiddleware : IWorkflowOperationMiddleware
Inheritance
ValidationMiddleware
Implements
Inherited Members

Constructors

ValidationMiddleware(IWorkflowForgeLogger, IWorkflowValidator<object>, Func<IWorkflowFoundry, object?>, ValidationMiddlewareOptions?)

Initializes a new instance of the ValidationMiddleware class with options.

public ValidationMiddleware(IWorkflowForgeLogger logger, IWorkflowValidator<object> validator, Func<IWorkflowFoundry, object?> dataExtractor, ValidationMiddlewareOptions? options = null)

Parameters

logger IWorkflowForgeLogger

The logger for validation events.

validator IWorkflowValidator<object>

The validator to use.

dataExtractor Func<IWorkflowFoundry, object>

Function to extract data from foundry for validation.

options ValidationMiddlewareOptions

Configuration options for validation behavior.

Exceptions

ArgumentNullException

Thrown when required parameters are null.

Methods

ExecuteAsync(IWorkflowOperation, IWorkflowFoundry, object?, Func<CancellationToken, Task<object?>>, CancellationToken)

Executes validation before delegating to the next middleware.

public Task<object?> ExecuteAsync(IWorkflowOperation operation, IWorkflowFoundry foundry, object? inputData, Func<CancellationToken, Task<object?>> next, CancellationToken cancellationToken = default)

Parameters

operation IWorkflowOperation

The operation being executed.

foundry IWorkflowFoundry

The workflow foundry.

inputData object

Optional input data.

next Func<CancellationToken, Task<object>>

The next middleware delegate.

cancellationToken CancellationToken

Cancellation token.

Returns

Task<object>

A task representing the operation result.