From 2dd0090f13268e0470d0368a9f3776ea8fc8d572 Mon Sep 17 00:00:00 2001 From: Santiago Pastorino Date: Wed, 15 May 2013 16:02:03 -0700 Subject: [PATCH] Reorder methods --- lib/active_model/serializer/associations.rb | 88 +++++++++++---------- 1 file changed, 45 insertions(+), 43 deletions(-) diff --git a/lib/active_model/serializer/associations.rb b/lib/active_model/serializer/associations.rb index f1f7a5b8..711eac4f 100644 --- a/lib/active_model/serializer/associations.rb +++ b/lib/active_model/serializer/associations.rb @@ -8,9 +8,8 @@ module ActiveModel @serializer_options = serializer_options end - def target_serializer - serializer = options[:serializer] - serializer.is_a?(String) ? serializer.constantize : serializer + def name + options[:name] || @name end def key @@ -21,14 +20,6 @@ module ActiveModel options[:root] || @name end - def name - options[:name] || @name - end - - def object - options[:value] - end - def embed_ids? [:id, :ids].include? options[:embed] end @@ -45,6 +36,12 @@ module ActiveModel !object.nil? end + private + + def object + options[:value] + end + def embed_key if key = options[:embed_key] key @@ -53,7 +50,10 @@ module ActiveModel end end - private + def target_serializer + serializer = options[:serializer] + serializer.is_a?(String) ? serializer.constantize : serializer + end def find_serializable(object) if target_serializer @@ -83,18 +83,18 @@ module ActiveModel "#{@name.to_s.singularize}_ids".to_sym end - def serialize - object.map do |item| - find_serializable(item).serializable_hash - end - end - def serializables object.map do |item| find_serializable(item) end end + def serialize + object.map do |item| + find_serializable(item).serializable_hash + end + end + def serialize_ids object.map do |item| item.read_attribute_for_serialization(embed_key) @@ -103,18 +103,16 @@ module ActiveModel end class HasOne < Base #:nodoc: - def embeddable? - if polymorphic? && object.nil? - false + def key + if key = options[:key] + key + elsif embed_ids? && !polymorphic? + id_key else - true + @name end end - def polymorphic? - options[:polymorphic] - end - def root if root = options[:root] root @@ -125,22 +123,21 @@ module ActiveModel end end - def key - if key = options[:key] - key - elsif embed_ids? && !polymorphic? - id_key - else - @name - end - end - def id_key "#{@name}_id".to_sym end - def polymorphic_key - object.class.to_s.demodulize.underscore.to_sym + def embeddable? + if polymorphic? && object.nil? + false + else + true + end + end + + def serializables + value = object && find_serializable(object) + value ? [value] : [] end def serialize @@ -156,11 +153,6 @@ module ActiveModel end end - def serializables - value = object && find_serializable(object) - value ? [value] : [] - end - def serialize_ids if object id = object.read_attribute_for_serialization(embed_key) @@ -174,6 +166,16 @@ module ActiveModel end end end + + private + + def polymorphic? + options[:polymorphic] + end + + def polymorphic_key + object.class.to_s.demodulize.underscore.to_sym + end end end end