module Sidekiq::LockableJob
Constants
- DEFAULT_LOCKABLE_JOB_SERVICE
Public Class Methods
included(base)
click to toggle source
# File lib/sidekiq/lockable_job.rb, line 14 def self.included(base) unless base.ancestors.include? Sidekiq::Worker raise ArgumentError, "Sidekiq::LockableJob can only be included in a Sidekiq::Worker" end base.extend(ClassMethods) # Automatically add sidekiq middleware when we're first included # # This might only occur when the worker class is first loaded in a # development rails environment, but that happens before the middleware # chain is invoked so we're all good. # Sidekiq.configure_server do |config| unless config.server_middleware.exists? Sidekiq::LockableJob::Middleware::Server::SetLocks config.server_middleware.add Sidekiq::LockableJob::Middleware::Server::SetLocks end unless config.server_middleware.exists? Sidekiq::LockableJob::Middleware::Server::HandleLockedBy config.server_middleware.add Sidekiq::LockableJob::Middleware::Server::HandleLockedBy end unless config.server_middleware.exists? Sidekiq::LockableJob::Middleware::Server::UnsetLocks config.server_middleware.add Sidekiq::LockableJob::Middleware::Server::UnsetLocks end end Sidekiq.configure_client do |config| unless config.client_middleware.exists? Sidekiq::LockableJob::Middleware::Client::SetLocks config.client_middleware.add Sidekiq::LockableJob::Middleware::Client::SetLocks end end end