Table of Contents

Class AuditMiddleware

Namespace
WorkflowForge.Extensions.Audit
Assembly
WorkflowForge.Extensions.Audit.dll

Middleware that captures audit information for workflow operations.

public sealed class AuditMiddleware : IWorkflowOperationMiddleware
Inheritance
AuditMiddleware
Implements
Inherited Members

Constructors

AuditMiddleware(IAuditProvider, AuditMiddlewareOptions, ISystemTimeProvider?, string?)

Initializes a new instance of the AuditMiddleware class.

public AuditMiddleware(IAuditProvider auditProvider, AuditMiddlewareOptions options, ISystemTimeProvider? timeProvider = null, string? initiatedBy = null)

Parameters

auditProvider IAuditProvider

The audit provider for storing audit entries.

options AuditMiddlewareOptions

Configuration options for audit behavior.

timeProvider ISystemTimeProvider

Optional time provider for timestamps.

initiatedBy string

Optional user/system identifier that initiated the workflow.

Exceptions

ArgumentNullException

Thrown when required parameters are null.

Methods

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

Executes the middleware, capturing audit information before and after operation execution.

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

Parameters

operation IWorkflowOperation
foundry IWorkflowFoundry
inputData object
next Func<CancellationToken, Task<object>>
cancellationToken CancellationToken

Returns

Task<object>