Module: QboApi::Util
- Included in:
- QboApi
- Defined in:
- lib/qbo_api/util.rb
Instance Attribute Summary collapse
Instance Method Summary collapse
- #add_minor_version_to(path) ⇒ Object
- #add_params_to_path(path:, params:) ⇒ Object
- #add_request_id_to(path) ⇒ Object
- #cdc_time(time) ⇒ Object
- #esc(query) ⇒ Object
- #finalize_path(path, method:, params: nil) ⇒ Object
- #uuid ⇒ Object
Instance Attribute Details
#minor_version ⇒ Object
5 6 7 |
# File 'lib/qbo_api/util.rb', line 5 def minor_version @minor_version || QboApi.minor_version end |
Instance Method Details
#add_minor_version_to(path) ⇒ Object
40 41 42 43 44 45 46 |
# 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:) ⇒ Object
48 49 50 51 52 53 54 55 |
# 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) ⇒ Object
32 33 34 35 36 37 38 |
# 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) ⇒ Object
13 14 15 16 17 18 19 |
# 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) ⇒ Object
9 10 11 |
# File 'lib/qbo_api/util.rb', line 9 def esc(query) query.gsub("'", "\\\\'") end |
#finalize_path(path, method:, params: nil) ⇒ Object
25 26 27 28 29 30 |
# 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 |
#uuid ⇒ Object
21 22 23 |
# File 'lib/qbo_api/util.rb', line 21 def uuid SecureRandom.uuid end |