Sha256: 1b44c8504f0e335d50e02b01a4614d78ac221cd23cce8734a115dc16230f7f38

Contents?: true

Size: 590 Bytes

Versions: 1

Compression:

Stored size: 590 Bytes

Contents

# frozen_string_literal: true

require_relative 'circuitbox/version'
require_relative 'circuitbox/circuit_breaker'
require_relative 'circuitbox/errors/error'
require_relative 'circuitbox/errors/open_circuit_error'
require_relative 'circuitbox/errors/service_failure_error'
require_relative 'circuitbox/configuration'

class Circuitbox
  extend Configuration

  class << self
    def circuit(service_name, options, &block)
      circuit = find_or_create_circuit_breaker(service_name, options)

      return circuit unless block

      circuit.run(exception: false, &block)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
circuitbox-2.0.0.pre5 lib/circuitbox.rb