Sha256: 29d193a774842736557dfe881a19eed982487e3b8b80aebf32644618ff3fb95b

Contents?: true

Size: 939 Bytes

Versions: 5

Compression:

Stored size: 939 Bytes

Contents

module Sidekiq
  def self.hook_rails!
    ActiveSupport.on_load(:active_record) do
      include Sidekiq::Extensions::ActiveRecord
    end

    ActiveSupport.on_load(:action_mailer) do
      extend Sidekiq::Extensions::ActionMailer
    end
  end

  # Removes the generic aliases which MAY clash with names of already
  #  created methods by other applications. The methods `sidekiq_delay`,
  #  `sidekiq_delay_for` and `sidekiq_delay_until` can be used instead.
  def self.remove_delay!
    [Extensions::ActiveRecord,
     Extensions::ActionMailer,
     Extensions::Klass].each do |mod|
      mod.module_eval do
        remove_method :delay if respond_to?(:delay)
        remove_method :delay_for if respond_to?(:delay_for)
        remove_method :delay_until if respond_to?(:delay_until)
      end
    end
  end

  class Rails < ::Rails::Engine
    initializer 'sidekiq' do
      Sidekiq.hook_rails!
    end
  end if defined?(::Rails)
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
sidekiq-3.1.4 lib/sidekiq/rails.rb
sidekiq-3.1.3 lib/sidekiq/rails.rb
sidekiq-3.1.2 lib/sidekiq/rails.rb
sidekiq-3.1.1 lib/sidekiq/rails.rb
sidekiq-3.1.0 lib/sidekiq/rails.rb