reso_transport 1.3.1 → 1.5.3
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 +4 -4
- data/.ruby-version +1 -0
- data/Gemfile.lock +9 -9
- data/README.md +20 -0
- data/bin/console +3 -3
- data/lib/reso_transport.rb +11 -9
- data/lib/reso_transport/client.rb +3 -2
- data/lib/reso_transport/enum.rb +1 -1
- data/lib/reso_transport/property.rb +2 -2
- data/lib/reso_transport/query.rb +14 -2
- data/lib/reso_transport/version.rb +1 -1
- data/reso_transport.gemspec +4 -4
- metadata +15 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 40a3ea232e3c5de03eea4c842abd89c85747dc0e67af48ed60a27dcefca572e1
|
4
|
+
data.tar.gz: 68c92d6a7282c9de70d4667275da926a0ea160a24c5daa515e2cb09af9a17bee
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: adf38742bf879054b2c6a83ca4cec083ae2aae478ff132e896e3e73eef09de7ba39e385ecf5588cf71760a6e28e01f0fb67917379347b00729eb70837adb4210
|
7
|
+
data.tar.gz: 2d59a335393538b6902ae6db24963284894c24f5c092bbf02cb403ec55a88270d83b3733b19abc8906946f1ee3ede4127eb68d9d0cd9d6dfd9621ff8490dfd48
|
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
2.7.1
|
data/Gemfile.lock
CHANGED
@@ -1,33 +1,33 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
reso_transport (1.
|
5
|
-
faraday (~> 0.
|
4
|
+
reso_transport (1.5.2)
|
5
|
+
faraday (~> 1.0.1)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
9
9
|
specs:
|
10
10
|
byebug (11.0.1)
|
11
|
-
faraday (0.
|
11
|
+
faraday (1.0.1)
|
12
12
|
multipart-post (>= 1.2, < 3)
|
13
13
|
minitest (5.13.0)
|
14
14
|
minitest-rg (5.2.0)
|
15
15
|
minitest (~> 5.0)
|
16
16
|
multipart-post (2.1.1)
|
17
|
-
rake (
|
18
|
-
vcr (
|
17
|
+
rake (13.0.1)
|
18
|
+
vcr (6.0.0)
|
19
19
|
|
20
20
|
PLATFORMS
|
21
21
|
ruby
|
22
22
|
|
23
23
|
DEPENDENCIES
|
24
|
-
bundler (~>
|
24
|
+
bundler (~> 2)
|
25
25
|
byebug
|
26
26
|
minitest (~> 5.0)
|
27
27
|
minitest-rg (~> 5.0)
|
28
|
-
rake (~>
|
28
|
+
rake (~> 13)
|
29
29
|
reso_transport!
|
30
|
-
vcr (~>
|
30
|
+
vcr (~> 6.0)
|
31
31
|
|
32
32
|
BUNDLED WITH
|
33
|
-
1.
|
33
|
+
2.1.4
|
data/README.md
CHANGED
@@ -30,6 +30,25 @@ This gem has been tested to work with:
|
|
30
30
|
* [Bridge Interactive](https://www.bridgeinteractive.com)
|
31
31
|
|
32
32
|
|
33
|
+
### Logging
|
34
|
+
|
35
|
+
You can either set a global logger in an initializer file:
|
36
|
+
|
37
|
+
```ruby
|
38
|
+
ResoTransport.configure do |c|
|
39
|
+
c.logger = Logger.new("some_log_file")
|
40
|
+
# OR
|
41
|
+
c.logger = Rails.logger
|
42
|
+
end
|
43
|
+
|
44
|
+
```
|
45
|
+
Or you can set a logger for each specific instance of a client which can be useful for debugging:
|
46
|
+
|
47
|
+
```ruby
|
48
|
+
@client = ResoTransport::Client.new(config.merge(logger: Logger.new("logfile")))
|
49
|
+
```
|
50
|
+
|
51
|
+
|
33
52
|
### Getting Connected
|
34
53
|
|
35
54
|
There are 2 strategies for authentication.
|
@@ -189,6 +208,7 @@ After checking out the repo, run `bin/setup` to install dependencies. Then, run
|
|
189
208
|
|
190
209
|
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
191
210
|
|
211
|
+
|
192
212
|
## Contributing
|
193
213
|
|
194
214
|
Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/reso_transport. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
data/bin/console
CHANGED
@@ -22,9 +22,9 @@ require 'byebug'
|
|
22
22
|
|
23
23
|
SECRETS = YAML.load_file("secrets.yml")
|
24
24
|
|
25
|
-
@trestle = ResoTransport::Client.new(SECRETS[:trestle])
|
26
|
-
@bridge = ResoTransport::Client.new(SECRETS[:bridge])
|
27
|
-
@spark = ResoTransport::Client.new(SECRETS[:spark])
|
25
|
+
@trestle = ResoTransport::Client.new(SECRETS[:trestle].merge(logger: Logger.new($stdout)))
|
26
|
+
@bridge = ResoTransport::Client.new(SECRETS[:bridge].merge(logger: Logger.new($stdout)))
|
27
|
+
# @spark = ResoTransport::Client.new(SECRETS[:spark])
|
28
28
|
@crmls = ResoTransport::Client.new(SECRETS[:crmls])
|
29
29
|
|
30
30
|
IRB.start(__FILE__)
|
data/lib/reso_transport.rb
CHANGED
@@ -21,17 +21,19 @@ require "reso_transport/query"
|
|
21
21
|
|
22
22
|
|
23
23
|
|
24
|
-
module Faraday
|
25
|
-
|
24
|
+
# module Faraday
|
25
|
+
# module Utils
|
26
26
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
27
|
+
# def escape(str)
|
28
|
+
# str.to_s.gsub(ESCAPE_RE) do |match|
|
29
|
+
# '%' + match.unpack('H2' * match.bytesize).join('%').upcase
|
30
|
+
# end.gsub(" ","%20")
|
31
31
|
|
32
|
-
|
33
|
-
|
34
|
-
end
|
32
|
+
# end
|
33
|
+
# end
|
34
|
+
# end
|
35
|
+
|
36
|
+
Faraday::Utils.default_space_encoding = "%20"
|
35
37
|
|
36
38
|
module ResoTransport
|
37
39
|
class Error < StandardError; end
|
@@ -8,11 +8,12 @@ module ResoTransport
|
|
8
8
|
@authentication = ensure_valid_auth_strategy(options.fetch(:authentication))
|
9
9
|
@vendor = options.fetch(:vendor, {})
|
10
10
|
@faraday_options = options.fetch(:faraday_options, {})
|
11
|
+
@logger = options.fetch(:logger, nil)
|
11
12
|
|
12
13
|
@connection = Faraday.new(@endpoint, @faraday_options) do |faraday|
|
13
14
|
faraday.request :url_encoded
|
14
|
-
faraday.response :logger,
|
15
|
-
#yield faraday if block_given?
|
15
|
+
faraday.response :logger, @logger || ResoTransport.configuration.logger
|
16
|
+
#yield faraday if block_given?
|
16
17
|
faraday.use Authentication::Middleware, @authentication
|
17
18
|
faraday.adapter Faraday.default_adapter #unless faraday.builder.send(:adapter_set?)
|
18
19
|
end
|
data/lib/reso_transport/enum.rb
CHANGED
@@ -7,7 +7,7 @@ module ResoTransport
|
|
7
7
|
|
8
8
|
Enum = Struct.new(:name, :type, :is_flags) do
|
9
9
|
def self.from_stream(args)
|
10
|
-
new("#{args[:schema].namespace}.#{args["Name"]}", args["UnderlyingType"], args["IsFlags"])
|
10
|
+
new("#{args[:schema].namespace}.#{args["Name"]}", args["UnderlyingType"], args["IsFlags"].to_s.downcase == "true")
|
11
11
|
end
|
12
12
|
|
13
13
|
def members
|
data/lib/reso_transport/query.rb
CHANGED
@@ -59,6 +59,7 @@ module ResoTransport
|
|
59
59
|
end
|
60
60
|
|
61
61
|
def count
|
62
|
+
p compile_params
|
62
63
|
limit(1).include_count
|
63
64
|
resp = resource.get(compile_params)
|
64
65
|
parsed_body = JSON.parse(resp.body)
|
@@ -76,7 +77,18 @@ module ResoTransport
|
|
76
77
|
end
|
77
78
|
end
|
78
79
|
|
79
|
-
def
|
80
|
+
def raw_results
|
81
|
+
resp = execute(false)
|
82
|
+
|
83
|
+
if resp[:success]
|
84
|
+
resp[:results]
|
85
|
+
else
|
86
|
+
puts resp[:meta]
|
87
|
+
raise "Request Failed"
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
91
|
+
def execute(parse_values=true)
|
80
92
|
resp = resource.get(compile_params)
|
81
93
|
parsed_body = JSON.parse(resp.body)
|
82
94
|
results = Array(parsed_body.delete("value"))
|
@@ -84,7 +96,7 @@ module ResoTransport
|
|
84
96
|
{
|
85
97
|
success: resp.success? && !parsed_body.has_key?("error"),
|
86
98
|
meta: parsed_body,
|
87
|
-
results: resource.parse(results)
|
99
|
+
results: parse_values ? resource.parse(results) : results
|
88
100
|
}
|
89
101
|
end
|
90
102
|
|
data/reso_transport.gemspec
CHANGED
@@ -24,12 +24,12 @@ Gem::Specification.new do |spec|
|
|
24
24
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
25
25
|
spec.require_paths = ["lib"]
|
26
26
|
|
27
|
-
spec.add_dependency "faraday", "~> 0.
|
27
|
+
spec.add_dependency "faraday", "~> 1.0.1"
|
28
28
|
|
29
|
-
spec.add_development_dependency "bundler", "~>
|
30
|
-
spec.add_development_dependency "rake", "~>
|
29
|
+
spec.add_development_dependency "bundler", "~> 2"
|
30
|
+
spec.add_development_dependency "rake", "~> 13"
|
31
31
|
spec.add_development_dependency "minitest", "~> 5.0"
|
32
32
|
spec.add_development_dependency "minitest-rg", "~> 5.0"
|
33
|
-
spec.add_development_dependency "vcr", "~>
|
33
|
+
spec.add_development_dependency "vcr", "~> 6.0"
|
34
34
|
spec.add_development_dependency "byebug"
|
35
35
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: reso_transport
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3
|
4
|
+
version: 1.5.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jon Druse
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-10-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -16,42 +16,42 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 1.0.1
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.
|
26
|
+
version: 1.0.1
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '2'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '2'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rake
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
47
|
+
version: '13'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
54
|
+
version: '13'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: minitest
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -86,14 +86,14 @@ dependencies:
|
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: '
|
89
|
+
version: '6.0'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: '
|
96
|
+
version: '6.0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: byebug
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -116,6 +116,7 @@ extensions: []
|
|
116
116
|
extra_rdoc_files: []
|
117
117
|
files:
|
118
118
|
- ".gitignore"
|
119
|
+
- ".ruby-version"
|
119
120
|
- ".travis.yml"
|
120
121
|
- CODE_OF_CONDUCT.md
|
121
122
|
- Gemfile
|
@@ -150,7 +151,7 @@ homepage: http://github.com/wrstudios/reso_transport
|
|
150
151
|
licenses:
|
151
152
|
- MIT
|
152
153
|
metadata: {}
|
153
|
-
post_install_message:
|
154
|
+
post_install_message:
|
154
155
|
rdoc_options: []
|
155
156
|
require_paths:
|
156
157
|
- lib
|
@@ -165,8 +166,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
165
166
|
- !ruby/object:Gem::Version
|
166
167
|
version: '0'
|
167
168
|
requirements: []
|
168
|
-
rubygems_version: 3.
|
169
|
-
signing_key:
|
169
|
+
rubygems_version: 3.1.2
|
170
|
+
signing_key:
|
170
171
|
specification_version: 4
|
171
172
|
summary: A utility for consuming RESO Web API connections
|
172
173
|
test_files: []
|