Skip to main content

Inlet Reference

Overview​

Inlet is the Mississippi composition and source-generation layer. For the relationship between domain metadata, generated types, and host registrations, see Generated Application Contracts.

Applies To​

  • Mississippi.Inlet.Abstractions
  • Mississippi.Inlet.Client
  • Mississippi.Inlet.Gateway
  • Mississippi.Inlet.Runtime

Verified Client Registration Surface​

These client-side Inlet extensions compose on IReservoirBuilder. Full Mississippi client apps reach them through ClientBuilder.Reservoir(...).

MethodReceiverPurpose
AddInletClient()IReservoirBuilderRegister the client projection registry, ProjectionsFeatureState, IInletStore, and IProjectionUpdateNotifier
AddProjectionPath<T>(path)IReservoirBuilderAdd an explicit projection-path mapping
AddInletBlazor()IReservoirBuilderAdd the Blazor-specific registration extension point
AddInletBlazorSignalR(...)IReservoirBuilderConfigure SignalR-driven projection refresh
AddSignalRConnectionFeature()IReservoirBuilderRegister the SignalR connection state feature

Source code:

InletBlazorSignalRBuilder​

AddInletBlazorSignalR(...) configures a dedicated InletBlazorSignalRBuilder.

Configure it inside that callback. Once its registrations are built, further configuration or another build attempt throws InvalidOperationException; a read-only parent service collection also prevents configuration. This keeps deferred projection factories bound to the configuration that was registered.

MemberPurpose
AddProjectionFetcher<TFetcher>()Use a custom IProjectionFetcher implementation
ScanProjectionDtos(params Assembly[] assemblies)Enable automatic projection DTO discovery and the auto fetcher
WithHubPath(hubPath)Set the SignalR hub path
WithRoutePrefix(prefix)Set the HTTP projection route prefix used by the auto fetcher

AddInletBlazorSignalR(...) also adds the SignalR connection feature automatically during Build().

Source code:

Generated Client Method Shapes​

The current Inlet client generators emit builder-based client registrations.

GeneratorGenerated method shapeReceiver
Command client generatorAdd{Aggregate}AggregateFeature()IReservoirBuilder
Saga client generatorAdd{Saga}SagaFeature()IReservoirBuilder
Projection client generatorAddProjectionsFeature()IReservoirBuilder
Domain client generatorAdd{Domain}Client()ClientBuilder

Source code:

Verified Ownership Boundary​

  • Shared abstractions for projection paths and related metadata
  • Client support for projection state and subscriptions
  • Gateway support for generated APIs and SignalR delivery
  • Runtime support for discovery and generated registrations
  • Source generators that align those layers

Defaults And Constraints​

This reference covers the verified subsystem boundary and the current client-side builder surface. Inlet client registrations assume a Reservoir builder exists; full Mississippi client apps create that builder by starting with UseMississippi(...) and then using Reservoir(...).

Failure Behavior​

Client terminal attachment uses BuilderValidationException with stable diagnostic codes and remediation text. See Client Composition for the attachment contract and failure behavior.

For generator and runtime registration failure behavior, refer to the Inlet Operations page. Generator misalignment typically surfaces at compile time.

Summary​

Use this page as the current active reference for Inlet's builder-based client registrations and the generated client method shapes that compose through ClientBuilder and IReservoirBuilder.

Next Steps​