Module: SidekiqUniqueJobs::Unlockable
- Included in:
- Lock::UntilExecuted
- Defined in:
- lib/sidekiq_unique_jobs/unlockable.rb
Class Method Summary collapse
- .after_unlock(jid) ⇒ Object
- .ensure_job_id_removed(jid) ⇒ Object
- .logger ⇒ Object
- .unlock(item) ⇒ Object
- .unlock_by_key(unique_key, jid, redis_pool = nil) ⇒ Object
Class Method Details
.after_unlock(jid) ⇒ Object
17 18 19 |
# File 'lib/sidekiq_unique_jobs/unlockable.rb', line 17 def after_unlock(jid) ensure_job_id_removed(jid) end |
.ensure_job_id_removed(jid) ⇒ Object
21 22 23 |
# File 'lib/sidekiq_unique_jobs/unlockable.rb', line 21 def ensure_job_id_removed(jid) Sidekiq.redis { |conn| conn.hdel(SidekiqUniqueJobs::HASH_KEY, jid) } end |
.logger ⇒ Object
25 26 27 |
# File 'lib/sidekiq_unique_jobs/unlockable.rb', line 25 def logger SidekiqUniqueJobs.logger end |
.unlock(item) ⇒ Object
7 8 9 10 |
# File 'lib/sidekiq_unique_jobs/unlockable.rb', line 7 def unlock(item) return unless item[UNIQUE_DIGEST_KEY] unlock_by_key(item[UNIQUE_DIGEST_KEY], item[JID_KEY]) end |
.unlock_by_key(unique_key, jid, redis_pool = nil) ⇒ Object
12 13 14 15 |
# File 'lib/sidekiq_unique_jobs/unlockable.rb', line 12 def unlock_by_key(unique_key, jid, redis_pool = nil) return false unless Scripts::ReleaseLock.execute(redis_pool, unique_key, jid) after_unlock(jid) end |