LiteBus
CatalogDispatch

Dispatch Axis Capability Catalog

Dispatch adapters turn a leased durable envelope into a side effect. Inbox processors call IInboxDispatcher.DispatchAsync; outbox processors call IOutboxDispatcher.DispatchAsync. The processor persists outcome state after dispatch returns or throws.

The dispatch axis sits between durable processing and execution targets. It never accepts new messages, never owns store schema, and never decides retry budgets. Those responsibilities belong to ingress, storage, and durable core capabilities.

Axis Overview

Inbox storage lease
  -> PipelinedInboxProcessor
  -> IInboxDispatcher
     -> in-process command mediator
     -> transport publish (AMQP, Azure Service Bus, AWS SQS, Kafka, InMemory)

Outbox storage lease
  -> PipelinedOutboxProcessor
  -> IOutboxDispatcher
     -> in-process event mediator
     -> transport publish with canonical headers

Register exactly one dispatcher per inbox or outbox module. Processor background services fail at startup when no dispatcher is registered (LB1014 at compile time when the pattern is detectable).

Dependency Diagram

dispatch.registration
  -> dispatch.processor-coupling
  -> dispatch.transport-core
     -> dispatch.transport-envelope-mapping
     -> dispatch.inbox.amqp / dispatch.outbox.amqp
     -> dispatch.inbox.azure-service-bus / dispatch.outbox.azure-service-bus
     -> dispatch.inbox.aws-sqs / dispatch.outbox.aws-sqs
     -> dispatch.inbox.kafka / dispatch.outbox.kafka
     -> dispatch.inbox.inmemory / dispatch.outbox.inmemory
  -> dispatch.inbox.in-process
  -> dispatch.outbox.in-process

Capability Index

IDNameMaturity
dispatch.registrationDispatcher registrationGA
dispatch.processor-couplingProcessor pipeline couplingGA
dispatch.transport-coreShared transport dispatchersGA
dispatch.transport-envelope-mappingEnvelope-to-wire header mappingGA
dispatch.inbox.in-processInbox in-process command dispatchGA
dispatch.outbox.in-processOutbox in-process event dispatchGA
dispatch.inbox.amqpInbox AMQP dispatchGA
dispatch.outbox.amqpOutbox AMQP dispatchGA
dispatch.inbox.azure-service-busInbox Azure Service Bus dispatchGA
dispatch.outbox.azure-service-busOutbox Azure Service Bus dispatchGA
dispatch.inbox.aws-sqsInbox AWS SQS dispatchGA
dispatch.outbox.aws-sqsOutbox AWS SQS dispatchGA
dispatch.inbox.kafkaInbox Kafka dispatchGA
dispatch.outbox.kafkaOutbox Kafka dispatchGA
dispatch.inbox.inmemoryInbox InMemory transport dispatchGA
dispatch.outbox.inmemoryOutbox InMemory transport dispatchGA

Catalog Page Template

Each capability page includes:

  • Header: ID, Name, Maturity, Summary
  • What it does: behavior and deployment patterns
  • Public surface: registration extensions, options tables, key methods
  • Packages / Requires / Invariants / Non-goals
  • Observability: activity names, meter names, instrument names, tags
  • Test coverage: Covered, Untested, Out-of-scope
  • Deep docs: long-form docs and integration test matrix links

Primary test projects referenced across capability pages:

ProjectFoldersRole
LiteBus.Durable.IntegrationTestsDispatch/Inbox/*, Dispatch/Outbox/*, Registration/Broker dispatch end-to-end and registration matrix
LiteBus.Inbox.UnitTestsDispatch/, Dispatch/InProcess/Inbox dispatcher and mapper unit coverage
LiteBus.Outbox.UnitTestsDispatch/, Dispatch/InProcess/Outbox dispatcher and mapper unit coverage
LiteBus.Storage.IntegrationTestsPostgreSql/Durable chain behavior through PostgreSQL storage

On this page