Module: Sequent::Core::SerializesEvent
- Included in:
- EventRecord
- Defined in:
- lib/sequent/core/event_record.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.included(host_class) ⇒ Object
70 71 72 |
# File 'lib/sequent/core/event_record.rb', line 70 def self.included(host_class) host_class.extend(ClassMethods) end |
Instance Method Details
#event ⇒ Object
48 49 50 51 |
# File 'lib/sequent/core/event_record.rb', line 48 def event payload = Sequent::Core::Oj.strict_load(self.event_json) Class.const_get(self.event_type).deserialize_from_json(payload) end |
#event=(event) ⇒ Object
53 54 55 56 57 58 59 60 61 62 |
# File 'lib/sequent/core/event_record.rb', line 53 def event=(event) self.aggregate_id = event.aggregate_id self.sequence_number = event.sequence_number self.organization_id = event.organization_id if event.respond_to?(:organization_id) self.event_type = event.class.name self.created_at = event.created_at self.event_json = self.class.serialize_to_json(event) Sequent.configuration.event_record_hooks_class.after_serialization(self, event) end |