Module: Trigv::Retry
- Defined in:
- lib/trigv/retry.rb
Class Method Summary collapse
Class Method Details
.parse_retry_after(value, now = Time.now) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/trigv/retry.rb', line 9 def parse_retry_after(value, now = Time.now) return nil if value.nil? || value.strip.empty? trimmed = value.strip if trimmed.match?(/\A\d+\z/) seconds = trimmed.to_i return nil if seconds.negative? return seconds.to_f end retry_at = Time.httpdate(trimmed) wait = retry_at - now wait.negative? ? nil : wait rescue ArgumentError nil end |