reso_api 1.8.5 → 1.8.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a80f6b9174a1efece4648a3f95fd2bf1b8c9479ec9bb39d1ec8690180ef8ea4e
4
- data.tar.gz: 67759fa70652278e8a905f40e69cc546f356d73ec2e24db2ef8c9034a7eeb699
3
+ metadata.gz: cec3a7afb6f4509ff07af86b56de711ac1be47590266c4fac143898d6126d816
4
+ data.tar.gz: 9bffcb828c656eb321259ea2eebcd0b59aacb6b7c499da5e22a5f50837fe7a51
5
5
  SHA512:
6
- metadata.gz: 874101c3e8871647ba4937ce922053771e7b692a8fe6f647a0f8ba01a9809d0d74c7fe9f278e1c681bd7717844f1ec774c6f935ceade6961ced1ff4983b441f9
7
- data.tar.gz: 22d0469a5f32f024f5b86a3c8cd856744b6010bda5fa11e92e33d8bf53de49d3e2c82413e6a01c4947fa1349b3f039f34d71317735d2eb4c9528cbcca5146b47
6
+ metadata.gz: 20363d580a798a53991b0c6f7f13132a9f9078cdf54e92f8bd5f50cf251f7f7b67fd9baa8d3921745b7d28bc373c2373e7829fc87377764d690e6b0d5570efbd
7
+ data.tar.gz: 51ed10865cdd78a3e27743e70e935b043b53fa5d5492ab065d2fe520c4f376ab006445694742ef3cd558221066cfac6056c19c1cb7e1d186a723873436d84af6
@@ -57,8 +57,11 @@ module RESO
57
57
  define_method method_name do |*args, &block|
58
58
  hash = args.first.is_a?(Hash) ? args.first : {}
59
59
 
60
- filter = hash[:filter]
61
- filter = [filter, "OriginatingSystemName eq '#{osn}'"].compact.join(' and ') if osn.present?
60
+ filter = hash[:filter].to_s
61
+ if !filter.include?('OriginatingSystemName') && osn.present?
62
+ osn_filter = format("OriginatingSystemName eq '%s'", osn.to_s)
63
+ filter = [filter, osn_filter].compact.join(' and ')
64
+ end
62
65
 
63
66
  endpoint = FILTERABLE_ENDPOINTS[method_name]
64
67
  response = {}
@@ -76,11 +79,9 @@ module RESO
76
79
  }.compact
77
80
  if !block.nil?
78
81
  response = perform_call(endpoint, params)
79
-
80
82
  if response["value"].class.eql?(Array)
81
83
  hash[:batch] ? block.call(response["value"]) : response["value"].each{|hash| block.call(hash)}
82
84
  end
83
-
84
85
  while (next_link = response["@odata.nextLink"]).present?
85
86
  response = perform_call(next_link, nil)
86
87
  if response["value"].class.eql?(Array)
@@ -165,14 +166,15 @@ module RESO
165
166
 
166
167
  def perform_call(endpoint, params, max_retries = 5, debug = false)
167
168
  uri = uri_for_endpoint(endpoint)
168
- params = params.presence || {}
169
169
  retries = 0
170
170
 
171
- query = params.present? ? URI.encode_www_form(params).gsub("+", " ") : ""
172
- uri.query && uri.query.length > 0 ? uri.query += '&' + query : uri.query = query
173
- return URI::decode(uri.request_uri) if params.dig(:$debug).present?
171
+ if params.present?
172
+ query = params.present? ? URI.encode_www_form(params).gsub("+", " ") : ""
173
+ uri.query && uri.query.length > 0 ? uri.query += '&' + query : uri.query = query
174
+ return URI::decode(uri.request_uri) if params.dig(:$debug).present?
175
+ end
174
176
 
175
- begin
177
+ begin
176
178
  req = Net::HTTP::Get.new(uri.request_uri)
177
179
  req['Authorization'] = "Bearer #{auth_token}"
178
180
  res = Net::HTTP.start(uri.host, uri.port, :use_ssl => uri.scheme == 'https') do |http|
@@ -1,3 +1,3 @@
1
1
  module ResoApi
2
- VERSION = "1.8.5"
2
+ VERSION = "1.8.7"
3
3
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: reso_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.5
4
+ version: 1.8.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Edlund
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2025-03-10 00:00:00.000000000 Z
10
+ date: 2025-03-11 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: bundler