class SidekiqUniqueJobs::Lock::UntilExpired
UntilExpired
locks until the job expires
@author Mikael Henriksson <mikael@mhenrixon.com>
Public Instance Methods
execute(&block)
click to toggle source
Executes in the Sidekiq
server process @yield to the worker class perform method
# File lib/sidekiq_unique_jobs/lock/until_expired.rb, line 35 def execute(&block) locksmith.execute(&block) end
lock() { || ... }
click to toggle source
Locks a sidekiq job
@note Will call a conflict strategy if lock can't be achieved.
@return [String, nil] the locked jid when properly locked, else nil.
@yield to the caller when given a block
# File lib/sidekiq_unique_jobs/lock/until_expired.rb, line 20 def lock(&block) unless (token = locksmith.lock) reflect(:lock_failed, item) call_strategy(origin: :client, &block) return end yield if block token end