module Apiarist::Serialization
Public Instance Methods
serialize(obj, opts = {})
click to toggle source
# File lib/apiarist/serialization.rb, line 6 def serialize(obj, opts = {}) if obj.respond_to?(:map) obj.map { |resource| serialize_object(resource, opts) } else serialize_object(obj, opts) end end
Private Instance Methods
serialize_object(obj, opts = {})
click to toggle source
# File lib/apiarist/serialization.rb, line 16 def serialize_object(obj, opts = {}) opts.assert_valid_keys(:scope, :context, :serializer) obj && opts.fetch(:serializer, serializer_class(obj.class)).new(obj, serialization_context, opts) end
serializer_class(resource_class)
click to toggle source
# File lib/apiarist/serialization.rb, line 21 def serializer_class(resource_class) "#{self.class.name.deconstantize}::#{resource_class}Serializer".constantize end