Sha256: 4f54c0b3c5f8feedbb284e8752262c2d69320a3b883201fb71dbce605d0ae47d

Contents?: true

Size: 528 Bytes

Versions: 12

Compression:

Stored size: 528 Bytes

Contents

require 'faraday'
require 'actv/error/bad_gateway'
require 'actv/error/internal_server_error'
require 'actv/error/service_unavailable'

module ACTV
  module Response
    class RaiseServerError < Faraday::Response::Middleware

      def on_complete(env)
        status_code = env[:status].to_i
        error_class = ACTV::Error::ServerError.errors[status_code]

        if error_class
          error_message = env[:body][:error][:message]
          raise error_class.new(error_message)
        end 
      end

    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
actv-2.10.9 lib/actv/response/raise_server_error.rb
actv-2.10.8 lib/actv/response/raise_server_error.rb
actv-2.10.7 lib/actv/response/raise_server_error.rb
actv-2.10.6 lib/actv/response/raise_server_error.rb
actv-2.10.5 lib/actv/response/raise_server_error.rb
actv-2.10.4 lib/actv/response/raise_server_error.rb
actv-2.10.3 lib/actv/response/raise_server_error.rb
actv-2.10.2 lib/actv/response/raise_server_error.rb
actv-2.10.1 lib/actv/response/raise_server_error.rb
actv-2.10.0 lib/actv/response/raise_server_error.rb
actv-2.9.2 lib/actv/response/raise_server_error.rb
actv-2.9.1 lib/actv/response/raise_server_error.rb