class Koine::RestClient::Client
Public Class Methods
new( adapter: Adapters::HttpPartyAdapter.new, response_parser: ResponseParser.new, base_request: Request.new )
click to toggle source
# File lib/koine/rest_client/client.rb, line 8 def initialize( adapter: Adapters::HttpPartyAdapter.new, response_parser: ResponseParser.new, base_request: Request.new ) @adapter = adapter @response_parser = response_parser @request = base_request end
Public Instance Methods
async() { |builder| ... }
click to toggle source
# File lib/koine/rest_client/client.rb, line 68 def async builder = AsyncBuilder.new(self, @response_parser) yield(builder) builder.parsed_responses end
create_delete_request(path, body = {}, options = {})
click to toggle source
# File lib/koine/rest_client/client.rb, line 64 def create_delete_request(path, body = {}, options = {}) create_request(:delete, path, options.merge(body: body)) end
create_get_request(path, query = {}, options = {})
click to toggle source
# File lib/koine/rest_client/client.rb, line 24 def create_get_request(path, query = {}, options = {}) create_request(:get, path, options.merge(query_params: query)) end
create_patch_request(path, body = {}, options = {})
click to toggle source
# File lib/koine/rest_client/client.rb, line 54 def create_patch_request(path, body = {}, options = {}) create_request(:patch, path, options.merge(body: body)) end
create_post_request(path, body = {}, options = {})
click to toggle source
# File lib/koine/rest_client/client.rb, line 34 def create_post_request(path, body = {}, options = {}) create_request(:post, path, options.merge(body: body)) end
create_put_request(path, body = {}, options = {})
click to toggle source
# File lib/koine/rest_client/client.rb, line 44 def create_put_request(path, body = {}, options = {}) create_request(:put, path, options.merge(body: body)) end
delete(path, body = {}, options = {}, &block)
click to toggle source
# File lib/koine/rest_client/client.rb, line 58 def delete(path, body = {}, options = {}, &block) request = create_delete_request(path, body, options) response = perform_request(request) parse_response(response, &block) end
get(path, query = {}, options = {}, &block)
click to toggle source
# File lib/koine/rest_client/client.rb, line 18 def get(path, query = {}, options = {}, &block) request = create_get_request(path, query, options) response = perform_request(request) parse_response(response, &block) end
patch(path, body = {}, options = {}, &block)
click to toggle source
# File lib/koine/rest_client/client.rb, line 48 def patch(path, body = {}, options = {}, &block) request = create_patch_request(path, body, options) response = perform_request(request) parse_response(response, &block) end
perform_request(request)
click to toggle source
# File lib/koine/rest_client/client.rb, line 74 def perform_request(request) @adapter.send_request(request) end
post(path, body = {}, options = {}, &block)
click to toggle source
# File lib/koine/rest_client/client.rb, line 28 def post(path, body = {}, options = {}, &block) request = create_post_request(path, body, options) response = perform_request(request) parse_response(response, &block) end
put(path, body = {}, options = {}, &block)
click to toggle source
# File lib/koine/rest_client/client.rb, line 38 def put(path, body = {}, options = {}, &block) request = create_put_request(path, body, options) response = perform_request(request) parse_response(response, &block) end
Private Instance Methods
create_request(method, path, options = {})
click to toggle source
# File lib/koine/rest_client/client.rb, line 80 def create_request(method, path, options = {}) options = options.merge(method: method, path: path) @request.with_added_options(options) end
parse_response(response, &block)
click to toggle source
# File lib/koine/rest_client/client.rb, line 85 def parse_response(response, &block) @response_parser.parse(response, &block) end