Class: AdvancedAR::BatchedDestruction::ClassCallbackExector

Inherits:
Object
  • Object
show all
Includes:
ActiveSupport::Callbacks
Defined in:
lib/advanced_ar/batched_destruction.rb

Overview

These classes are some Hackery to allow us to use callbacks against the Model classes instead of Model instances

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(cls, env) ⇒ ClassCallbackExector

Returns a new instance of ClassCallbackExector.



81
82
83
84
85
86
87
88
89
# File 'lib/advanced_ar/batched_destruction.rb', line 81

def initialize(cls, env)
  @callback_class = cls
  env.keys.each do |k|
    define_singleton_method(k) do
      env[k]
    end
  end
  @options = options
end

Instance Attribute Details

#callback_classObject (readonly)

Returns the value of attribute callback_class.



77
78
79
# File 'lib/advanced_ar/batched_destruction.rb', line 77

def callback_class
  @callback_class
end

Class Method Details

.run_callbacks(cls, callback, env = {}, &blk) ⇒ Object



91
92
93
# File 'lib/advanced_ar/batched_destruction.rb', line 91

def self.run_callbacks(cls, callback, env={}, &blk)
  new(cls, env).run_callbacks(callback, &blk)
end