6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
# File 'app/jobs/nuntius/transport_refresh_job.rb', line 6
def perform(provider_name, message)
return if message.delivered_or_blocked? || message.refreshes >= 3
provider = Nuntius::BaseProvider.class_from_name(provider_name, message.transport).new(message)
message = provider.refresh
message.refreshes += 1
message.save!
if message.delivered_or_blocked?
message.cleanup!
else
Nuntius::TransportRefreshJob.set(wait: message.refreshes + 5).perform_later(provider_name, message)
end
end
|