399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
|
# File 'lib/jsonapi/resource.rb', line 399
def inherited(subclass)
subclass.abstract(false)
subclass.immutable(false)
subclass._attributes = (_attributes || {}).dup
subclass._model_hints = (_model_hints || {}).dup
subclass._relationships = {}
if _relationships.is_a?(Hash)
_relationships.each_value do |relationship|
options = relationship.options.dup
options[:parent_resource] = subclass
subclass._add_relationship(relationship.class, relationship.name, options)
end
end
subclass._allowed_filters = (_allowed_filters || Set.new).dup
type = subclass.name.demodulize.sub(/Resource$/, '').underscore
subclass._type = type.pluralize.to_sym
subclass.attribute :id, format: :id
check_reserved_resource_name(subclass._type, subclass.name)
end
|