Class: EventStoreClient::Mapper::Default

Inherits:
Object
  • Object
show all
Defined in:
lib/event_store_client/mapper/default.rb

Instance Method Summary collapse

Instance Method Details

#deserialize(event) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/event_store_client/mapper/default.rb', line 15

def deserialize(event, **)
   = serializer.deserialize(event.)
  data = serializer.deserialize(event.data)

  event_class =
    begin
      Object.const_get(event.type)
    rescue NameError
      EventStoreClient.config.default_event_class
    end
  event_class.new(
    skip_validation: true,
    id: event.id,
    type: event.type,
    title: event.title,
    data: data,
    metadata: 
  )
end

#serialize(event) ⇒ Object



6
7
8
9
10
11
12
13
# File 'lib/event_store_client/mapper/default.rb', line 6

def serialize(event)
  Event.new(
    id: event.respond_to?(:id) ? event.id : nil,
    type: (event.respond_to?(:type) ? event.type : nil) || event.class.to_s,
    data: serializer.serialize(event.data),
    metadata: serializer.serialize(event.)
  )
end