class RecombeeApiClient::Batch
Batch
processing allows you to submit arbitrary sequence of requests
Attributes
Values of body parameters as a Hash
Public Class Methods
Source
# File lib/recombee_api_client/api/batch.rb, line 17 def initialize(requests, optional = {}) @requests = requests optional = normalize_optional(optional) @optional = optional @body_parameters = requests_to_batch_hash @timeout = requests.map{|r| r.timeout}.reduce(:+) @ensure_https = true @optional.each do |par, _| fail UnknownOptionalParameter.new(par) unless ["distinctRecomms"].include? par end end
-
*Required arguments*
-
requests
-> Array of API requests.
-
Public Instance Methods
Source
# File lib/recombee_api_client/api/batch.rb, line 31 def method :post end
HTTP method
Source
# File lib/recombee_api_client/api/batch.rb, line 46 def path p = '/{databaseId}/batch/' p end
Relative path to the endpoint
Source
# File lib/recombee_api_client/api/batch.rb, line 40 def query_parameters params = {} params end
Values of query path parameters as a Hash. name of parameter => value of the parameter
Private Instance Methods
Source
# File lib/recombee_api_client/api/batch.rb, line 61 def request_to_batch_hash(req) path = req.path path.slice! ('/{databaseId}') bh = { 'method' => req.method.to_s.upcase, 'path' => path } params = req.query_parameters if req.body_parameters params = params.merge(req.body_parameters) end bh['params'] = params if params.size > 0 bh end
Source
# File lib/recombee_api_client/api/batch.rb, line 53 def requests_to_batch_hash reqs = [] @requests.each { |r| reqs.push(request_to_batch_hash r) } result = {'requests' => reqs} result['distinctRecomms'] = @optional['distinctRecomms'] if @optional.key? 'distinctRecomms' result end