Sha256: 40a7c062d0a3fb819bebf2373f7be1d2a66ee504aca4c1e1bb75e9e863c6c154
Contents?: true
Size: 321 Bytes
Versions: 3
Compression:
Stored size: 321 Bytes
Contents
class BookingSync::Engine::Retryable def self.perform(times:, errors:, before_retry: ->(_error) {}) executed = 0 begin executed += 1 yield rescue *errors => error if executed < times before_retry.call(error) retry else raise error end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
bookingsync-engine-6.0.1 | lib/bookingsync/engine/retryable.rb |
bookingsync-engine-6.0.0 | lib/bookingsync/engine/retryable.rb |
bookingsync-engine-5.1.0 | lib/bookingsync/engine/retryable.rb |