Module: PersistentRecord::Callbacks

Defined in:
lib/persistent_record.rb

Class Method Summary collapse

Class Method Details

.extended(source) ⇒ Object



40
41
42
43
44
45
46
47
48
49
50
51
52
53
# File 'lib/persistent_record.rb', line 40

def self.extended(source)
  [:restore, :force_destroy].each do |callback_name|
    source.define_callbacks callback_name
    source.define_singleton_method("before_#{callback_name}") do |*args, &block|
      set_callback(callback_name, :before, *args, &block)
    end
    source.define_singleton_method("around_#{callback_name}") do |*args, &block|
      set_callback(callback_name, :around, *args, &block)
    end
    source.define_singleton_method("after_#{callback_name}") do |*args, &block|
      set_callback(callback_name, :after, *args, &block)
    end
  end
end