module BatchRequestClient::BatchUtil

Public Instance Methods

create_payload(array_objects, method, url) click to toggle source
# File lib/batch_request_client/batch_util.rb, line 12
def create_payload(array_objects, method, url)
  requests = []
  array_objects.each do |item|
    requests << request_signature(item, method, url)
  end
  padded_response(requests).to_json
end
get_batch_url(uri, mode) click to toggle source
# File lib/batch_request_client/batch_util.rb, line 4
def get_batch_url(uri, mode)
  base_url = "#{uri.scheme}://#{uri.host}:#{uri.port}"
  base_url = "#{uri.scheme}://#{uri.host}" if uri.scheme == 'https'
  batch_url = "#{base_url}/api/v1/batch_sequential"
  batch_url = "#{base_url}/api/v1/batch_parallel" if mode == :parallel
  batch_url
end
headers() click to toggle source
# File lib/batch_request_client/batch_util.rb, line 34
def headers
  { 'Content-Type' => 'application/json' }
end
padded_response(requests) click to toggle source
# File lib/batch_request_client/batch_util.rb, line 28
def padded_response(requests)
  {
    "requests": requests
  }
end
request_signature(item, method, url) click to toggle source
# File lib/batch_request_client/batch_util.rb, line 20
def request_signature(item, method, url)
  {
    "method": method,
    "url": "#{url}",
    "body": item
  }
end