Interface IMessage<T>
- Namespace
- Savvyio.Messaging
- Assembly
- Savvyio.Core.dll
Defines a generic way to wrap an IRequest inside a message.
public interface IMessage<out T> : IAcknowledgeable where T : IRequest
Type Parameters
T
The type of the payload constraint to the IRequest interface.
- Inherited Members
- Extension Methods
Remarks
Inspired by cloudevents.io (https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md) default attributes.
Properties
Data
Gets the payload of the message.
T Data { get; }
Property Value
- T
The payload of the message.
Id
Gets the identifier of the message. When combined with Source, this enables deduplication.
string Id { get; }
Property Value
- String
The identifier of the message.
Source
Gets the context that describes the origin of the message. When combined with Id, this enables deduplication.
string Source { get; }
Property Value
- String
The context that describes the origin of the message.
Time
Gets the time, expressed as the Coordinated Universal Time (UTC), at which this message was generated.
DateTime? Time { get; }
Property Value
- Nullable<DateTime>
The time at which this message was generated.
Type
Gets the type that describes the type of event related to the originating occurrence.
string Type { get; }
Property Value
- String
The type that describes the type of event related to the originating occurrence.