class Tripletexer::Endpoints::AbstractEndpoint
Attributes
api_client[R]
Public Class Methods
new(api_client)
click to toggle source
# File lib/tripletexer/endpoints/abstract_endpoint.rb, line 6 def initialize(api_client) @api_client = api_client end
Private Instance Methods
create_entities(path, body, params = {})
click to toggle source
# File lib/tripletexer/endpoints/abstract_endpoint.rb, line 42 def create_entities(path, body, params = {}) send_data(:post, path, body, params)['values'] end
create_entity(path, body, params = {})
click to toggle source
# File lib/tripletexer/endpoints/abstract_endpoint.rb, line 34 def create_entity(path, body, params = {}) send_data(:post, path, body, params)['value'] end
find_entities(path, params, &block)
click to toggle source
# File lib/tripletexer/endpoints/abstract_endpoint.rb, line 14 def find_entities(path, params, &block) Enumerator.new do |enum_yielder| request_params = params.dup loop do result = api_client.get(path, request_params, &block) result['values'].each do |value| enum_yielder.yield(value) end request_params['from'] = result['from'] + result['count'] break if result['fullResultSize'] <= request_params['from'] end end end
find_entity(path, params = {})
click to toggle source
# File lib/tripletexer/endpoints/abstract_endpoint.rb, line 30 def find_entity(path, params = {}) api_client.get(path, params)['value'] end
send_data(method, path, body, params)
click to toggle source
# File lib/tripletexer/endpoints/abstract_endpoint.rb, line 50 def send_data(method, path, body, params) api_client.public_send(method, path, params) do |req| req.body = ::Tripletexer::FormatHelpers.normalize_body(body) end end
update_entities(path, body, params = {})
click to toggle source
# File lib/tripletexer/endpoints/abstract_endpoint.rb, line 46 def update_entities(path, body, params = {}) send_data(:put, path, body, params)['values'] end
update_entity(path, body, params = {})
click to toggle source
# File lib/tripletexer/endpoints/abstract_endpoint.rb, line 38 def update_entity(path, body, params = {}) send_data(:put, path, body, params)['value'] end