class SimpleJSONAPIDeserializer::Deserializer

Attributes

resource[R]

Public Class Methods

new(resource) click to toggle source
# File lib/simple_jsonapi_deserializer/deserializer.rb, line 3
def initialize(resource)
  @resource = resource
end

Public Instance Methods

deserialize() click to toggle source
# File lib/simple_jsonapi_deserializer/deserializer.rb, line 7
def deserialize
  return Resource.new(data, includes, cache).deserialize unless data.is_a?(Array)

  data.map do |resource|
    Resource
      .new(resource, includes, cache)
      .deserialize(without_attributes: true)
  end
rescue TypeError, NoMethodError => e
  raise ParseError, e
end

Private Instance Methods

cache() click to toggle source
# File lib/simple_jsonapi_deserializer/deserializer.rb, line 23
def cache
  Resource::Cache.new
end
data() click to toggle source
# File lib/simple_jsonapi_deserializer/deserializer.rb, line 27
def data
  resource['data'] || {}
end
includes() click to toggle source
# File lib/simple_jsonapi_deserializer/deserializer.rb, line 31
def includes
  Resource::Includes.new(resource['include'] || [])
end