class Lol::InvalidAPIResponse
Attributes
raw[R]
Public Class Methods
new(url, response)
click to toggle source
Calls superclass method
# File lib/lol/invalid_api_response.rb, line 5 def initialize url, response @raw = extract_raw_response_info response super "#{raw[:status]} calling #{url}" end
Private Instance Methods
extract_raw_body(response)
click to toggle source
# File lib/lol/invalid_api_response.rb, line 24 def extract_raw_body response if response.respond_to?(:parsed_response) response.parsed_response elsif response.respond_to?(:body) response.body else response end end
extract_raw_headers(response)
click to toggle source
# File lib/lol/invalid_api_response.rb, line 20 def extract_raw_headers response response.respond_to?(:headers) && response.headers || {} end
extract_raw_response_info(response)
click to toggle source
# File lib/lol/invalid_api_response.rb, line 12 def extract_raw_response_info response { headers: extract_raw_headers(response), body: extract_raw_body(response), status: extract_raw_status(response) } end
extract_raw_status(response)
click to toggle source
# File lib/lol/invalid_api_response.rb, line 34 def extract_raw_status response if response.is_a?(Hash) && response['status'] response['status']['message'] elsif response.respond_to?(:response) "#{response.response.code} #{response.response.message}" else "Unknown Error" end end