class EvilEvents::Core::Events::Serializers::XML::Unpacker

@api private @since 0.4.0

Public Instance Methods

call(serialized_event) click to toggle source

@param serialized_event [String] @raise [EvilEvents::XMLDeserializationError] @return [EvilEvents::Core::Events::AbstractEvent]

@see Base::DataTransformer

@api private @since 0.4.0

# File lib/evil_events/core/events/serializers/xml/unpacker.rb, line 16
def call(serialized_event)
  raise EvilEvents::XMLDeserializationError unless serialized_event.is_a?(String)
  serialization_state = engine.load(serialized_event)
  raise EvilEvents::XMLDeserializationError unless serialization_state.valid?
  restore_event_instance(serialization_state)
end