class StatHat::Json::Response

Attributes

body[RW]
future[RW]
message[RW]
msg[RW]
msg=[RW]
multiple[RW]
status[RW]

Public Class Methods

new(response) click to toggle source
# File lib/stathat/json/response.rb, line 13
def initialize(response)
  @parsed = false
  case response
    when Celluloid::Future
      @future = response
    when Faraday::Response
      @body = response.body
    else
      @body = response
  end
end

Public Instance Methods

valid?() click to toggle source
# File lib/stathat/json/response.rb, line 45
def valid?
  status == 200
end

Private Instance Methods

_parse() click to toggle source
# File lib/stathat/json/response.rb, line 50
def _parse
  return if @parsed

  parsed_body = MultiJson.load(body)

  parsed_body.each_pair do |k, v|
    setter = "#{k}="
    public_send(setter, v) if respond_to? setter
  end

  @parsed = true
end