class Wrappi::Response

Wrapper around HTTP::Response check documentation at: github.com/httprb/http/wiki/Response-Handling

Attributes

block[R]
endpoint_klass[R]

Public Class Methods

new(endpoint_klass, &block) click to toggle source
# File lib/wrappi/response.rb, line 8
def initialize(endpoint_klass, &block)
  @endpoint_klass = endpoint_klass
  @block = block
end

Public Instance Methods

body() click to toggle source
# File lib/wrappi/response.rb, line 23
def body
  @body ||= parse
end
call()
Alias for: request
called?() click to toggle source
# File lib/wrappi/response.rb, line 19
def called?
  !!@request
end
error?() click to toggle source
# File lib/wrappi/response.rb, line 31
def error?
  !success?
end
json_parse() click to toggle source
# File lib/wrappi/response.rb, line 63
def json_parse
  JSON.parse(raw_body)
rescue
  raw_body
end
method_missing(method_name, *arguments, &block) click to toggle source
Calls superclass method
# File lib/wrappi/response.rb, line 69
def method_missing(method_name, *arguments, &block)
  if request.respond_to?(method_name)
    request.send(method_name, *arguments, &block)
  else
    super
  end
end
parse() click to toggle source
# File lib/wrappi/response.rb, line 57
def parse
  request.parse
rescue
  json_parse
end
raw_body() click to toggle source
# File lib/wrappi/response.rb, line 35
def raw_body
  @raw_body ||= request.to_s
end
request() click to toggle source
# File lib/wrappi/response.rb, line 13
def request
  @request ||= block.call
  # raise controlled errors
end
Also aliased as: call
respond_to_missing?(method_name, include_private = false) click to toggle source
Calls superclass method
# File lib/wrappi/response.rb, line 77
def respond_to_missing?(method_name, include_private = false)
  request.respond_to?(method_name) || super
end
status() click to toggle source
# File lib/wrappi/response.rb, line 43
def status
  request.code
end
Also aliased as: status_code
status_code()
Alias for: status
success?() click to toggle source
# File lib/wrappi/response.rb, line 27
def success?
  @success ||= endpoint_klass.success?(request)
end
to_h() click to toggle source
# File lib/wrappi/response.rb, line 48
def to_h
  @to_h ||= {
    raw_body: raw_body,
    code: code,
    uri: uri,
    success: success?
  }
end
uri() click to toggle source
# File lib/wrappi/response.rb, line 39
def uri
  request.uri.to_s
end