class Ant::Client::RESTClient
Public Class Methods
new(configs)
click to toggle source
# File lib/ant/client/rest_client.rb, line 10 def initialize(configs) @session = Session.build(configs) @config = configs @format = Format.build(configs) @endpoint = configs[:endpoint] @validator = Validator.build(configs) end
Public Instance Methods
delete(path, data = {})
click to toggle source
# File lib/ant/client/rest_client.rb, line 30 def delete(path, data = {}) perform_request(:delete, path, data) end
get(path, data = {})
click to toggle source
# File lib/ant/client/rest_client.rb, line 18 def get(path, data = {}) perform_request(:get, path, data) end
patch(path, data = {})
click to toggle source
# File lib/ant/client/rest_client.rb, line 34 def patch(path, data = {}) perform_request(:patch, path, data) end
post(path, data = {})
click to toggle source
# File lib/ant/client/rest_client.rb, line 22 def post(path, data = {}) perform_request(:post, path, data) end
put(path, data = {})
click to toggle source
# File lib/ant/client/rest_client.rb, line 26 def put(path, data = {}) perform_request(:put, path, data) end
raw_get(path, data = {})
click to toggle source
# File lib/ant/client/rest_client.rb, line 38 def raw_get(path, data = {}) perform_raw_request(:get, path, data) end
raw_post(path, data = {})
click to toggle source
# File lib/ant/client/rest_client.rb, line 42 def raw_post(path, data = {}) perform_raw_request(:post, path, data) end
Private Instance Methods
perform_raw_request(method, path, data)
click to toggle source
# File lib/ant/client/rest_client.rb, line 48 def perform_raw_request(method, path, data) log_debug('Performing request', method: method, path: path, data: data) init_time = Time.now uri = (path.start_with?('http') ? path : "#{@endpoint}#{path}") result = @session.perform_request(method, uri, @format.pack(data)) log_info('Request perfomed', path: path, server: @endpoint, verb: method, processing_time: (Time.now - init_time).to_f * 1000) result end
perform_request(method, path, data)
click to toggle source
# File lib/ant/client/rest_client.rb, line 62 def perform_request(method, path, data) result = perform_raw_request(method, path, data) unpacked = @format.unpack(result) @validator.validate(unpacked) end