class SinglePlatform::Request

Public Class Methods

get(path, params={}) click to toggle source
# File lib/single_platform/request.rb, line 6
def self.get(path, params={})
  new.get(path, params)
end

Public Instance Methods

get(path, params={}) click to toggle source
# File lib/single_platform/request.rb, line 10
def get(path, params={})
  client.get do |req|
    req.url path
    req.headers['Accept'] = 'application/json'
    params.each do |key, value|
      req.params[key] = value
    end
    req.params['client'] = SinglePlatform.config.client_id
    req.params['sig'] = signature(path, params)
  end
end

Protected Instance Methods

client() click to toggle source
# File lib/single_platform/request.rb, line 32
def client
  @client ||= Faraday.new domain do |conn|
    conn.use FaradayMiddleware::EncodeJson
    conn.use FaradayMiddleware::ParseJson
    conn.use FaradayMiddleware::Instrumentation
    conn.use Faraday::Response::Logger
    conn.adapter Faraday.default_adapter
  end
end
domain() click to toggle source
# File lib/single_platform/request.rb, line 28
def domain
  "http://api.singleplatform.co"
end
signature(path, params) click to toggle source
# File lib/single_platform/request.rb, line 24
def signature(path, params)
  SinglePlatform::UrlSigning.make_signature(path, params, SinglePlatform.config.client_id, SinglePlatform.config.secret)
end