class EvilEvents::Core::Events::AbstractEvent

@abstract @api private @since 0.1.0

Attributes

id[R]

@return [String]

@api public @since 0.1.0

Public Class Methods

new(id: nil, payload: {}, metadata: {}) click to toggle source

@option payload [Hash] @option metadata [Hash]

@since 0.1.0

# File lib/evil_events/core/events/abstract_event.rb, line 39
def initialize(id: nil, payload: {}, metadata: {})
  @id       = id || EvilEvents::Shared::Crypto.uuid
  @payload  = build_payload(**payload)
  @metadata = build_metadata(**metadata)
end

Public Instance Methods

metadata() click to toggle source

@return [Hash]

@api public @since 0.1.0

# File lib/evil_events/core/events/abstract_event.rb, line 57
def metadata
  @metadata.to_h
end
payload() click to toggle source

@return [Hash]

@api public @since 0.1.0

# File lib/evil_events/core/events/abstract_event.rb, line 49
def payload
  @payload.to_h
end