Class: Faraday::Request::Retry::Options

Inherits:
Object
  • Object
show all
Defined in:
lib/faraday/request/retry.rb

Constant Summary collapse

DEFAULT_CHECK =
lambda { |env,exception| false }

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.from(value) ⇒ Object



31
32
33
34
35
36
37
# File 'lib/faraday/request/retry.rb', line 31

def self.from(value)
  if Integer === value
    new(value)
  else
    super(value)
  end
end

Instance Method Details

#backoff_factorObject



55
56
57
# File 'lib/faraday/request/retry.rb', line 55

def backoff_factor
  (self[:backoff_factor] ||= 1).to_f
end

#exceptionsObject



59
60
61
62
63
# File 'lib/faraday/request/retry.rb', line 59

def exceptions
  Array(self[:exceptions] ||= [Errno::ETIMEDOUT, 'Timeout::Error',
                               Error::TimeoutError,
                               Faraday::Error::RetriableResponse])
end

#intervalObject



43
44
45
# File 'lib/faraday/request/retry.rb', line 43

def interval
  (self[:interval] ||= 0).to_f
end

#interval_randomnessObject



51
52
53
# File 'lib/faraday/request/retry.rb', line 51

def interval_randomness
  (self[:interval_randomness] ||= 0).to_f
end

#maxObject



39
40
41
# File 'lib/faraday/request/retry.rb', line 39

def max
  (self[:max] ||= 2).to_i
end

#max_intervalObject



47
48
49
# File 'lib/faraday/request/retry.rb', line 47

def max_interval
  (self[:max_interval] ||= Float::MAX).to_f
end

#methodsObject



65
66
67
# File 'lib/faraday/request/retry.rb', line 65

def methods
  Array(self[:methods] ||= IDEMPOTENT_METHODS)
end

#retry_blockObject



73
74
75
# File 'lib/faraday/request/retry.rb', line 73

def retry_block
  self[:retry_block] ||= Proc.new {}
end

#retry_ifObject



69
70
71
# File 'lib/faraday/request/retry.rb', line 69

def retry_if
  self[:retry_if] ||= DEFAULT_CHECK
end

#retry_statusesObject



77
78
79
# File 'lib/faraday/request/retry.rb', line 77

def retry_statuses
  Array(self[:retry_statuses] ||= [])
end