Skip to main content

IDispatcherBuilder

Namespace: RA.Utilities.Dispatcher.Abstractions

IDispatcherBuilder is the shared contract behind the fluent builders in the Builders namespace. You rarely reference it directly — the concrete builders implement it.

📦 Type Definition​

public interface IDispatcherBuilder
{
IServiceCollection Services { get; }
}

🎯 Purpose​

The builder pattern needs a common shape so tooling and extension methods can target any dispatch builder — request/response, request-only, or notification — without knowing the concrete generic arity. IDispatcherBuilder exposes the single thing every builder holds: the IServiceCollection being configured.

🏗️ Implementations​

BuilderPurpose
DispatcherBuilder<TRequest>Configures a request without a response
DispatcherBuilder<TRequest, TResponse>Configures a request with a response
NotificationDispatcherBuilder<TNotification>Configures a notification and its handlers/behaviors