struct Aquamarine::Event
- Aquamarine::Event
- Struct
- Value
- Object
Overview
Event is a data structure representing an event in the domain.
Defined in:
aquamarine/event.crConstructors
-
.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.
- .new(event_id : UUID = UUID.random, data : Aquamarine::Event::Data = Aquamarine::Event::Data.new, metadata : Aquamarine::Event::Metadata = Aquamarine::Event::Metadata.new)
- .new(event_id : UUID, data, metadata)
Instance Method Summary
-
#==(event)
Checks if given event is equal.
- #data : Aquamarine::Event::Data
- #event_id : UUID
- #event_type : String
- #metadata : Aquamarine::Event::Metadata
-
#type
Type of the event @return [String]
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]
def self.new(event_id : UUID = UUID.random, data : Aquamarine::Event::Data = Aquamarine::Event::Data.new, metadata : Aquamarine::Event::Metadata = Aquamarine::Event::Metadata.new)
#
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]