domoscio_admin 0.3.5 → 0.3.8
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 97bfb339c4cb14de52c9e14dc52279aa19edc9985d1226968ae36ce2414a1b3b
|
4
|
+
data.tar.gz: 9193e30b9763df7354b9e4c07d864c120f5382c1f4266ad833c52f0055bceca6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 45d91e72a7513da0c0814fefb9044f83418614e475ef839345f624777fc3c588360239d9eb7cfc9347f9829ecef404700ae9a1f53a8f812c567d016965fd54fa
|
7
|
+
data.tar.gz: 18507d0bffde33e49b05b34dd3fc4dfeffc0349e44832c41719d4690017a6e782b8ab7269135c9dc2af2d9291f6330223721b3a14c59662c4d681f4f884e6c96
|
data/lib/domoscio_admin.rb
CHANGED
@@ -12,6 +12,7 @@ require 'domoscio_admin/resources/resource_instance'
|
|
12
12
|
require 'domoscio_admin/resources/instances/instance_parameter'
|
13
13
|
require 'domoscio_admin/resources/instances/instance_user'
|
14
14
|
require 'domoscio_admin/resources/instances/student_group'
|
15
|
+
require 'domoscio_admin/resources/instances/learning_program'
|
15
16
|
require 'domoscio_admin/resources/users/user'
|
16
17
|
|
17
18
|
module DomoscioAdmin
|
@@ -50,15 +51,22 @@ module DomoscioAdmin
|
|
50
51
|
# Raises DomoscioAdmin::ProcessingError on Internal Error
|
51
52
|
#
|
52
53
|
def self.request(method, url, params = {})
|
54
|
+
params ||= {}
|
53
55
|
store_tokens, headers = request_headers
|
56
|
+
params.merge!({ 'per_page': 2000 }) unless params[:per_page]
|
54
57
|
uri = api_uri(url)
|
55
|
-
|
56
58
|
response = DomoscioAdmin.send_request(uri, method, params, headers)
|
57
59
|
return response if response.is_a? DomoscioAdmin::ProcessingError
|
58
60
|
|
59
61
|
begin
|
60
62
|
raise_http_failure(uri, response, params)
|
61
|
-
|
63
|
+
|
64
|
+
if response['Content-Type'] == 'application/zip'
|
65
|
+
data = response
|
66
|
+
else
|
67
|
+
data = DomoscioAdmin::JSON.load(response.body.nil? ? '' : response.body)
|
68
|
+
end
|
69
|
+
|
62
70
|
if store_tokens
|
63
71
|
DomoscioAdmin::AuthorizationToken::Manager.storage.store({
|
64
72
|
access_token: response['Accesstoken'],
|
@@ -71,6 +79,24 @@ module DomoscioAdmin
|
|
71
79
|
data = e
|
72
80
|
end
|
73
81
|
|
82
|
+
if response['Total']
|
83
|
+
pagetotal = (response['Total'].to_i / response['Per-Page'].to_f).ceil
|
84
|
+
(2..pagetotal).each do |j|
|
85
|
+
response = DomoscioAdmin.send_request(uri, method, params.merge({ page: j }), headers)
|
86
|
+
return response if response.is_a? DomoscioAdmin::ProcessingError
|
87
|
+
|
88
|
+
begin
|
89
|
+
raise_http_failure(uri, response, params)
|
90
|
+
body = DomoscioAdmin::JSON.load(response.body.nil? ? '' : response.body)
|
91
|
+
data += body
|
92
|
+
data.flatten!
|
93
|
+
rescue MultiJson::LoadError => e
|
94
|
+
return ProcessingError.new(uri, 500, e, response.body, params)
|
95
|
+
rescue ResponseError => e
|
96
|
+
return e
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
74
100
|
data
|
75
101
|
end
|
76
102
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: domoscio_admin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pascal Lim
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-08-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: multi_json
|
@@ -55,6 +55,7 @@ files:
|
|
55
55
|
- lib/domoscio_admin/json.rb
|
56
56
|
- lib/domoscio_admin/resources/instances/instance_parameter.rb
|
57
57
|
- lib/domoscio_admin/resources/instances/instance_user.rb
|
58
|
+
- lib/domoscio_admin/resources/instances/learning_program.rb
|
58
59
|
- lib/domoscio_admin/resources/instances/student_group.rb
|
59
60
|
- lib/domoscio_admin/resources/resource.rb
|
60
61
|
- lib/domoscio_admin/resources/resource_instance.rb
|