class JsonClient::Request

Attributes

auth_params[R]
params[R]
uri[R]

Public Class Methods

new(uri, auth_params, params) click to toggle source
# File lib/json_client/request.rb, line 7
def initialize(uri, auth_params, params)
  @uri = uri
  @auth_params = auth_params
  @params = params
end

Public Instance Methods

sign!(request) click to toggle source
# File lib/json_client/request.rb, line 13
def sign!(request)
  ApiAuth.sign!(
    request,
    auth_params[:client_id],
    auth_params[:secret_key]
  )
end

Protected Instance Methods

client() click to toggle source
# File lib/json_client/request.rb, line 31
def client
  Net::HTTP
end
execute!(request) click to toggle source
# File lib/json_client/request.rb, line 23
def execute!(request)
  Net::HTTP.start(uri.hostname, uri.port) do |http|
    http.request(
      sign!(request)
    )
  end
end
headers() click to toggle source
# File lib/json_client/request.rb, line 35
def headers
  {
    'Content-Type' => 'application/json',
    'Accept' => 'application/json'
  }
end
validate_variables() click to toggle source
# File lib/json_client/request.rb, line 42
def validate_variables
  %w(url auth_params).each do |name|
    fail "#{name} must be set" if (send name).nil?
  end
end