struct Aquamarine::Event

Overview

Event is a data structure representing an event in the domain.

Defined in:

aquamarine/event.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(event_id : UUID = UUID.random, data : Hash(K, V), K -> V | Nil = nil, metadata : Hash(K, V), K -> V | Nil = nil) #

Instantiates a new event.

@param metadata [Hash] Event metadata that is not part of the domain @param data [Hash] Event data that belongs to the application domain @return [Event]


[View source]
def self.new(event_id : UUID = UUID.random, data : Aquamarine::Event::Data = Aquamarine::Event::Data.new, metadata : Aquamarine::Event::Metadata = Aquamarine::Event::Metadata.new) #

[View source]
def self.new(event_id : UUID, data, metadata) #

[View source]

Instance Method Detail

def ==(event) #

Checks if given event is equal.

Two events are treated equal if:

  • they are of the same event class
  • they have identical event ID
  • they have identical event data

Event metadata is not taken into account in comparing two events.

@param event [Event] Event object to compare @return [Bool]


[View source]

[View source]
def event_id : UUID #

[View source]
def event_type : String #

[View source]

[View source]
def type #

Type of the event @return [String]


[View source]