class SidekiqUniqueJobs::OnConflict::Reschedule
Strategy
to reschedule job on conflict
@author Mikael Henriksson <mikael@mhenrixon.com>
Public Class Methods
new(item, redis_pool = nil)
click to toggle source
@param [Hash] item sidekiq job hash
Calls superclass method
SidekiqUniqueJobs::OnConflict::Strategy::new
# File lib/sidekiq_unique_jobs/on_conflict/reschedule.rb, line 15 def initialize(item, redis_pool = nil) super(item, redis_pool) @worker_class = item[CLASS] end
Public Instance Methods
call()
click to toggle source
Create a new job from the current one.
This will mess up sidekiq stats because a new job is created
# File lib/sidekiq_unique_jobs/on_conflict/reschedule.rb, line 22 def call if sidekiq_worker_class? if worker_class.perform_in(5, *item[ARGS]) reflect(:rescheduled, item) else reflect(:reschedule_failed, item) end else reflect(:unknown_sidekiq_worker, item) end end