Sha256: 95bdaef5f050158f20717434f9b8cc3a11071476c00c976bd9edf52b6acc7e42

Contents?: true

Size: 420 Bytes

Versions: 2

Compression:

Stored size: 420 Bytes

Contents

module Stove
  class Middleware::Exceptions < Faraday::Middleware
    include Mixin::Loggable

    def call(env)
      begin
        @app.call(env)
      rescue Faraday::Error::ConnectionFailed
        url = env[:url].to_s.gsub(env[:url].path, '')
        raise Error::ServerUnavailable.new(url: url)
      rescue Faraday::Error::ClientError => e
        log.debug(env.inspect)
        raise
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
stove-2.0.0.beta.2 lib/stove/middlewares/exceptions.rb
stove-2.0.0.beta.1 lib/stove/middlewares/exceptions.rb