class RAurora::Base
Attributes
api[R]
token[R]
Public Class Methods
new(base, api, token)
click to toggle source
# File lib/r_aurora.rb, line 11 def initialize(base, api, token) @uri = URI(base) @uri.port = "16021" @api = api @token = token end
Public Instance Methods
info()
click to toggle source
# File lib/r_aurora.rb, line 18 def info req = ::Net::HTTP::Get.new(uri('','')) res = ::Net::HTTP.start(@uri.hostname, @uri.port) {|http| http.request(req) } JSON.parse res.body end
Private Instance Methods
camel_case(method_name)
click to toggle source
# File lib/r_aurora.rb, line 51 def camel_case(method_name) "#{method_name.to_s.split('_').collect(&:capitalize).join.sub(/^\w/) {$&.downcase}}" end
http_request(req)
click to toggle source
# File lib/r_aurora.rb, line 41 def http_request(req) ::Net::HTTP.start(@uri.hostname, @uri.port) {|http| http.request(req) } end
method_missing(method_name, request_type, domain, payload=nil)
click to toggle source
# File lib/r_aurora.rb, line 27 def method_missing(method_name, request_type, domain, payload=nil) api_endpoint = camel_case(method_name) case request_type when "get" req = ::Net::HTTP::Get.new(uri(domain, api_endpoint)) when "put" req = ::Net::HTTP::Put.new(uri(domain, api_endpoint)) req.body = payload.to_json end res = http_request(req) p res.code JSON.parse res.body rescue res.body end
uri(domain, endpoint)
click to toggle source
# File lib/r_aurora.rb, line 47 def uri(domain, endpoint) URI.join(@uri, @api, @token, domain, endpoint) end