Skip to content

Commit b8ba9d2

Browse files
committed
Remove ResourceFinder support from Resource
1 parent e6922ed commit b8ba9d2

File tree

1 file changed

+1
-35
lines changed

1 file changed

+1
-35
lines changed

lib/jsonapi/resource.rb

Lines changed: 1 addition & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -441,21 +441,9 @@ def inherited(subclass)
441441
subclass.attribute :id, format: :id, readonly: true
442442
end
443443

444-
# Ensure that the parent's resource finder is included before inheriting from the parent is completed
445-
if !_resource_finder_included && self != JSONAPI::Resource
446-
include_resource_finder
447-
end
448-
subclass._resource_finder_included = _resource_finder_included
449-
450444
check_reserved_resource_name(subclass._type, subclass.name)
451445
end
452446

453-
# Set the resource finder for a resource, which will override the default_resource_finder
454-
def resource_finder(resource_finder)
455-
@resource_finder = resource_finder
456-
include_resource_finder
457-
end
458-
459447
def rebuild_relationships(relationships)
460448
original_relationships = relationships.deep_dup
461449

@@ -500,7 +488,7 @@ def resource_type_for(model)
500488
end
501489
end
502490

503-
attr_accessor :_attributes, :_relationships, :_type, :_model_hints, :_resource_finder_included
491+
attr_accessor :_attributes, :_relationships, :_type, :_model_hints
504492
attr_writer :_allowed_filters, :_paginator, :_allowed_sort
505493

506494
def create(context)
@@ -1043,28 +1031,6 @@ def register_relationship(name, relationship_object)
10431031
end
10441032

10451033
private
1046-
def _resource_finder
1047-
@resource_finder ||= JSONAPI.configuration.default_resource_finder
1048-
end
1049-
1050-
def include_resource_finder
1051-
return if self == JSONAPI::Resource
1052-
if self._resource_finder_included
1053-
warn "#{self.name} is including a Resource Finder when one has already been included"
1054-
end
1055-
include _resource_finder
1056-
self._resource_finder_included = true
1057-
end
1058-
1059-
def method_missing(m, *args, &block)
1060-
if _resource_finder_included
1061-
super
1062-
else
1063-
# Handle the case where a resource finder has not been included yet. This should only happen once per class.
1064-
include_resource_finder
1065-
send(m, *args, &block)
1066-
end
1067-
end
10681034

10691035
def check_reserved_resource_name(type, name)
10701036
if [:ids, :types, :hrefs, :links].include?(type)

0 commit comments

Comments
 (0)