Class: Evostream::Event

Inherits:
Object
  • Object
show all
Defined in:
lib/evostream/event.rb

Overview

Reacts to event

Constant Summary collapse

EVENTS =
Evostream::Events::Event.descendants

Instance Method Summary collapse

Constructor Details

#initialize(type, payload) ⇒ Event

Returns a new instance of Event.



39
40
41
42
# File 'lib/evostream/event.rb', line 39

def initialize(type, payload)
  @payload = payload
  @model = type.sub(/^(\w)/, &:capitalize)
end

Instance Method Details

#execute_actionObject



44
45
46
47
48
# File 'lib/evostream/event.rb', line 44

def execute_action
  klass = "Evostream::Events::#{@model}".constantize
  Evostream.logger "Execute Action : #{klass}"
  execute_klass(klass) if EVENTS.include?(klass)
end