class EventSource::Event
Attributes
created_at[R]
data[R]
entity_id[R]
entity_type[R]
name[R]
Public Class Methods
build_from_data(data)
click to toggle source
# File lib/event_source/event.rb, line 9 def build_from_data(data) event = self.new event.send(:new_from_data, data) event end
create(name, entity, args)
click to toggle source
# File lib/event_source/event.rb, line 15 def create(name, entity, args) event = self.new event.send(:new_from_entity, name, entity, args) event end
Public Instance Methods
get_args()
click to toggle source
# File lib/event_source/event.rb, line 22 def get_args JSON.parse(data) end
save()
click to toggle source
# File lib/event_source/event.rb, line 26 def save raise CannotSaveRebuiltEvent if @is_rebuilt EventSource::EventRepository.current.save(self) end
Private Instance Methods
new_from_data(data)
click to toggle source
# File lib/event_source/event.rb, line 43 def new_from_data(data) @name = data[:name] @entity_id = data[:entity_id] @data = data[:data] @created_at = data[:created_at] @entity_type = data[:entity_type] @is_rebuilt = true end
new_from_entity(name, entity, args)
click to toggle source
# File lib/event_source/event.rb, line 33 def new_from_entity(name, entity, args) @name = name.to_s @entity_id = entity.uid @data = args.to_json @created_at = Time.now @entity_type = entity.class.to_s.underscore @is_rebuilt = false end