lib/active_data/model/dirty.rb in active_data-1.1.0 vs lib/active_data/model/dirty.rb in active_data-1.1.1

- old
+ new

@@ -14,37 +14,42 @@ end def self.included(_base); end end + include DIRTY_CLONE + included do - include DIRTY_CLONE + attribute_names(false).each do |name| + define_dirty name, generated_attributes_methods + end + _attribute_aliases.each_key do |name| + define_dirty name, generated_attributes_methods + end + end - unless method_defined?(:set_attribute_was) - def set_attribute_was(attr, old_value) - changed_attributes[attr] = old_value - end - private :set_attribute_was + if !method_defined?(:set_attribute_was) && !private_method_defined?(:set_attribute_was) + private def set_attribute_was(attr, old_value) + changed_attributes[attr] = old_value end + end - unless method_defined?(:clear_changes_information) - if method_defined?(:reset_changes) - def clear_changes_information - reset_changes - end - else - def clear_changes_information - @previously_changed = nil - @changed_attributes = nil - end + unless method_defined?(:clear_changes_information) + if method_defined?(:reset_changes) + def clear_changes_information + reset_changes end + else + def clear_changes_information + @previously_changed = nil + @changed_attributes = nil + end end + end - attribute_names(false).each do |name| - define_dirty name, generated_attributes_methods - end - _attribute_aliases.each_key do |name| - define_dirty name, generated_attributes_methods + unless method_defined?(:_read_attribute) + def _read_attribute(attr) + __send__(attr) end end module ClassMethods def define_dirty(method, target = self)