Sha256: edc1c7e7d117509e505c391446547f39bf92575f9d8e0cb41348e3adbb3b86e3

Contents?: true

Size: 632 Bytes

Versions: 15

Compression:

Stored size: 632 Bytes

Contents

module Mobility
  module ActiveModel
=begin

Backend resetter for ActiveModel models. Adds hook to reset backend when
+changes_applied+ or +clear_changes_information+ methods are called on model.

=end
    class BackendResetter < Mobility::BackendResetter

      # (see Mobility::BackendResetter#initialize)
      def initialize(attributes)
        super

        model_reset_method = @model_reset_method

        %i[changes_applied clear_changes_information].each do |method|
          define_method method do
            super()
            instance_eval(&model_reset_method)
          end
        end
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
mobility-0.1.20 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.19 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.18 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.17 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.16 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.15 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.14 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.13 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.12 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.11 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.10 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.7 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.6 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.5 lib/mobility/active_model/backend_resetter.rb
mobility-0.1.4 lib/mobility/active_model/backend_resetter.rb