Namespace Savvyio.EventDriven.Messaging
Publishers wrap an integration event in an IMessage<T> envelope using IntegrationEventExtensions.ToMessage<T> before routing it to a broker. Subscribers unwrap the payload and dispatch the domain event. Start with IntegrationEventExtensions.ToMessage<T> to produce the envelope from any IIntegrationEvent.
Pass the IMessage<T> to an event bus from one of the transport extension packages (NATS, RabbitMQ, Azure Queue Storage, Amazon SNS/SQS). InMemoryEventBus stands in during unit tests for any broker. Brokerless in-process dispatch goes through IntegrationEventDispatcher from Savvyio.EventDriven, which does not use a message envelope.
Availability: .NET 10 and .NET 9
Extension Members
| Type | Ext | Methods |
|---|---|---|
| T | ⬇️ | ToMessage<T> |
Classes
InMemoryEventBus
Provides an in-memory implementation of the IPublishSubscribeChannel<TRequest> interface useful for unit testing and the likes thereof.
IntegrationEventExtensions
Extension methods for the IIntegrationEvent interface.