class EvilEvents::Core::Events::Serializers::Base::EventSerializationState

@api private @since 0.4.0

Attributes

id[R]

@return [String, Integer, Object]

@api private @since 0.4.0

metadata[R]

@return [::Hash]

@api private @since 0.4.0

payload[R]

@return [::Hash]

@api private @since 0.4.0

type[R]

@return [String]

@api private @since 0.4.0

Public Class Methods

build_from_event(event) click to toggle source

@param event [EvilEvents::Core::Event::AbstractEvent] @return [EventSerializationState]

@api private @since 0.4.0

# File lib/evil_events/core/events/serializers/base/event_serialization_state.rb, line 13
def build_from_event(event)
  new(id: event.id, type: event.type, payload: event.payload, metadata: event.metadata)
end
build_from_options(**options) click to toggle source

@option id [String,Integer,Object] @option type [String] @option payload [::Hash] @option metadata [::Hash] @return [EventSerializationState]

@api private @since 0.4.0

# File lib/evil_events/core/events/serializers/base/event_serialization_state.rb, line 25
def build_from_options(**options)
  new(**options)
end
new(id:, type:, payload:, metadata:) click to toggle source

@option id [String,Integer,Object] @option type [String] @option payload [::Hash] @option metadata [::Hash]

@api private @since 0.4.0

# File lib/evil_events/core/events/serializers/base/event_serialization_state.rb, line 61
def initialize(id:, type:, payload:, metadata:)
  @id       = id
  @type     = type
  @payload  = payload
  @metadata = metadata
end

Public Instance Methods

valid?() click to toggle source

@return [Boolean]

@api private @since 0.4.0

# File lib/evil_events/core/events/serializers/base/event_serialization_state.rb, line 72
def valid?
  return false unless type && payload && metadata
  return false unless payload.is_a?(::Hash)
  return false unless metadata.is_a?(::Hash)
  return false unless type.is_a?(String)
  true
end