lib/resque_cleaner.rb in resque-cleaner-0.0.2 vs lib/resque_cleaner.rb in resque-cleaner-0.1.0
- old
+ new
@@ -92,12 +92,13 @@
end
cleared
end
# Retries every jobs for which block evaluates to true.
- def requeue(clear_after_requeue=false, &block)
+ def requeue(clear_after_requeue=false, options={}, &block)
requeued = 0
+ queue = options["queue"] || options[:queue]
@limiter.lock do
@limiter.jobs.each_with_index do |job,i|
if !block_given? || block.call(job)
index = @limiter.start_index + i - requeued
@@ -109,10 +110,10 @@
# mark retried
job['retried_at'] = Time.now.strftime("%Y/%m/%d %H:%M:%S")
redis.lset(:failed, @limiter.start_index+i, Resque.encode(job))
end
- Job.create(job['queue'], job['payload']['class'], *job['payload']['args'])
+ Job.create(queue||job['queue'], job['payload']['class'], *job['payload']['args'])
requeued += 1
end
end
end
requeued