Namespace Silverback.Messaging.Messages
Classes
BinaryFileMessage
Represents a binary file that is being transferred over the message broker.
DefaultMessageHeaders
Contains the constants with the names of the standard message headers used by Silverback.
EnvelopeFactory
Can be used to instantiate an IOutboundEnvelope or an IInboundEnvelope.
HeaderAttribute
Used to decorate a property which value must be produced/consumed as message header.
KafkaKeyMemberAttribute
The values of the properties decorated with this attribute are used to build the message key that will be used by Kafka (for partitioning, compacting, etc.).
KafkaMessageHeaders
Contains the constants with the names of the Kafka specific message headers used by Silverback.
MessageHeader
An header added to the message being sent over a message broker.
MessageHeaderCollection
A modifiable collection of message headers.
MessageHeaderEnumerableExtensions
Add some helper methods to the IEnumerable<T> of MessageHeader.
MessagesSource<TBaseEvent>
The default generic implementation of IMessagesSource. It contains some protected methods to add the internal events to a temporary collection exposed via the IMessagesSource implementation.
RabbitMessageHeaders
Contains the constants with the names of the RabbitMQ specific message headers used by Silverback.
RabbitRoutingKeyAttribute
The value of the property decorated with this attribute will be used as routing key. The routing key can be used by RabbitMQ to route the messages to the proper queue.
Tombstone
Represents a tombstone message (a message with null body).
Tombstone<TMessage>
Represents a tombstone message (a message with null body).
TransactionAbortedEvent
The event published when an exception occurs during the processing of a (database) transaction. It is fired by the data access while saving changes (see Silverback.Core.EntityFrameworkCore) and it is internally used (in Silverback.Integration) to trigger additional tasks related to the publishing of the domain events.
TransactionCompletedEvent
The event published when a (database) transaction is completed and committed. It is fired by the data access after saving changes (see Silverback.Core.EntityFrameworkCore) and it is internally used (in Silverback.Integration) to trigger additional tasks related to the publishing of the domain events.
TransactionStartedEvent
The event published when a (database) transaction is being started. It is fired by the data access before saving changes (see Silverback.Core.EntityFrameworkCore) and it is internally used (in Silverback.Integration) to trigger additional tasks related to the publishing of the domain events.
Interfaces
IBinaryFileMessage
Represents a binary file that is being transferred over the message broker.
IBrokerEnvelope
Wraps the deserialized inbound or outbound message.
ICommand
Represents a message that triggers an action.
ICommand<TResult>
Represents a message that triggers an action with a result TResult
.
IEnvelope
Wraps a message when it's being transferred over a message broker.
IEvent
Represents a message that notifies an event.
IInboundEnvelope
Wraps the message that is being consumed from an inbound endpoint.
IInboundEnvelope<TMessage>
Wraps the message that is being consumed from an inbound endpoint.
IIntegrationCommand
Represents a message that is sent over the message broker to trigger an action.
IIntegrationEvent
Represents a message that is sent over the message broker to notify an event.
IIntegrationMessage
Represents a message that is sent over the message broker. It is further specialized as IIntegrationEvent and IIntegrationCommand.
ILazyMessageStreamEnumerable<TMessage>
Represent a future IMessageStreamEnumerable<TMessage>, that will created as soon as the first message is pushed.
IMessage
This marker interface is used to tell Silverback that the type is actually a message and enable features like automatic republishing. It is a good practice for all messages to implement this interface but it's not mandatory.
IMessageStreamEnumerable<TMessage>
Represent a stream of messages being published through the internal bus. It is an enumerable that is asynchronously pushed with messages.
IMessageStreamObservable<TMessage>
Represent a stream of messages being published through the internal bus. It is an observable that is asynchronously pushed with messages.
IMessageStreamProvider
Relays the streamed messages to all the linked MessageStreamEnumerable<TMessage>.
IMessageWithSource
Exposes a Source
property referencing the object that generated the message.
IMessagesSource
Exposes the methods to retrieve a list of messages associated with the object implementing this interface.
IOutboundEnvelope
Wraps the message that is being produced to an outbound endpoint.
IOutboundEnvelope<TMessage>
Wraps the message that is being produced to an outbound endpoint.
IQuery<TResult>
Represents a message that queries a result of type TResult
.
IRawBrokerEnvelope
Wraps the serialized inbound or outbound message.
IRawInboundEnvelope
Wraps the message that is being consumed from an inbound endpoint.
IRawOutboundEnvelope
Wraps the message that is being produced to an outbound endpoint.
ISilverbackEvent
An event that is triggered internally by Silverback.