24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
# File 'lib/retryable_typhoeus.rb', line 24
def queue_with_retry(request, opts = {})
request.retries = (opts[:retries] || RetryableTyphoeus::DEFAULT_RETRIES).to_i
request.original_on_complete ||= request.on_complete
request.on_complete do |response|
if response.success? || response.request.retries <= 0
request.original_on_complete.map do |callback|
response.handled_response = callback.call(response)
end
else
response.request.retries -= 1
queue response.request
end
end
queue request
end
|