class SimpleWorker::RetryListener
Attributes
max_retries[R]
Public Class Methods
new(redis, max_retries, namespace, jobid)
click to toggle source
# File lib/simpleworker/retry_listener.rb, line 8 def initialize(redis, max_retries, namespace, jobid) @redis = redis @max_retries = max_retries @namespace = namespace @jobid = jobid @tracker = {} end
Public Instance Methods
on_task_expire(hostname, task)
click to toggle source
# File lib/simpleworker/retry_listener.rb, line 16 def on_task_expire(hostname, task) # warning nil converted to 0 count = @tracker[task].to_i if count < max_retries fire_retry task @tracker[task] = (count + 1) end end
Private Instance Methods
fire_retry(task)
click to toggle source
# File lib/simpleworker/retry_listener.rb, line 28 def fire_retry(task) @redis.rpush(tasks_key, task) end