class RubyStackoverflow::Client

Attributes

configuration[RW]

Public Instance Methods

configure() { |configuration| ... } click to toggle source
# File lib/ruby-stackoverflow/client.rb, line 36
def configure
  yield(configuration)
end
getr(url,klass, options={}) click to toggle source
# File lib/ruby-stackoverflow/client.rb, line 32
def getr(url,klass, options={})
  request :get, url,klass ,options
end

Private Instance Methods

append_params_to_url(url, options) click to toggle source
# File lib/ruby-stackoverflow/client.rb, line 53
def append_params_to_url(url, options)
  url = Configuration.api_url + url
  options.merge!(key_params)
  options = options.to_a.map{|k,v|"#{k}=#{v}"}
  url+'?'+options.join('&')
end
key_params() click to toggle source
# File lib/ruby-stackoverflow/client.rb, line 60
def key_params
  {key: configuration.client_key, site: 'stackoverflow', access_token: configuration.access_token}
end
parse_response(data, klass) click to toggle source
# File lib/ruby-stackoverflow/client.rb, line 48
def parse_response(data, klass)
  data = JSON.parse(data.body, symbolize_names: true)
  ResponseData.new(data, klass)
end
request(method, url, klass, options={}) click to toggle source
# File lib/ruby-stackoverflow/client.rb, line 42
def request(method, url, klass, options={})
  url = append_params_to_url(url, parse_options(options))
  response = HTTParty.send(method,url)
  parse_response(response, klass)
end