module QboApi::Util

Attributes

minor_version[W]

Public Instance Methods

add_minor_version_to(path) click to toggle source
# File lib/qbo_api/util.rb, line 40
def add_minor_version_to(path)
  if minor_version = self.minor_version
    add_params_to_path(path: path, params: { "minorversion" => minor_version })
  else
    path
  end
end
add_params_to_path(path:, params:) click to toggle source
# File lib/qbo_api/util.rb, line 48
def add_params_to_path(path:, params:)
  uri = URI.parse(path)
  params.each do |p|
    new_query_ar = URI.decode_www_form(uri.query || '') << p.to_a
    uri.query = URI.encode_www_form(new_query_ar)
  end
  uri.to_s
end
add_request_id_to(path) click to toggle source
# File lib/qbo_api/util.rb, line 32
def add_request_id_to(path)
  if QboApi.request_id
    add_params_to_path(path: path, params: { "requestid" => uuid })
  else
    path
  end
end
cdc_time(time) click to toggle source
# File lib/qbo_api/util.rb, line 13
def cdc_time(time)
  if time.is_a?(String)
    time
  else
    time.iso8601
  end
end
esc(query) click to toggle source
# File lib/qbo_api/util.rb, line 9
def esc(query)
  query.gsub("'", "\\\\'")
end
finalize_path(path, method:, params: nil) click to toggle source
# File lib/qbo_api/util.rb, line 25
def finalize_path(path, method:, params: nil)
  path = add_request_id_to(path) if method == :post
  path = add_minor_version_to(path)
  path = add_params_to_path(path: path, params: params) if params
  path
end
minor_version() click to toggle source
# File lib/qbo_api/util.rb, line 5
def minor_version
  @minor_version || QboApi.minor_version
end
uuid() click to toggle source
# File lib/qbo_api/util.rb, line 21
def uuid
  SecureRandom.uuid
end