allscripts_unity_client 2.0.1 → 2.0.2
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
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 78b65bf8597ab01389fb52af523a577324cf25af
|
4
|
+
data.tar.gz: 906619caa58558d76501a941e68d9f440e7bfeee
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6d8287a426c5c4bed6e1aa8bb084d1d0e0e14e43c6983bbdbf92fc4eb27fca5528ff7ef02951a76289855cf9284cc2d97f8823d067f0c5dc7e9ebda1bc69cee2
|
7
|
+
data.tar.gz: 32e1e7798cbaf325d5cc2abd90fe70336216cf54e4d88444f7bc2ce285d8a9d0c836ac4ca8c561718f036cebf3b8d401095e1ffbd637dff2fb801177f40e49b4
|
data/README.md
CHANGED
@@ -45,7 +45,7 @@ unity_client = AllscriptsUnityClient.create({
|
|
45
45
|
})
|
46
46
|
```
|
47
47
|
|
48
|
-
|
48
|
+
### SSL Management
|
49
49
|
|
50
50
|
[Faraday](https://github.com/lostisland/faraday) is used in combination with [EM-HTTP-Request](https://github.com/igrigorik/em-http-request) to send HTTP requests when using JSON clients. Faraday requires
|
51
51
|
some configuration when making connections over SSL. AllscriptsUnityClient will try to auto-detect the location of the
|
@@ -77,6 +77,24 @@ unity_client = AllscriptsUnityClient.create({
|
|
77
77
|
})
|
78
78
|
```
|
79
79
|
|
80
|
+
### Request Timeout
|
81
|
+
|
82
|
+
When using a JSON client, request timeouts can be configured:
|
83
|
+
|
84
|
+
```ruby
|
85
|
+
# Mode defaults to :soap
|
86
|
+
unity_client = AllscriptsUnityClient.create({
|
87
|
+
mode: :json,
|
88
|
+
base_unity_url: "http://unity.base.url",
|
89
|
+
appname: "appname",
|
90
|
+
username: "username",
|
91
|
+
password: "password",
|
92
|
+
timeout: 30
|
93
|
+
})
|
94
|
+
```
|
95
|
+
|
96
|
+
Timeout is given in seconds and defaults to 90.
|
97
|
+
|
80
98
|
### Security token management
|
81
99
|
|
82
100
|
Security tokens can be manually requested using the `get_security_token!` method:
|
@@ -1,7 +1,7 @@
|
|
1
1
|
module AllscriptsUnityClient
|
2
2
|
class ClientOptions
|
3
3
|
attr_accessor :proxy, :logger
|
4
|
-
attr_reader :base_unity_url, :username, :password, :appname, :timezone, :ca_file, :ca_path
|
4
|
+
attr_reader :base_unity_url, :username, :password, :appname, :timezone, :ca_file, :ca_path, :timeout
|
5
5
|
|
6
6
|
def initialize(options = {})
|
7
7
|
@base_unity_url = options[:base_unity_url] ? options[:base_unity_url].gsub(/\/$/, '') : nil
|
@@ -13,6 +13,7 @@ module AllscriptsUnityClient
|
|
13
13
|
@logger = options[:logger]
|
14
14
|
@ca_file = options[:ca_file]
|
15
15
|
@ca_path = options[:ca_path]
|
16
|
+
@timeout = options[:timeout]
|
16
17
|
|
17
18
|
validate_options
|
18
19
|
end
|
@@ -78,5 +79,11 @@ module AllscriptsUnityClient
|
|
78
79
|
return false if @ca_path.empty?
|
79
80
|
true
|
80
81
|
end
|
82
|
+
|
83
|
+
def timeout?
|
84
|
+
return false if @timeout.nil?
|
85
|
+
return false if @timeout.empty?
|
86
|
+
true
|
87
|
+
end
|
81
88
|
end
|
82
89
|
end
|
@@ -26,6 +26,8 @@ module AllscriptsUnityClient
|
|
26
26
|
request.url "#{UNITY_JSON_ENDPOINT}/MagicJson"
|
27
27
|
request.headers['Content-Type'] = 'application/json'
|
28
28
|
request.body = JSON.generate(request_data.to_hash)
|
29
|
+
set_request_timeout(request)
|
30
|
+
|
29
31
|
start_timer
|
30
32
|
end
|
31
33
|
end_timer
|
@@ -54,6 +56,8 @@ module AllscriptsUnityClient
|
|
54
56
|
request.url "#{UNITY_JSON_ENDPOINT}/GetToken"
|
55
57
|
request.headers['Content-Type'] = 'application/json'
|
56
58
|
request.body = JSON.generate(request_data)
|
59
|
+
set_request_timeout(request)
|
60
|
+
|
57
61
|
start_timer
|
58
62
|
end
|
59
63
|
end_timer
|
@@ -77,6 +81,8 @@ module AllscriptsUnityClient
|
|
77
81
|
request.url "#{UNITY_JSON_ENDPOINT}/RetireSecurityToken"
|
78
82
|
request.headers['Content-Type'] = 'application/json'
|
79
83
|
request.body = JSON.generate(request_data)
|
84
|
+
set_request_timeout(request)
|
85
|
+
|
80
86
|
start_timer
|
81
87
|
end
|
82
88
|
end_timer
|
@@ -147,5 +153,15 @@ module AllscriptsUnityClient
|
|
147
153
|
|
148
154
|
nil
|
149
155
|
end
|
156
|
+
|
157
|
+
def set_request_timeout(request)
|
158
|
+
if @options.timeout?
|
159
|
+
request.options[:timeout] = @options.timeout
|
160
|
+
request.options[:open_timeout] = @options.timeout
|
161
|
+
else
|
162
|
+
request.options[:timeout] = 90
|
163
|
+
request.options[:open_timeout] = 90
|
164
|
+
end
|
165
|
+
end
|
150
166
|
end
|
151
167
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: allscripts_unity_client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ash Gupta
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-
|
12
|
+
date: 2014-05-01 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: savon
|