class Truework::APIResponse

Attributes

api_version[R]
body[R]
status_code[R]
url[R]

Public Class Methods

extract_version(response) click to toggle source
# File lib/truework/api_response.rb, line 17
def self.extract_version(response)
  response.each_header.to_h['version']
end
from_response(response) click to toggle source
# File lib/truework/api_response.rb, line 21
def self.from_response(response)
  new(
    response.uri,
    response.code.to_i,
    http_body: response.body,
    api_version: extract_version(response)
  )
end
new(url, status_code, http_body: '', api_version: nil, **_params) click to toggle source
# File lib/truework/api_response.rb, line 10
def initialize(url, status_code, http_body: '', api_version: nil, **_params)
  @url = url
  @status_code = status_code
  @body = http_body
  @api_version = api_version
end

Public Instance Methods

json() click to toggle source
# File lib/truework/api_response.rb, line 30
def json
  @json ||= JSON.parse(@body, symbolize_names: true) if @body && @body.strip != ''
end