/// <summary>
 /// Construct a new event entry from a published domain event message to enable storing the event or sending it to a
 /// remote location.
 /// <p>
 /// The given {@code serializer} will be used to serialize the payload and metadata in the given {@code eventMessage}.
 /// The type of the serialized data will be the same as the given {@code contentType}.
 /// </summary>
 /// <param name="eventMessage">The event message to convert to a serialized event entry</param>
 /// <param name="serializer">The serializer to convert the event</param>
 /// <param name="contentType">The data type of the payload and metadata after serialization</param>
 public AbstractDomainEventEntry(IDomainEventMessage <T> eventMessage, ISerializer serializer, Type contentType)
     : base(eventMessage, serializer, contentType)
 {
     _type = eventMessage.Type();
     _aggregateIdentifier = eventMessage.GetAggregateIdentifier();
     _sequenceNumber      = eventMessage.GetSequenceNumber();
 }
 /// <summary>
 /// Construct a new default domain event entry from a published domain event message to enable storing the event or
 /// sending it to a remote location. The event payload and metadata will be serialized to a byte array.
 /// <p>
 /// The given {@code serializer} will be used to serialize the payload and metadata in the given {@code
 /// eventMessage}. The type of the serialized data will be the same as the given {@code contentType}.
 /// </summary>
 /// <param name="eventMessage">The event message to convert to a serialized event entry</param>
 /// <param name="serializer">The serializer to convert the event</param>
 /// <param name="contentType">The data type of the payload and metadata after serialization</param>
 public AbstractSequencedDomainEventEntry(
     IDomainEventMessage <T> eventMessage,
     ISerializer serializer,
     Type contentType
     ) : base(eventMessage, serializer, contentType)
 {
 }
Exemple #3
0
 /// <summary>
 /// Initialize a DomainEventMessage originating from an aggregate.
 /// </summary>
 /// <param name="trackingToken">Tracking token of the event</param>
 /// <param name="delegate">Delegate domain event containing other event data</param>
 public GenericTrackedDomainEventMessage(
     ITrackingToken trackingToken,
     IDomainEventMessage <T> @delegate
     ) : this(
         trackingToken,
         @delegate.Type(),
         @delegate.GetAggregateIdentifier(),
         @delegate.GetSequenceNumber(),
         @delegate,
         @delegate.GetTimestamp()
         )
 {
 }
Exemple #4
0
 /// <summary>
 /// Construct a new default snapshot event entry from an aggregate. The snapshot payload and metadata will be
 /// serialized to a byte array.
 /// <p>
 /// The given {@code serializer} will be used to serialize the payload and metadata in the given {@code
 /// eventMessage}. The type of the serialized data will be the same as the given {@code contentType}.
 /// </summary>
 /// <param name="eventMessage"></param>
 /// <param name="serializer"></param>
 public SnapshotEventEntry(IDomainEventMessage <byte[]> eventMessage, ISerializer serializer)
     : base(eventMessage, serializer, typeof(byte[]))
 {
 }
Exemple #5
0
 public GenericTrackedDomainEventMessage(ITrackingToken trackingToken, IDomainEventMessage @delegate) : base(trackingToken, @delegate)
 {
 }