Sha256: e1a4799ee83f4483c92c39aab9e208cf3c0016aead8c47226d47281e521d8595
Contents?: true
Size: 401 Bytes
Versions: 3
Compression:
Stored size: 401 Bytes
Contents
module OneWire module Retry def with_retry errors_counts = Config.retries.map { |err, count| { Errno::const_get(err) => count } }.inject { |hash, h| hash.merge h } begin yield rescue *(errors_counts.map { |error, count| error if count > 0 }.compact) => e errors_counts[e.class] -= 1 sleep Config.retry_interval retry end end end end
Version data entries
3 entries across 3 versions & 2 rubygems
Version | Path |
---|---|
mholling-one_wire-0.1.0 | lib/one_wire/retry.rb |
one_wire-0.1.1 | lib/one_wire/retry.rb |
one_wire-0.1.0 | lib/one_wire/retry.rb |