Class: Events::BaseEvent
- Inherits:
-
Object
- Object
- Events::BaseEvent
- Extended by:
- Gem::Deprecate
- Defined in:
- lib/artsy-eventservice/presenters/events/base_event.rb
Instance Attribute Summary collapse
-
#object ⇒ Object
readonly
Returns the value of attribute object.
-
#properties ⇒ Object
readonly
Returns the value of attribute properties.
-
#subject ⇒ Object
readonly
Returns the value of attribute subject.
-
#verb ⇒ Object
readonly
Returns the value of attribute verb.
Instance Method Summary collapse
-
#initialize(user: nil, action:, model:) ⇒ BaseEvent
constructor
A new instance of BaseEvent.
- #json ⇒ Object
- #routing_key ⇒ Object
- #to_json ⇒ Object
Constructor Details
#initialize(user: nil, action:, model:) ⇒ BaseEvent
Returns a new instance of BaseEvent.
9 10 11 12 13 |
# File 'lib/artsy-eventservice/presenters/events/base_event.rb', line 9 def initialize(user: nil, action:, model:) @subject = user @verb = action @object = model end |
Instance Attribute Details
#object ⇒ Object (readonly)
Returns the value of attribute object.
7 8 9 |
# File 'lib/artsy-eventservice/presenters/events/base_event.rb', line 7 def object @object end |
#properties ⇒ Object (readonly)
Returns the value of attribute properties.
7 8 9 |
# File 'lib/artsy-eventservice/presenters/events/base_event.rb', line 7 def properties @properties end |
#subject ⇒ Object (readonly)
Returns the value of attribute subject.
7 8 9 |
# File 'lib/artsy-eventservice/presenters/events/base_event.rb', line 7 def subject @subject end |
#verb ⇒ Object (readonly)
Returns the value of attribute verb.
7 8 9 |
# File 'lib/artsy-eventservice/presenters/events/base_event.rb', line 7 def verb @verb end |
Instance Method Details
#json ⇒ Object
41 42 43 44 |
# File 'lib/artsy-eventservice/presenters/events/base_event.rb', line 41 def json # Deprecated, switch to to_json to_json end |
#routing_key ⇒ Object
47 48 49 |
# File 'lib/artsy-eventservice/presenters/events/base_event.rb', line 47 def routing_key "#{@object.class.to_s.downcase.gsub('::', '-')}.#{@verb}" end |
#to_json ⇒ Object
34 35 36 37 38 39 |
# File 'lib/artsy-eventservice/presenters/events/base_event.rb', line 34 def to_json JSON.generate(verb: @verb, subject: subject, object: object, properties: properties) end |