aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/define_callbacks.rb
diff options
context:
space:
mode:
authorRafael França <rafaelmfranca@gmail.com>2016-12-29 02:18:38 -0500
committerGitHub <noreply@github.com>2016-12-29 02:18:38 -0500
commiteb6a6141a66e052deb58580448d7c0fa6aa675ba (patch)
tree0017a57044ec8e466c97cc6b7879d39caa6c1ffa /activerecord/lib/active_record/define_callbacks.rb
parent447e1a48811fa053e8bef954376d1ad47bdb5cef (diff)
parentfcec126eaa4f835c837bc75efa78008667b2ec5b (diff)
downloadrails-eb6a6141a66e052deb58580448d7c0fa6aa675ba.tar.gz
rails-eb6a6141a66e052deb58580448d7c0fa6aa675ba.tar.bz2
rails-eb6a6141a66e052deb58580448d7c0fa6aa675ba.zip
Merge branch 'master' into clear_all_environments_log_by_default
Diffstat (limited to 'activerecord/lib/active_record/define_callbacks.rb')
-rw-r--r--activerecord/lib/active_record/define_callbacks.rb20
1 files changed, 20 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/define_callbacks.rb b/activerecord/lib/active_record/define_callbacks.rb
new file mode 100644
index 0000000000..7d955a24be
--- /dev/null
+++ b/activerecord/lib/active_record/define_callbacks.rb
@@ -0,0 +1,20 @@
+module ActiveRecord
+ # This module exists because `ActiveRecord::AttributeMethods::Dirty` needs to
+ # define callbacks, but continue to have its version of `save` be the super
+ # method of `ActiveRecord::Callbacks`. This will be removed when the removal
+ # of deprecated code removes this need.
+ module DefineCallbacks
+ extend ActiveSupport::Concern
+
+ module ClassMethods # :nodoc:
+ include ActiveModel::Callbacks
+ end
+
+ included do
+ include ActiveModel::Validations::Callbacks
+
+ define_model_callbacks :initialize, :find, :touch, only: :after
+ define_model_callbacks :save, :create, :update, :destroy
+ end
+ end
+end