Class QueryActivityPipelineBehavior<TQuery, TResponse>
- Namespace
- SimpleMediator
- Assembly
- SimpleMediator.dll
Emits tracing activities for queries and labels functional failures.
public sealed class QueryActivityPipelineBehavior<TQuery, TResponse> : IQueryPipelineBehavior<TQuery, TResponse>, IPipelineBehavior<TQuery, TResponse> where TQuery : IQuery<TResponse>
Type Parameters
TQueryQuery type being observed.
TResponseResponse type returned by the handler.
- Inheritance
-
QueryActivityPipelineBehavior<TQuery, TResponse>
- Implements
-
IQueryPipelineBehavior<TQuery, TResponse>IPipelineBehavior<TQuery, TResponse>
- Inherited Members
Examples
services.AddSingleton<IFunctionalFailureDetector, ApplicationFunctionalFailureDetector>();
services.AddSimpleMediator(cfg => cfg.AddPipelineBehavior(typeof(QueryActivityPipelineBehavior<,>)), assemblies);
Remarks
Similar to CommandActivityPipelineBehavior<TCommand, TResponse> but focused on queries, which helps correlate reads across OpenTelemetry traces.
Constructors
QueryActivityPipelineBehavior(IFunctionalFailureDetector)
Emits tracing activities for queries and labels functional failures.
public QueryActivityPipelineBehavior(IFunctionalFailureDetector failureDetector)
Parameters
failureDetectorIFunctionalFailureDetector
Examples
services.AddSingleton<IFunctionalFailureDetector, ApplicationFunctionalFailureDetector>();
services.AddSimpleMediator(cfg => cfg.AddPipelineBehavior(typeof(QueryActivityPipelineBehavior<,>)), assemblies);
Remarks
Similar to CommandActivityPipelineBehavior<TCommand, TResponse> but focused on queries, which helps correlate reads across OpenTelemetry traces.
Methods
Handle(TQuery, IRequestContext, RequestHandlerCallback<TResponse>, CancellationToken)
Executes the behavior logic around the next pipeline element.
public ValueTask<Either<MediatorError, TResponse>> Handle(TQuery request, IRequestContext context, RequestHandlerCallback<TResponse> nextStep, CancellationToken cancellationToken)
Parameters
requestTQueryRequest being processed.
contextIRequestContextAmbient context with correlation ID, user info, tenant info, etc.
nextStepRequestHandlerCallback<TResponse>Callback to the next behavior or handler.
cancellationTokenCancellationTokenToken to cancel the flow.
Returns
- ValueTask<Either<MediatorError, TResponse>>
Final result or the modified response from the behavior.