Sha256: 99453237a315ee23b28bd07a0d154f714935fc0ae5b268440478bbe24d714cf3

Contents?: true

Size: 668 Bytes

Versions: 73

Compression:

Stored size: 668 Bytes

Contents

require 'faraday'

module Ably
  module Rest
    module Middleware
      # HTTP exceptions raised due to a status code error on a 3rd party site
      # Used by auth calls
      class ExternalExceptions < Faraday::Response::Middleware
        def on_complete(env)
          if env.status >= 400
            error_status_code = env.status
            message = "Error #{error_status_code}: #{(env.body || '')[0...200]}"

            if error_status_code >= 500
              raise Ably::Exceptions::ServerError, message
            else
              raise Ably::Exceptions::InvalidRequest, message
            end
          end
        end
      end
    end
  end
end

Version data entries

73 entries across 73 versions & 2 rubygems

Version Path
ably-rest-1.2.0 lib/submodules/ably-ruby/lib/ably/rest/middleware/external_exceptions.rb
ably-1.2.0 lib/ably/rest/middleware/external_exceptions.rb
ably-rest-1.1.8 lib/submodules/ably-ruby/lib/ably/rest/middleware/external_exceptions.rb
ably-1.1.8 lib/ably/rest/middleware/external_exceptions.rb
ably-rest-1.1.7 lib/submodules/ably-ruby/lib/ably/rest/middleware/external_exceptions.rb
ably-1.1.7 lib/ably/rest/middleware/external_exceptions.rb
ably-rest-1.1.6 lib/submodules/ably-ruby/lib/ably/rest/middleware/external_exceptions.rb
ably-1.1.6 lib/ably/rest/middleware/external_exceptions.rb
ably-rest-1.1.5 lib/submodules/ably-ruby/lib/ably/rest/middleware/external_exceptions.rb
ably-1.1.5 lib/ably/rest/middleware/external_exceptions.rb
ably-rest-1.1.4 lib/submodules/ably-ruby/lib/ably/rest/middleware/external_exceptions.rb
ably-1.1.4 lib/ably/rest/middleware/external_exceptions.rb
ably-rest-1.1.4.rc lib/submodules/ably-ruby/lib/ably/rest/middleware/external_exceptions.rb
ably-1.1.4.rc lib/ably/rest/middleware/external_exceptions.rb
ably-rest-1.1.3 lib/submodules/ably-ruby/lib/ably/rest/middleware/external_exceptions.rb
ably-1.1.3 lib/ably/rest/middleware/external_exceptions.rb
ably-rest-1.1.2 lib/submodules/ably-ruby/lib/ably/rest/middleware/external_exceptions.rb
ably-1.1.2 lib/ably/rest/middleware/external_exceptions.rb
ably-rest-1.1.2.rc1 lib/submodules/ably-ruby/lib/ably/rest/middleware/external_exceptions.rb
ably-1.1.1 lib/ably/rest/middleware/external_exceptions.rb