class Qonto::Error

Constants

NET_HTTP_ERRORS

Attributes

http_response[R]

Public Class Methods

new(response = nil) click to toggle source
Calls superclass method
# File lib/qonto/error.rb, line 23
def initialize(response = nil)
  @http_response = response
  super(build_error_message)
end

Public Instance Methods

http_request() click to toggle source
# File lib/qonto/error.rb, line 28
def http_request
  http_response.request
end

Private Instance Methods

build_error_message() click to toggle source
# File lib/qonto/error.rb, line 34
def build_error_message
  return nil if http_response.nil?

  message = "#{http_request_method} "
  message << "#{http_request.path} : "
  message << "#{http_response.code} - "
  message << response_message unless response_message.nil?
  message
end
http_request_method() click to toggle source
# File lib/qonto/error.rb, line 44
def http_request_method
  http_request.http_method.name.split('::').last.upcase
end
response_message() click to toggle source
# File lib/qonto/error.rb, line 48
def response_message
  content_type = http_response.headers['Content-Type']
  if content_type && content_type.start_with?('application/json')
    http_response.parsed_response['message']
  else
    net_http_response = http_response.response
    "#{net_http_response.code} #{net_http_response.message}"
  end
end