Sha256: b3bb26b97aefeec73cf81dc28b80f6e2810ddb9c4af50c32eb4ee3b1cd97a775

Contents?: true

Size: 666 Bytes

Versions: 3

Compression:

Stored size: 666 Bytes

Contents

class TumblrWrapper::Response
  attr_reader :status, :meta
  def initialize(faraday_response)
    @faraday_response = faraday_response
    @status = faraday_response.status
    @response = faraday_response.body["response"]
    parse_meta
  end

  private
  def faraday_response
    @faraday_response
  end

  def response
    @response
  end

  def parse_meta
    resp = faraday_response.body["meta"] || {}
    @meta = resp.with_indifferent_access
  end

  def method_missing(meth, *args, &block)
    if response.keys.include?(meth.to_s)
      r = response[meth.to_s]
      r.respond_to?(:keys) ? r.with_indifferent_access : r
    else
      super
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
tumblr_wrapper-0.3.2 lib/tumblr_wrapper/response.rb
tumblr_wrapper-0.3.1 lib/tumblr_wrapper/response.rb
tumblr_wrapper-0.3.0 lib/tumblr_wrapper/response.rb