files.com 1.0.72 → 1.0.77
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -1
- data/Gemfile.lock +82 -0
- data/_VERSION +1 -1
- data/docs/bundle.md +29 -3
- data/docs/bundle_download.md +35 -0
- data/docs/clickwrap.md +143 -0
- data/docs/site.md +4 -0
- data/docs/user.md +8 -0
- data/files.com.gemspec +3 -3
- data/lib/files.com.rb +3 -1
- data/lib/files.com/list.rb +1 -1
- data/lib/files.com/models/behavior.rb +2 -2
- data/lib/files.com/models/bundle.rb +54 -0
- data/lib/files.com/models/bundle_download.rb +49 -0
- data/lib/files.com/models/clickwrap.rb +197 -0
- data/lib/files.com/models/file.rb +4 -4
- data/lib/files.com/models/folder.rb +1 -0
- data/lib/files.com/models/session.rb +1 -0
- data/lib/files.com/models/site.rb +7 -0
- data/lib/files.com/models/user.rb +15 -0
- data/lib/files.com/sizable_io.rb +2 -2
- data/spec/list_spec.rb +24 -2
- data/spec/spec_helper.rb +1 -3
- data/test/test.rb +1 -1
- metadata +20 -15
data/files.com.gemspec
CHANGED
@@ -10,11 +10,11 @@ Gem::Specification.new do |s|
|
|
10
10
|
s.summary = "Files.com Ruby client."
|
11
11
|
s.description = "The Files.com Ruby client."
|
12
12
|
s.license = "MIT"
|
13
|
-
s.required_ruby_version = ">= 2.
|
14
|
-
s.add_dependency 'faraday', ">= 1.0.1"
|
15
|
-
s.add_dependency 'net-http-persistent'
|
13
|
+
s.required_ruby_version = ">= 2.5"
|
16
14
|
s.add_dependency 'addressable', ">= 2.7.0"
|
17
15
|
s.add_dependency 'concurrent-ruby', ">= 1.1.3"
|
16
|
+
s.add_dependency 'faraday', ">= 1.0.1"
|
17
|
+
s.add_dependency 'net-http-persistent'
|
18
18
|
|
19
19
|
s.files = `find *`.split("\n").uniq.sort.reject(&:empty?)
|
20
20
|
s.executables = [ "files", "files-console" ]
|
data/lib/files.com.rb
CHANGED
@@ -34,6 +34,8 @@ require "files.com/models/auto"
|
|
34
34
|
require "files.com/models/automation"
|
35
35
|
require "files.com/models/behavior"
|
36
36
|
require "files.com/models/bundle"
|
37
|
+
require "files.com/models/bundle_download"
|
38
|
+
require "files.com/models/clickwrap"
|
37
39
|
require "files.com/models/dns_record"
|
38
40
|
require "files.com/models/errors"
|
39
41
|
require "files.com/models/file"
|
@@ -94,7 +96,7 @@ module Files
|
|
94
96
|
@read_timeout = 80
|
95
97
|
|
96
98
|
class << self
|
97
|
-
attr_accessor :api_key, :base_url, :initial_network_retry_delay, :
|
99
|
+
attr_accessor :api_key, :base_url, :initial_network_retry_delay, :max_network_retry_delay, :open_timeout, :read_timeout, :proxy, :session_id
|
98
100
|
end
|
99
101
|
|
100
102
|
# map to the same values as the standard library's logger
|
data/lib/files.com/list.rb
CHANGED
@@ -201,9 +201,9 @@ module Files
|
|
201
201
|
def self.update(id, params = {}, options = {})
|
202
202
|
params ||= {}
|
203
203
|
params[:id] = id
|
204
|
-
raise InvalidParameterError.new("Bad parameter: id must be one of String, Integer, Hash") if params.dig(:id) and [String, Integer, Hash].none? { |klass| params.dig(:id).is_a?(klass) }
|
204
|
+
raise InvalidParameterError.new("Bad parameter: id must be one of String, Integer, Hash") if params.dig(:id) and [ String, Integer, Hash ].none? { |klass| params.dig(:id).is_a?(klass) }
|
205
205
|
raise InvalidParameterError.new("Bad parameter: value must be an String") if params.dig(:value) and !params.dig(:value).is_a?(String)
|
206
|
-
raise InvalidParameterError.new("Bad parameter: attachment_file must be one of String, Integer, Hash") if params.dig(:attachment_file) and [String, Integer, Hash].none? { |klass| params.dig(:attachment_file).is_a?(klass) }
|
206
|
+
raise InvalidParameterError.new("Bad parameter: attachment_file must be one of String, Integer, Hash") if params.dig(:attachment_file) and [ String, Integer, Hash ].none? { |klass| params.dig(:attachment_file).is_a?(klass) }
|
207
207
|
raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
|
208
208
|
|
209
209
|
response, options = Api.send_request("/behaviors/#{params[:id]}", :patch, params, options)
|
@@ -54,6 +54,15 @@ module Files
|
|
54
54
|
@attributes[:require_registration] = value
|
55
55
|
end
|
56
56
|
|
57
|
+
# string - Legal text that must be agreed to prior to accessing Bundle.
|
58
|
+
def clickwrap_body
|
59
|
+
@attributes[:clickwrap_body]
|
60
|
+
end
|
61
|
+
|
62
|
+
def clickwrap_body=(value)
|
63
|
+
@attributes[:clickwrap_body] = value
|
64
|
+
end
|
65
|
+
|
57
66
|
# int64 - Bundle ID
|
58
67
|
def id
|
59
68
|
@attributes[:id]
|
@@ -77,6 +86,15 @@ module Files
|
|
77
86
|
@attributes[:expires_at] = value
|
78
87
|
end
|
79
88
|
|
89
|
+
# int64 - Maximum number of times bundle can be accessed
|
90
|
+
def max_uses
|
91
|
+
@attributes[:max_uses]
|
92
|
+
end
|
93
|
+
|
94
|
+
def max_uses=(value)
|
95
|
+
@attributes[:max_uses] = value
|
96
|
+
end
|
97
|
+
|
80
98
|
# string - Bundle internal note
|
81
99
|
def note
|
82
100
|
@attributes[:note]
|
@@ -104,6 +122,24 @@ module Files
|
|
104
122
|
@attributes[:username] = value
|
105
123
|
end
|
106
124
|
|
125
|
+
# int64 - ID of the clickwrap to use with this bundle.
|
126
|
+
def clickwrap_id
|
127
|
+
@attributes[:clickwrap_id]
|
128
|
+
end
|
129
|
+
|
130
|
+
def clickwrap_id=(value)
|
131
|
+
@attributes[:clickwrap_id] = value
|
132
|
+
end
|
133
|
+
|
134
|
+
# int64 - ID of the associated inbox, if available.
|
135
|
+
def inbox_id
|
136
|
+
@attributes[:inbox_id]
|
137
|
+
end
|
138
|
+
|
139
|
+
def inbox_id=(value)
|
140
|
+
@attributes[:inbox_id] = value
|
141
|
+
end
|
142
|
+
|
107
143
|
# array - A list of paths in this bundle
|
108
144
|
def paths
|
109
145
|
@attributes[:paths]
|
@@ -143,10 +179,13 @@ module Files
|
|
143
179
|
# Parameters:
|
144
180
|
# password - string - Password for this bundle.
|
145
181
|
# expires_at - string - Bundle expiration date/time
|
182
|
+
# max_uses - int64 - Maximum number of times bundle can be accessed
|
146
183
|
# description - string - Public description
|
147
184
|
# note - string - Bundle internal note
|
148
185
|
# code - string - Bundle code. This code forms the end part of the Public URL.
|
149
186
|
# require_registration - boolean - Show a registration page that captures the downloader's name and email address?
|
187
|
+
# clickwrap_id - int64 - ID of the clickwrap to use with this bundle.
|
188
|
+
# inbox_id - int64 - ID of the associated inbox, if available.
|
150
189
|
def update(params = {})
|
151
190
|
params ||= {}
|
152
191
|
params[:id] = @attributes[:id]
|
@@ -154,9 +193,12 @@ module Files
|
|
154
193
|
raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
|
155
194
|
raise InvalidParameterError.new("Bad parameter: password must be an String") if params.dig(:password) and !params.dig(:password).is_a?(String)
|
156
195
|
raise InvalidParameterError.new("Bad parameter: expires_at must be an String") if params.dig(:expires_at) and !params.dig(:expires_at).is_a?(String)
|
196
|
+
raise InvalidParameterError.new("Bad parameter: max_uses must be an Integer") if params.dig(:max_uses) and !params.dig(:max_uses).is_a?(Integer)
|
157
197
|
raise InvalidParameterError.new("Bad parameter: description must be an String") if params.dig(:description) and !params.dig(:description).is_a?(String)
|
158
198
|
raise InvalidParameterError.new("Bad parameter: note must be an String") if params.dig(:note) and !params.dig(:note).is_a?(String)
|
159
199
|
raise InvalidParameterError.new("Bad parameter: code must be an String") if params.dig(:code) and !params.dig(:code).is_a?(String)
|
200
|
+
raise InvalidParameterError.new("Bad parameter: clickwrap_id must be an Integer") if params.dig(:clickwrap_id) and !params.dig(:clickwrap_id).is_a?(Integer)
|
201
|
+
raise InvalidParameterError.new("Bad parameter: inbox_id must be an Integer") if params.dig(:inbox_id) and !params.dig(:inbox_id).is_a?(Integer)
|
160
202
|
raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
|
161
203
|
|
162
204
|
Api.send_request("/bundles/#{@attributes[:id]}", :patch, params, @options)
|
@@ -227,18 +269,24 @@ module Files
|
|
227
269
|
# paths (required) - array(string) - A list of paths to include in this bundle.
|
228
270
|
# password - string - Password for this bundle.
|
229
271
|
# expires_at - string - Bundle expiration date/time
|
272
|
+
# max_uses - int64 - Maximum number of times bundle can be accessed
|
230
273
|
# description - string - Public description
|
231
274
|
# note - string - Bundle internal note
|
232
275
|
# code - string - Bundle code. This code forms the end part of the Public URL.
|
233
276
|
# require_registration - boolean - Show a registration page that captures the downloader's name and email address?
|
277
|
+
# clickwrap_id - int64 - ID of the clickwrap to use with this bundle.
|
278
|
+
# inbox_id - int64 - ID of the associated inbox, if available.
|
234
279
|
def self.create(params = {}, options = {})
|
235
280
|
raise InvalidParameterError.new("Bad parameter: user_id must be an Integer") if params.dig(:user_id) and !params.dig(:user_id).is_a?(Integer)
|
236
281
|
raise InvalidParameterError.new("Bad parameter: paths must be an Array") if params.dig(:paths) and !params.dig(:paths).is_a?(Array)
|
237
282
|
raise InvalidParameterError.new("Bad parameter: password must be an String") if params.dig(:password) and !params.dig(:password).is_a?(String)
|
238
283
|
raise InvalidParameterError.new("Bad parameter: expires_at must be an String") if params.dig(:expires_at) and !params.dig(:expires_at).is_a?(String)
|
284
|
+
raise InvalidParameterError.new("Bad parameter: max_uses must be an Integer") if params.dig(:max_uses) and !params.dig(:max_uses).is_a?(Integer)
|
239
285
|
raise InvalidParameterError.new("Bad parameter: description must be an String") if params.dig(:description) and !params.dig(:description).is_a?(String)
|
240
286
|
raise InvalidParameterError.new("Bad parameter: note must be an String") if params.dig(:note) and !params.dig(:note).is_a?(String)
|
241
287
|
raise InvalidParameterError.new("Bad parameter: code must be an String") if params.dig(:code) and !params.dig(:code).is_a?(String)
|
288
|
+
raise InvalidParameterError.new("Bad parameter: clickwrap_id must be an Integer") if params.dig(:clickwrap_id) and !params.dig(:clickwrap_id).is_a?(Integer)
|
289
|
+
raise InvalidParameterError.new("Bad parameter: inbox_id must be an Integer") if params.dig(:inbox_id) and !params.dig(:inbox_id).is_a?(Integer)
|
242
290
|
raise MissingParameterError.new("Parameter missing: paths") unless params.dig(:paths)
|
243
291
|
|
244
292
|
response, options = Api.send_request("/bundles", :post, params, options)
|
@@ -266,19 +314,25 @@ module Files
|
|
266
314
|
# Parameters:
|
267
315
|
# password - string - Password for this bundle.
|
268
316
|
# expires_at - string - Bundle expiration date/time
|
317
|
+
# max_uses - int64 - Maximum number of times bundle can be accessed
|
269
318
|
# description - string - Public description
|
270
319
|
# note - string - Bundle internal note
|
271
320
|
# code - string - Bundle code. This code forms the end part of the Public URL.
|
272
321
|
# require_registration - boolean - Show a registration page that captures the downloader's name and email address?
|
322
|
+
# clickwrap_id - int64 - ID of the clickwrap to use with this bundle.
|
323
|
+
# inbox_id - int64 - ID of the associated inbox, if available.
|
273
324
|
def self.update(id, params = {}, options = {})
|
274
325
|
params ||= {}
|
275
326
|
params[:id] = id
|
276
327
|
raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
|
277
328
|
raise InvalidParameterError.new("Bad parameter: password must be an String") if params.dig(:password) and !params.dig(:password).is_a?(String)
|
278
329
|
raise InvalidParameterError.new("Bad parameter: expires_at must be an String") if params.dig(:expires_at) and !params.dig(:expires_at).is_a?(String)
|
330
|
+
raise InvalidParameterError.new("Bad parameter: max_uses must be an Integer") if params.dig(:max_uses) and !params.dig(:max_uses).is_a?(Integer)
|
279
331
|
raise InvalidParameterError.new("Bad parameter: description must be an String") if params.dig(:description) and !params.dig(:description).is_a?(String)
|
280
332
|
raise InvalidParameterError.new("Bad parameter: note must be an String") if params.dig(:note) and !params.dig(:note).is_a?(String)
|
281
333
|
raise InvalidParameterError.new("Bad parameter: code must be an String") if params.dig(:code) and !params.dig(:code).is_a?(String)
|
334
|
+
raise InvalidParameterError.new("Bad parameter: clickwrap_id must be an Integer") if params.dig(:clickwrap_id) and !params.dig(:clickwrap_id).is_a?(Integer)
|
335
|
+
raise InvalidParameterError.new("Bad parameter: inbox_id must be an Integer") if params.dig(:inbox_id) and !params.dig(:inbox_id).is_a?(Integer)
|
282
336
|
raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
|
283
337
|
|
284
338
|
response, options = Api.send_request("/bundles/#{params[:id]}", :patch, params, options)
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Files
|
4
|
+
class BundleDownload
|
5
|
+
attr_reader :options, :attributes
|
6
|
+
|
7
|
+
def initialize(attributes = {}, options = {})
|
8
|
+
@attributes = attributes || {}
|
9
|
+
@options = options || {}
|
10
|
+
end
|
11
|
+
|
12
|
+
# string - Download method (file or full_zip)
|
13
|
+
def download_method
|
14
|
+
@attributes[:download_method]
|
15
|
+
end
|
16
|
+
|
17
|
+
# string - Download path This must be slash-delimited, but it must neither start nor end with a slash. Maximum of 5000 characters.
|
18
|
+
def path
|
19
|
+
@attributes[:path]
|
20
|
+
end
|
21
|
+
|
22
|
+
# date-time - Download date/time
|
23
|
+
def created_at
|
24
|
+
@attributes[:created_at]
|
25
|
+
end
|
26
|
+
|
27
|
+
# Parameters:
|
28
|
+
# page - int64 - Current page number.
|
29
|
+
# per_page - int64 - Number of records to show per page. (Max: 10,000, 1,000 or less is recommended).
|
30
|
+
# action - string - Deprecated: If set to `count` returns a count of matching records rather than the records themselves.
|
31
|
+
# bundle_registration_id (required) - int64 - BundleRegistration ID
|
32
|
+
def self.list(params = {}, options = {})
|
33
|
+
raise InvalidParameterError.new("Bad parameter: page must be an Integer") if params.dig(:page) and !params.dig(:page).is_a?(Integer)
|
34
|
+
raise InvalidParameterError.new("Bad parameter: per_page must be an Integer") if params.dig(:per_page) and !params.dig(:per_page).is_a?(Integer)
|
35
|
+
raise InvalidParameterError.new("Bad parameter: action must be an String") if params.dig(:action) and !params.dig(:action).is_a?(String)
|
36
|
+
raise InvalidParameterError.new("Bad parameter: bundle_registration_id must be an Integer") if params.dig(:bundle_registration_id) and !params.dig(:bundle_registration_id).is_a?(Integer)
|
37
|
+
raise MissingParameterError.new("Parameter missing: bundle_registration_id") unless params.dig(:bundle_registration_id)
|
38
|
+
|
39
|
+
response, options = Api.send_request("/bundle_downloads", :get, params, options)
|
40
|
+
response.data.map do |entity_data|
|
41
|
+
BundleDownload.new(entity_data, options)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
def self.all(params = {}, options = {})
|
46
|
+
list(params, options)
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -0,0 +1,197 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Files
|
4
|
+
class Clickwrap
|
5
|
+
attr_reader :options, :attributes
|
6
|
+
|
7
|
+
def initialize(attributes = {}, options = {})
|
8
|
+
@attributes = attributes || {}
|
9
|
+
@options = options || {}
|
10
|
+
end
|
11
|
+
|
12
|
+
# string - Name of the Clickwrap agreement (used when selecting from multiple Clickwrap agreements.)
|
13
|
+
def name
|
14
|
+
@attributes[:name]
|
15
|
+
end
|
16
|
+
|
17
|
+
def name=(value)
|
18
|
+
@attributes[:name] = value
|
19
|
+
end
|
20
|
+
|
21
|
+
# string - Body text of Clickwrap (supports Markdown formatting).
|
22
|
+
def body
|
23
|
+
@attributes[:body]
|
24
|
+
end
|
25
|
+
|
26
|
+
def body=(value)
|
27
|
+
@attributes[:body] = value
|
28
|
+
end
|
29
|
+
|
30
|
+
# string - Use this Clickwrap for User Registrations? Note: This only applies to User Registrations where the User is invited to your Files.com site using an E-Mail invitation process where they then set their own password.
|
31
|
+
def use_with_users
|
32
|
+
@attributes[:use_with_users]
|
33
|
+
end
|
34
|
+
|
35
|
+
def use_with_users=(value)
|
36
|
+
@attributes[:use_with_users] = value
|
37
|
+
end
|
38
|
+
|
39
|
+
# string - Use this Clickwrap for Bundles?
|
40
|
+
def use_with_bundles
|
41
|
+
@attributes[:use_with_bundles]
|
42
|
+
end
|
43
|
+
|
44
|
+
def use_with_bundles=(value)
|
45
|
+
@attributes[:use_with_bundles] = value
|
46
|
+
end
|
47
|
+
|
48
|
+
# string - Use this Clickwrap for Inboxes?
|
49
|
+
def use_with_inboxes
|
50
|
+
@attributes[:use_with_inboxes]
|
51
|
+
end
|
52
|
+
|
53
|
+
def use_with_inboxes=(value)
|
54
|
+
@attributes[:use_with_inboxes] = value
|
55
|
+
end
|
56
|
+
|
57
|
+
# int64 - Clickwrap ID.
|
58
|
+
def id
|
59
|
+
@attributes[:id]
|
60
|
+
end
|
61
|
+
|
62
|
+
def id=(value)
|
63
|
+
@attributes[:id] = value
|
64
|
+
end
|
65
|
+
|
66
|
+
# Parameters:
|
67
|
+
# name - string - Name of the Clickwrap agreement (used when selecting from multiple Clickwrap agreements.)
|
68
|
+
# body - string - Body text of Clickwrap (supports Markdown formatting).
|
69
|
+
# use_with_bundles - string - Use this Clickwrap for Bundles?
|
70
|
+
# use_with_inboxes - string - Use this Clickwrap for Inboxes?
|
71
|
+
# use_with_users - string - Use this Clickwrap for User Registrations? Note: This only applies to User Registrations where the User is invited to your Files.com site using an E-Mail invitation process where they then set their own password.
|
72
|
+
def update(params = {})
|
73
|
+
params ||= {}
|
74
|
+
params[:id] = @attributes[:id]
|
75
|
+
raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
|
76
|
+
raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
|
77
|
+
raise InvalidParameterError.new("Bad parameter: name must be an String") if params.dig(:name) and !params.dig(:name).is_a?(String)
|
78
|
+
raise InvalidParameterError.new("Bad parameter: body must be an String") if params.dig(:body) and !params.dig(:body).is_a?(String)
|
79
|
+
raise InvalidParameterError.new("Bad parameter: use_with_bundles must be an String") if params.dig(:use_with_bundles) and !params.dig(:use_with_bundles).is_a?(String)
|
80
|
+
raise InvalidParameterError.new("Bad parameter: use_with_inboxes must be an String") if params.dig(:use_with_inboxes) and !params.dig(:use_with_inboxes).is_a?(String)
|
81
|
+
raise InvalidParameterError.new("Bad parameter: use_with_users must be an String") if params.dig(:use_with_users) and !params.dig(:use_with_users).is_a?(String)
|
82
|
+
raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
|
83
|
+
|
84
|
+
Api.send_request("/clickwraps/#{@attributes[:id]}", :patch, params, @options)
|
85
|
+
end
|
86
|
+
|
87
|
+
def delete(params = {})
|
88
|
+
params ||= {}
|
89
|
+
params[:id] = @attributes[:id]
|
90
|
+
raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
|
91
|
+
raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
|
92
|
+
raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
|
93
|
+
|
94
|
+
Api.send_request("/clickwraps/#{@attributes[:id]}", :delete, params, @options)
|
95
|
+
end
|
96
|
+
|
97
|
+
def destroy(params = {})
|
98
|
+
delete(params)
|
99
|
+
end
|
100
|
+
|
101
|
+
def save
|
102
|
+
if @attributes[:id]
|
103
|
+
update(@attributes)
|
104
|
+
else
|
105
|
+
new_obj = Clickwrap.create(@attributes, @options)
|
106
|
+
@attributes = new_obj.attributes
|
107
|
+
end
|
108
|
+
end
|
109
|
+
|
110
|
+
# Parameters:
|
111
|
+
# page - int64 - Current page number.
|
112
|
+
# per_page - int64 - Number of records to show per page. (Max: 10,000, 1,000 or less is recommended).
|
113
|
+
# action - string - Deprecated: If set to `count` returns a count of matching records rather than the records themselves.
|
114
|
+
def self.list(params = {}, options = {})
|
115
|
+
raise InvalidParameterError.new("Bad parameter: page must be an Integer") if params.dig(:page) and !params.dig(:page).is_a?(Integer)
|
116
|
+
raise InvalidParameterError.new("Bad parameter: per_page must be an Integer") if params.dig(:per_page) and !params.dig(:per_page).is_a?(Integer)
|
117
|
+
raise InvalidParameterError.new("Bad parameter: action must be an String") if params.dig(:action) and !params.dig(:action).is_a?(String)
|
118
|
+
|
119
|
+
response, options = Api.send_request("/clickwraps", :get, params, options)
|
120
|
+
response.data.map do |entity_data|
|
121
|
+
Clickwrap.new(entity_data, options)
|
122
|
+
end
|
123
|
+
end
|
124
|
+
|
125
|
+
def self.all(params = {}, options = {})
|
126
|
+
list(params, options)
|
127
|
+
end
|
128
|
+
|
129
|
+
# Parameters:
|
130
|
+
# id (required) - int64 - Clickwrap ID.
|
131
|
+
def self.find(id, params = {}, options = {})
|
132
|
+
params ||= {}
|
133
|
+
params[:id] = id
|
134
|
+
raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
|
135
|
+
raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
|
136
|
+
|
137
|
+
response, options = Api.send_request("/clickwraps/#{params[:id]}", :get, params, options)
|
138
|
+
Clickwrap.new(response.data, options)
|
139
|
+
end
|
140
|
+
|
141
|
+
def self.get(id, params = {}, options = {})
|
142
|
+
find(id, params, options)
|
143
|
+
end
|
144
|
+
|
145
|
+
# Parameters:
|
146
|
+
# name - string - Name of the Clickwrap agreement (used when selecting from multiple Clickwrap agreements.)
|
147
|
+
# body - string - Body text of Clickwrap (supports Markdown formatting).
|
148
|
+
# use_with_bundles - string - Use this Clickwrap for Bundles?
|
149
|
+
# use_with_inboxes - string - Use this Clickwrap for Inboxes?
|
150
|
+
# use_with_users - string - Use this Clickwrap for User Registrations? Note: This only applies to User Registrations where the User is invited to your Files.com site using an E-Mail invitation process where they then set their own password.
|
151
|
+
def self.create(params = {}, options = {})
|
152
|
+
raise InvalidParameterError.new("Bad parameter: name must be an String") if params.dig(:name) and !params.dig(:name).is_a?(String)
|
153
|
+
raise InvalidParameterError.new("Bad parameter: body must be an String") if params.dig(:body) and !params.dig(:body).is_a?(String)
|
154
|
+
raise InvalidParameterError.new("Bad parameter: use_with_bundles must be an String") if params.dig(:use_with_bundles) and !params.dig(:use_with_bundles).is_a?(String)
|
155
|
+
raise InvalidParameterError.new("Bad parameter: use_with_inboxes must be an String") if params.dig(:use_with_inboxes) and !params.dig(:use_with_inboxes).is_a?(String)
|
156
|
+
raise InvalidParameterError.new("Bad parameter: use_with_users must be an String") if params.dig(:use_with_users) and !params.dig(:use_with_users).is_a?(String)
|
157
|
+
|
158
|
+
response, options = Api.send_request("/clickwraps", :post, params, options)
|
159
|
+
Clickwrap.new(response.data, options)
|
160
|
+
end
|
161
|
+
|
162
|
+
# Parameters:
|
163
|
+
# name - string - Name of the Clickwrap agreement (used when selecting from multiple Clickwrap agreements.)
|
164
|
+
# body - string - Body text of Clickwrap (supports Markdown formatting).
|
165
|
+
# use_with_bundles - string - Use this Clickwrap for Bundles?
|
166
|
+
# use_with_inboxes - string - Use this Clickwrap for Inboxes?
|
167
|
+
# use_with_users - string - Use this Clickwrap for User Registrations? Note: This only applies to User Registrations where the User is invited to your Files.com site using an E-Mail invitation process where they then set their own password.
|
168
|
+
def self.update(id, params = {}, options = {})
|
169
|
+
params ||= {}
|
170
|
+
params[:id] = id
|
171
|
+
raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
|
172
|
+
raise InvalidParameterError.new("Bad parameter: name must be an String") if params.dig(:name) and !params.dig(:name).is_a?(String)
|
173
|
+
raise InvalidParameterError.new("Bad parameter: body must be an String") if params.dig(:body) and !params.dig(:body).is_a?(String)
|
174
|
+
raise InvalidParameterError.new("Bad parameter: use_with_bundles must be an String") if params.dig(:use_with_bundles) and !params.dig(:use_with_bundles).is_a?(String)
|
175
|
+
raise InvalidParameterError.new("Bad parameter: use_with_inboxes must be an String") if params.dig(:use_with_inboxes) and !params.dig(:use_with_inboxes).is_a?(String)
|
176
|
+
raise InvalidParameterError.new("Bad parameter: use_with_users must be an String") if params.dig(:use_with_users) and !params.dig(:use_with_users).is_a?(String)
|
177
|
+
raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
|
178
|
+
|
179
|
+
response, options = Api.send_request("/clickwraps/#{params[:id]}", :patch, params, options)
|
180
|
+
Clickwrap.new(response.data, options)
|
181
|
+
end
|
182
|
+
|
183
|
+
def self.delete(id, params = {}, options = {})
|
184
|
+
params ||= {}
|
185
|
+
params[:id] = id
|
186
|
+
raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params.dig(:id) and !params.dig(:id).is_a?(Integer)
|
187
|
+
raise MissingParameterError.new("Parameter missing: id") unless params.dig(:id)
|
188
|
+
|
189
|
+
response, _options = Api.send_request("/clickwraps/#{params[:id]}", :delete, params, options)
|
190
|
+
response.data
|
191
|
+
end
|
192
|
+
|
193
|
+
def self.destroy(id, params = {}, options = {})
|
194
|
+
delete(id, params, options)
|
195
|
+
end
|
196
|
+
end
|
197
|
+
end
|
@@ -90,7 +90,7 @@ module Files
|
|
90
90
|
new(path).mtime
|
91
91
|
end
|
92
92
|
|
93
|
-
def self.open(path, mode = "r", options={}, &block)
|
93
|
+
def self.open(path, mode = "r", options = {}, &block)
|
94
94
|
file = new(path, mode, options)
|
95
95
|
if block
|
96
96
|
yield file
|
@@ -306,7 +306,7 @@ module Files
|
|
306
306
|
end
|
307
307
|
|
308
308
|
def download_content(io)
|
309
|
-
Files::ApiClient
|
309
|
+
Files::ApiClient.download_client.stream_download(download_uri_with_load, io)
|
310
310
|
end
|
311
311
|
|
312
312
|
def each(*args, &block)
|
@@ -571,13 +571,13 @@ module Files
|
|
571
571
|
end
|
572
572
|
|
573
573
|
def upload_file(local_file)
|
574
|
-
File.upload_file(local_file.
|
574
|
+
File.upload_file(local_file.path)
|
575
575
|
end
|
576
576
|
|
577
577
|
def write(*args)
|
578
578
|
@mode ||= 'w'
|
579
579
|
if args[0].respond_to?(:read)
|
580
|
-
flush if @write_io.size > 0
|
580
|
+
flush if @write_io.size > 0 # rubocop:disable Style/ZeroLengthPredicate
|
581
581
|
@write_io = args[0]
|
582
582
|
else
|
583
583
|
@write_io.write *args
|