class Ondotori::WebAPI::Api::Response

Attributes

result[R]

Public Class Methods

new(response) click to toggle source
# File lib/ondotori/webapi/api/response.rb, line 9
def initialize(response)
  @response = response
  validate
  @result = JSON.parse(@response.body)
end

Public Instance Methods

validate() click to toggle source
# File lib/ondotori/webapi/api/response.rb, line 15
def validate
  unless @response.code == "200"
    result = JSON.parse(@response.body)
    if result.key?("error")
      code = result["error"]["code"]
      message = result["error"]["message"]
      ratelimit = Ondotori::WebAPI::Api::RateLimit.new(@response)
      raise Ondotori::WebAPI::Api::Errors::ResponseError.new(message, code, ratelimit)
    end

    # unknown error...
    raise Ondotori::WebAPI::Api::Errors::Error.new("Server response code [#{@response.code}]", 9996)
  end
end