module SidekiqUniqueJobs::OptionsWithFallback
def self.included(base)
def self.included(base) base.send(:include, SidekiqUniqueJobs::SidekiqWorkerMethods) end
def lock_class
-
(Class)
-
def lock_class @lock_class ||= locks.fetch(lock_type.to_sym) do raise UnknownLock, "No implementation for `lock: :#{lock_type}`" end end
def lock_instance
-
(Lock::BaseLock)
- an instance of a lock implementation
def lock_instance @lock_instance ||= lock_class.new(item, after_unlock_hook, @redis_pool) end
def lock_type
-
(Symbol)
-
def lock_type @lock_type ||= options[LOCK] || item[LOCK] end
def locks
def locks SidekiqUniqueJobs.locks end
def options
-
(Hash
-)
def options @options ||= begin opts = default_worker_options.dup opts.merge!(worker_options) if sidekiq_worker_class? (opts || {}).stringify_keys end end
def unique_disabled?
def unique_disabled? !unique_enabled? end
def unique_enabled?
-
(true, false)
- indicate if the gem has been enabled
def unique_enabled? SidekiqUniqueJobs.enabled? && lock_type end