class WithingsAPI::BaseClient

A base client class.

Public Class Methods

new(credentials) click to toggle source

Initializes a BaseClient object.

@param credentials [Hash] Credentials @return [WithingsAPI::BaseClient]

# File lib/withings_api.rb, line 19
def initialize(credentials)
  @credentials = credentials
end

Public Instance Methods

get(resource_url, params) click to toggle source

Calls a Withings API using GET method.

@param resource_url [String] Resource URL @param params [Hash] Parameters @return [WithingsAPI::Response]

# File lib/withings_api.rb, line 28
def get(resource_url, params)
  p = authenticated('GET', resource_url, params)
  url = resource_url + '?' + URI.encode_www_form(p)
  res = open(url)
  Response.new(res)
end

Private Instance Methods

authenticated(method, url, params) click to toggle source

Returns authenticated parameters.

@param method [String] A HTTP method @param url [String] A URL @param params [Hash] Parameters @return [Array]

# File lib/withings_api.rb, line 43
def authenticated(method, url, params)
  auth = SimpleOAuth::Header.new(method, url, params, @credentials)
  h = auth.signed_attributes.merge(params)
  h.sort_by{|k,v|k.to_s}
end