Module: Sidekiq::JobSet::UniqueExtension

Included in:
Sidekiq::JobSet
Defined in:
lib/sidekiq_unique_jobs/sidekiq_unique_ext.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



124
125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'lib/sidekiq_unique_jobs/sidekiq_unique_ext.rb', line 124

def self.included(base)
  base.class_eval do
    include SidekiqUniqueJobs::Unlockable
    if base.method_defined?(:clear)
      alias_method :clear_orig, :clear
      alias_method :clear, :clear_ext
    end

    if base.method_defined?(:delete_by_value)
      alias_method :delete_by_value_orig, :delete_by_value
      alias_method :delete_by_value, :delete_by_value_ext
    end
  end
end

Instance Method Details

#clear_extObject



139
140
141
142
# File 'lib/sidekiq_unique_jobs/sidekiq_unique_ext.rb', line 139

def clear_ext
  each(&:delete)
  clear_orig
end

#delete_by_value_ext(name, value) ⇒ Object



144
145
146
# File 'lib/sidekiq_unique_jobs/sidekiq_unique_ext.rb', line 144

def delete_by_value_ext(name, value)
  unlock(JSON.parse(value)) if delete_by_value_orig(name, value)
end