Commanded.EventStore.RecordedEvent (Commanded v1.3.1) View Source

Contains the persisted stream identity, type, data, and metadata for a single event.

Events are immutable once recorded.

Recorded event fields

  • event_id - a globally unique UUID to identify the event.

  • event_number - a globally unique, monotonically incrementing and gapless integer used to order the event amongst all events.

  • stream_id - the stream identity for the event.

  • stream_version - the version of the stream for the event.

  • causation_id - an optional UUID identifier used to identify which message you are responding to.

  • correlation_id - an optional UUID identifier used to correlate related messages.

  • data - the event data deserialized into a struct.

  • metadata - a string keyed map of metadata associated with the event.

  • created_at - the datetime, in UTC, indicating when the event was created.

Link to this section Summary

Functions

Enrich the event's metadata with fields from the RecordedEvent struct and any additional metadata passed as an option.

Link to this section Types

Specs

t() :: %Commanded.EventStore.RecordedEvent{
  causation_id: uuid() | nil,
  correlation_id: uuid() | nil,
  created_at: DateTime.t(),
  data: struct(),
  event_id: uuid(),
  event_number: non_neg_integer(),
  event_type: String.t(),
  metadata: map(),
  stream_id: String.t(),
  stream_version: non_neg_integer()
}

Specs

uuid() :: String.t()

Link to this section Functions

Link to this function

enrich_metadata(event, opts)

View Source

Specs

enrich_metadata(t(), [{:additional_metadata, map()}]) :: map()

Enrich the event's metadata with fields from the RecordedEvent struct and any additional metadata passed as an option.