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



151
152
153
154
155
156
157
158
159
160
# File 'lib/insque.rb', line 151

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



148
149
150
# File 'lib/insque.rb', line 148

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