Class: RubyEventStore::Browser::Event

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(event_store:, params:) ⇒ Event

Returns a new instance of Event.



6
7
8
9
# File 'lib/ruby_event_store/browser/event.rb', line 6

def initialize(event_store:, params:)
  @event_store = event_store
  @params      = params
end

Instance Attribute Details

#event_storeObject (readonly)

Returns the value of attribute event_store.



4
5
6
# File 'lib/ruby_event_store/browser/event.rb', line 4

def event_store
  @event_store
end

#paramsObject (readonly)

Returns the value of attribute params.



4
5
6
# File 'lib/ruby_event_store/browser/event.rb', line 4

def params
  @params
end

Instance Method Details

#as_jsonObject



11
12
13
14
15
# File 'lib/ruby_event_store/browser/event.rb', line 11

def as_json
  {
    data: JsonApiEvent.new(event).to_h
  }
end

#eventObject



17
18
19
# File 'lib/ruby_event_store/browser/event.rb', line 17

def event
  @event ||= event_store.read.event!(event_id)
end

#event_idObject



21
22
23
# File 'lib/ruby_event_store/browser/event.rb', line 21

def event_id
  params.fetch(:id)
end