Skip to content

Commit

Permalink
Further cleanup add_included.
Browse files Browse the repository at this point in the history
  • Loading branch information
beauby committed Sep 1, 2015
1 parent bae4951 commit c593adb
Showing 1 changed file with 13 additions and 13 deletions.
26 changes: 13 additions & 13 deletions lib/active_model/serializer/adapter/json_api.rb
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ def serializable_hash(options = nil)

add_links(options)
else
@hash[:data] = attributes_for(serializer, options)
@hash[:data] = resource_objects_for(serializer, options)
relationships = relationships_for(serializer)
@hash[:data][:relationships] = relationships if relationships.any?
included = included_for(serializer)
Expand Down Expand Up @@ -75,15 +75,7 @@ def resource_identifier_for(serializer)
{ id: id.to_s, type: type }
end

def attributes_for(serializer, options)
if serializer.respond_to?(:each)
serializer.map { |s| resource_object_for(s, options) }
else
resource_object_for(serializer, options)
end
end

def resource_object_for(serializer, options)
def resource_object_for(serializer, options = {})
options[:fields] = @fieldset && @fieldset.fields_for(serializer)

cache_check(serializer) do
Expand All @@ -94,6 +86,14 @@ def resource_object_for(serializer, options)
end
end

def resource_objects_for(serializer, options)
if serializer.respond_to?(:each)
serializer.map { |s| resource_object_for(s, options) }
else
resource_object_for(serializer, options)
end
end

def relationship_value_for(serializer, options = {})
if serializer.respond_to?(:each)
serializer.map { |s| resource_identifier_for(s) }
Expand Down Expand Up @@ -130,10 +130,10 @@ def _included_for(resource_name, serializer, parent = nil)
resource_path = [parent, resource_name].compact.join('.')

if include_assoc?(resource_path)
attrs = attributes_for(serializer, @options)
resource_object = resource_object_for(serializer, @options)
relationships = relationships_for(serializer)
attrs[:relationships] = relationships if relationships.any?
result.push(attrs)
resource_object[:relationships] = relationships if relationships.any?
result.push(resource_object)
end

if include_nested_assoc?(resource_path)
Expand Down

0 comments on commit c593adb

Please sign in to comment.