Top Level Namespace

Defined Under Namespace

Modules: GeoAPI, HTTParty Classes: Array

Instance Method Summary collapse

Instance Method Details

#retryable(options = {}, &block) ⇒ Object



38
39
40
41
42
43
44
45
46
47
48
49
50
# File 'lib/geoapi.rb', line 38

def retryable(options = {}, &block)
  opts = { :tries => 1, :on => Exception }.merge(options)

  retry_exception, retries = opts[:on], opts[:tries]

  begin
    return yield
  rescue retry_exception
    retry if (retries -= 1) > 0
  end

  yield
end