class Rpush::Daemon::Delivery
Public Instance Methods
mark_batch_delivered()
click to toggle source
# File lib/rpush/daemon/delivery.rb, line 30 def mark_batch_delivered @batch.mark_all_delivered end
mark_batch_failed(error)
click to toggle source
# File lib/rpush/daemon/delivery.rb, line 39 def mark_batch_failed(error) code = error.respond_to?(:code) ? error.code : nil @batch.mark_all_failed(code, error.to_s) end
mark_batch_retryable(deliver_after, error)
click to toggle source
# File lib/rpush/daemon/delivery.rb, line 22 def mark_batch_retryable(deliver_after, error) @batch.mark_all_retryable(deliver_after, error) end
mark_delivered()
click to toggle source
# File lib/rpush/daemon/delivery.rb, line 26 def mark_delivered @batch.mark_delivered(@notification) end
mark_failed(error)
click to toggle source
# File lib/rpush/daemon/delivery.rb, line 34 def mark_failed(error) code = error.respond_to?(:code) ? error.code : nil @batch.mark_failed(@notification, code, error.to_s) end
mark_retryable(notification, deliver_after, error = nil)
click to toggle source
# File lib/rpush/daemon/delivery.rb, line 7 def mark_retryable(notification, deliver_after, error = nil) if notification.fail_after && notification.fail_after < Time.now @batch.mark_failed(notification, nil, "Notification failed to be delivered before #{notification.fail_after.strftime('%Y-%m-%d %H:%M:%S')}.") else if error log_warn("Will retry notification #{notification.id} after #{deliver_after.strftime('%Y-%m-%d %H:%M:%S')} due to error (#{error.class.name}, #{error.message})") end @batch.mark_retryable(notification, deliver_after) end end
mark_retryable_exponential(notification)
click to toggle source
# File lib/rpush/daemon/delivery.rb, line 18 def mark_retryable_exponential(notification) mark_retryable(notification, Time.now + 2**(notification.retries + 1)) end