Class: ActiveRecord::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/insque.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.acts_as_insque_crud(*args) ⇒ Object



176
177
178
179
180
181
182
183
184
# File 'lib/insque.rb', line 176

def self.acts_as_insque_crud(*args)
  options = args.extract_options!
  excluded = (options[:exclude] || []).map(&:to_s)
  set_callback :commit, :after do
    action = [:create, :update, :destroy].map {|a| a if transaction_include_any_action?([a]) }.compact.first
    params = self.serializable_hash(options).delete_if {|key| (['created_at', 'updated_at'] + excluded).include? key}
    Insque.broadcast :"#{self.class.to_s.underscore}_#{action}", params
  end
end

Instance Method Details

#send_later(method, *args) ⇒ Object



172
173
174
# File 'lib/insque.rb', line 172

def send_later(method, *args)
  Insque.broadcast :send_later, { class: self.class.name, id: id, method: method, args: args }, :slow
end