Sha256: 7ded7f53c04d54bfbe95275d2baa9405f963988830ed501ab2c635a0940d3507

Contents?: true

Size: 1.43 KB

Versions: 16

Compression:

Stored size: 1.43 KB

Contents

module Faraday
  class Error < StandardError; end
  class MissingDependency < Error; end

  class ClientError < Error
    attr_reader :response, :wrapped_exception

    def initialize(ex, response = nil)
      @wrapped_exception = nil
      @response = response

      if ex.respond_to?(:backtrace)
        super(ex.message)
        @wrapped_exception = ex
      elsif ex.respond_to?(:each_key)
        super("the server responded with status #{ex[:status]}")
        @response = ex
      else
        super(ex.to_s)
      end
    end

    def backtrace
      if @wrapped_exception
        @wrapped_exception.backtrace
      else
        super
      end
    end

    def inspect
      inner = ''
      if @wrapped_exception
        inner << " wrapped=#{@wrapped_exception.inspect}"
      end
      if @response
        inner << " response=#{@response.inspect}"
      end
      if inner.empty?
        inner << " #{super}"
      end
      %(#<#{self.class}#{inner}>)
    end
  end

  class ConnectionFailed < ClientError;   end
  class ResourceNotFound < ClientError;   end
  class ParsingError     < ClientError;   end

  class TimeoutError < ClientError
    def initialize(ex = nil)
      super(ex || "timeout")
    end
  end

  class SSLError < ClientError
  end

  [:MissingDependency, :ClientError, :ConnectionFailed, :ResourceNotFound,
   :ParsingError, :TimeoutError, :SSLError].each do |const|
    Error.const_set(const, Faraday.const_get(const))
  end
end

Version data entries

16 entries across 13 versions & 4 rubygems

Version Path
tdiary-5.0.8 vendor/bundle/gems/faraday-0.13.1/lib/faraday/error.rb
tdiary-5.0.8 vendor/bundle/ruby/2.5.0/gems/faraday-0.14.0/lib/faraday/error.rb
tdiary-5.0.8 vendor/bundle/gems/faraday-0.14.0/lib/faraday/error.rb
tdiary-5.0.8 vendor/bundle/gems/tdiary-5.0.7/vendor/bundle/gems/faraday-0.13.1/lib/faraday/error.rb
faraday-0.14.0 lib/faraday/error.rb
tdiary-5.0.7 vendor/bundle/gems/faraday-0.13.1/lib/faraday/error.rb
tdiary-5.0.6 vendor/bundle/gems/faraday-0.13.1/lib/faraday/error.rb
faraday-0.13.1 lib/faraday/error.rb
faraday-0.13.0 lib/faraday/error.rb
logstash-filter-cache-redis-0.3.1 vendor/bundle/jruby/1.9/gems/faraday-0.12.2/lib/faraday/error.rb
faraday-0.12.2 lib/faraday/error.rb
logstash-filter-cache-redis-0.3.0 vendor/bundle/jruby/1.9/gems/faraday-0.12.1/lib/faraday/error.rb
logstash-filter-cache-redis-0.2.0 vendor/bundle/jruby/1.9/gems/faraday-0.12.1/lib/faraday/error.rb
tdiary-5.0.5 vendor/bundle/gems/faraday-0.12.1/lib/faraday/error.rb
enju_leaf-1.2.1 vendor/bundle/ruby/2.3/gems/faraday-0.12.1/lib/faraday/error.rb
faraday-0.12.1 lib/faraday/error.rb