Class: Faraday::Retry::Middleware::Options

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

Overview

Options contains the configurable parameters for the Retry middleware.

Constant Summary collapse

DEFAULT_CHECK =
->(_env, _exception) { false }

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.from(value) ⇒ Object



33
34
35
36
37
38
39
# File 'lib/faraday/retry/middleware.rb', line 33

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

Instance Method Details

#backoff_factorObject



57
58
59
# File 'lib/faraday/retry/middleware.rb', line 57

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

#exceptionsObject



61
62
63
# File 'lib/faraday/retry/middleware.rb', line 61

def exceptions
  Array(self[:exceptions] ||= DEFAULT_EXCEPTIONS)
end

#intervalObject



45
46
47
# File 'lib/faraday/retry/middleware.rb', line 45

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

#interval_randomnessObject



53
54
55
# File 'lib/faraday/retry/middleware.rb', line 53

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

#maxObject



41
42
43
# File 'lib/faraday/retry/middleware.rb', line 41

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

#max_intervalObject



49
50
51
# File 'lib/faraday/retry/middleware.rb', line 49

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

#methodsObject



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

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

#retry_blockObject



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

def retry_block
  self[:retry_block] ||= proc {} # rubocop:disable Lint/EmptyBlock
end

#retry_ifObject



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

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

#retry_statusesObject



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

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