Sha256: 8433f0c8522f9f8a93aadd606a3b7554c26a32ceae8a02cf50bc859f539604b4

Contents?: true

Size: 590 Bytes

Versions: 4

Compression:

Stored size: 590 Bytes

Contents

require "hashie"

module Jets::Api
  class Response
    attr_reader(
      :http_resp,
      :http_body,
      :http_headers,
      :http_status,
      :request_id
    )
    def initialize(http_resp)
      @http_resp = http_resp
      @http_body = http_resp.body
      @http_headers = http_resp.to_hash
      @http_status = http_resp.code.to_i
      @request_id = http_resp["request-id"]
    end

    def data
      data = JSON.parse(@http_resp.body, symbolize_names: true)
      Hashie::Mash.new(data)
    rescue JSON::ParserError
      raise Jets::Api::Error, http_resp
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
jets-6.0.5 lib/jets/api/response.rb
jets-6.0.4 lib/jets/api/response.rb
jets-6.0.3 lib/jets/api/response.rb
jets-6.0.2 lib/jets/api/response.rb