set_callback(name, *filter_list, &block)
public
Similar to ActiveSupport::Callbacks::ClassMethods#set_callback, but with
support for options available on #after_commit
and #after_rollback
callbacks.
# File activerecord/lib/active_record/transactions.rb, line 305
def set_callback(name, *filter_list, &block)
options = filter_list.extract_options!
filter_list << options
if name.in?([:commit, :rollback]) && options[:on]
fire_on = Array(options[:on])
assert_valid_transaction_action(fire_on)
options[:if] = [
-> { transaction_include_any_action?(fire_on) },
*options[:if]
]
end
super(name, *filter_list, &block)
end