class SimpleJSONAPIDeserializer::Resource::Includes

Attributes

includes[R]

Public Class Methods

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

Public Instance Methods

find(id, type) click to toggle source
# File lib/simple_jsonapi_deserializer/resource/includes.rb, line 8
def find(id, type)
  indexed_includes.dig(type, id)
end

Private Instance Methods

indexed_includes() click to toggle source
# File lib/simple_jsonapi_deserializer/resource/includes.rb, line 16
def indexed_includes
  @indexed_includes ||= {}.tap do |indexed_includes|
    includes.each do |included_resource|
      id = included_resource['id']
      type = included_resource['type']

      indexed_includes[type] = {} unless indexed_includes[type]
      indexed_includes[type][id] = included_resource
    end
  end
end