File: wait_for_defaults.rb

package info (click to toggle)
ruby-fog-core 2.6.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 684 kB
  • sloc: ruby: 4,812; makefile: 5
file content (40 lines) | stat: -rw-r--r-- 847 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
module Fog
  @interval = lambda { |retries| [2**(retries - 1), @max_interval].min }

  class << self
    attr_reader :interval
  end

  def self.interval=(interval)
    if interval.is_a?(Proc)
      raise ArgumentError, "interval proc must return a positive" unless interval.call(1) >= 0
    else
      raise ArgumentError, "interval must be non-negative" unless interval >= 0
    end
    @interval = interval
  end

  @timeout = 600

  class << self
    attr_reader :timeout
  end

  def self.timeout=(timeout)
    raise ArgumentError, "timeout must be non-negative" unless timeout >= 0

    @timeout = timeout
  end

  @max_interval = 60

  class << self
    attr_reader :max_interval
  end

  def self.max_interval=(interval)
    raise ArgumentError, "interval must be non-negative" unless interval >= 0

    @max_interval = interval
  end
end