resourcespace-ruby 0.1.1 → 0.1.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 +4 -4
- data/.yardoc/checksums +10 -0
- data/.yardoc/complete +0 -0
- data/.yardoc/object_types +0 -0
- data/.yardoc/objects/root.dat +0 -0
- data/.yardoc/proxy_types +0 -0
- data/.yardopts +7 -0
- data/README.md +1 -2
- data/doc/ResourceSpace/AuthenticationError.html +159 -0
- data/doc/ResourceSpace/AuthorizationError.html +159 -0
- data/doc/ResourceSpace/Client.html +2412 -0
- data/doc/ResourceSpace/ClientError.html +159 -0
- data/doc/ResourceSpace/Collection.html +2301 -0
- data/doc/ResourceSpace/Configuration.html +1655 -0
- data/doc/ResourceSpace/ConfigurationError.html +159 -0
- data/doc/ResourceSpace/ConflictError.html +159 -0
- data/doc/ResourceSpace/Error.html +682 -0
- data/doc/ResourceSpace/Metadata.html +2222 -0
- data/doc/ResourceSpace/NetworkError.html +159 -0
- data/doc/ResourceSpace/NotFoundError.html +159 -0
- data/doc/ResourceSpace/ParseError.html +159 -0
- data/doc/ResourceSpace/QuotaExceededError.html +159 -0
- data/doc/ResourceSpace/RateLimitError.html +159 -0
- data/doc/ResourceSpace/Resource.html +2995 -0
- data/doc/ResourceSpace/Search.html +2487 -0
- data/doc/ResourceSpace/ServerError.html +159 -0
- data/doc/ResourceSpace/TimeoutError.html +159 -0
- data/doc/ResourceSpace/UploadError.html +159 -0
- data/doc/ResourceSpace/User.html +2080 -0
- data/doc/ResourceSpace/ValidationError.html +159 -0
- data/doc/ResourceSpace.html +763 -0
- data/doc/_index.html +358 -0
- data/doc/class_list.html +54 -0
- data/doc/css/common.css +1 -0
- data/doc/css/full_list.css +58 -0
- data/doc/css/style.css +503 -0
- data/doc/file.CHANGELOG.html +105 -0
- data/doc/file.LICENSE.html +70 -0
- data/doc/file.README.html +419 -0
- data/doc/file_list.html +69 -0
- data/doc/frames.html +22 -0
- data/doc/index.html +419 -0
- data/doc/js/app.js +344 -0
- data/doc/js/full_list.js +242 -0
- data/doc/js/jquery.js +4 -0
- data/doc/method_list.html +1142 -0
- data/doc/top-level-namespace.html +110 -0
- data/lib/resourcespace/version.rb +1 -1
- data/resourcespace-ruby-0.1.0.gem +0 -0
- data/resourcespace-ruby-0.1.1.gem +0 -0
- data/resourcespace-ruby.gemspec +5 -5
- metadata +54 -7
@@ -0,0 +1,2412 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta charset="utf-8">
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6
|
+
<title>
|
7
|
+
Class: ResourceSpace::Client
|
8
|
+
|
9
|
+
— Documentation by YARD 0.9.37
|
10
|
+
|
11
|
+
</title>
|
12
|
+
|
13
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css" />
|
14
|
+
|
15
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
16
|
+
|
17
|
+
<script type="text/javascript">
|
18
|
+
pathId = "ResourceSpace::Client";
|
19
|
+
relpath = '../';
|
20
|
+
</script>
|
21
|
+
|
22
|
+
|
23
|
+
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
24
|
+
|
25
|
+
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
|
26
|
+
|
27
|
+
|
28
|
+
</head>
|
29
|
+
<body>
|
30
|
+
<div class="nav_wrap">
|
31
|
+
<iframe id="nav" src="../class_list.html?1"></iframe>
|
32
|
+
<div id="resizer"></div>
|
33
|
+
</div>
|
34
|
+
|
35
|
+
<div id="main" tabindex="-1">
|
36
|
+
<div id="header">
|
37
|
+
<div id="menu">
|
38
|
+
|
39
|
+
<a href="../_index.html">Index (C)</a> »
|
40
|
+
<span class='title'><span class='object_link'><a href="../ResourceSpace.html" title="ResourceSpace (module)">ResourceSpace</a></span></span>
|
41
|
+
»
|
42
|
+
<span class="title">Client</span>
|
43
|
+
|
44
|
+
</div>
|
45
|
+
|
46
|
+
<div id="search">
|
47
|
+
|
48
|
+
<a class="full_list_link" id="class_list_link"
|
49
|
+
href="../class_list.html">
|
50
|
+
|
51
|
+
<svg width="24" height="24">
|
52
|
+
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
|
53
|
+
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
|
54
|
+
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
|
55
|
+
</svg>
|
56
|
+
</a>
|
57
|
+
|
58
|
+
</div>
|
59
|
+
<div class="clear"></div>
|
60
|
+
</div>
|
61
|
+
|
62
|
+
<div id="content"><h1>Class: ResourceSpace::Client
|
63
|
+
|
64
|
+
|
65
|
+
|
66
|
+
</h1>
|
67
|
+
<div class="box_info">
|
68
|
+
|
69
|
+
<dl>
|
70
|
+
<dt>Inherits:</dt>
|
71
|
+
<dd>
|
72
|
+
<span class="inheritName">Object</span>
|
73
|
+
|
74
|
+
<ul class="fullTree">
|
75
|
+
<li>Object</li>
|
76
|
+
|
77
|
+
<li class="next">ResourceSpace::Client</li>
|
78
|
+
|
79
|
+
</ul>
|
80
|
+
<a href="#" class="inheritanceTree">show all</a>
|
81
|
+
|
82
|
+
</dd>
|
83
|
+
</dl>
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
<dl>
|
96
|
+
<dt>Defined in:</dt>
|
97
|
+
<dd>lib/resourcespace/client.rb</dd>
|
98
|
+
</dl>
|
99
|
+
|
100
|
+
</div>
|
101
|
+
|
102
|
+
<h2>Overview</h2><div class="docstring">
|
103
|
+
<div class="discussion">
|
104
|
+
|
105
|
+
<p>Main client class for interacting with ResourceSpace API</p>
|
106
|
+
|
107
|
+
|
108
|
+
</div>
|
109
|
+
</div>
|
110
|
+
<div class="tags">
|
111
|
+
|
112
|
+
<div class="examples">
|
113
|
+
<h4 class="tag_title">Examples:</h4>
|
114
|
+
|
115
|
+
|
116
|
+
<pre class="example code"><code><span class='id identifier rubyid_client'>client</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../ResourceSpace.html" title="ResourceSpace (module)">ResourceSpace</a></span></span><span class='op'>::</span><span class='const'>Client</span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="#initialize-instance_method" title="ResourceSpace::Client#initialize (method)">new</a></span></span><span class='lparen'>(</span>
|
117
|
+
<span class='label'>url:</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>https://your-resourcespace.com/api/</span><span class='tstring_end'>"</span></span><span class='comma'>,</span>
|
118
|
+
<span class='label'>user:</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>your_username</span><span class='tstring_end'>"</span></span><span class='comma'>,</span>
|
119
|
+
<span class='label'>private_key:</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>your_private_key</span><span class='tstring_end'>"</span></span>
|
120
|
+
<span class='rparen'>)</span></code></pre>
|
121
|
+
|
122
|
+
</div>
|
123
|
+
|
124
|
+
|
125
|
+
</div>
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
<h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
|
130
|
+
<ul class="summary">
|
131
|
+
|
132
|
+
<li class="public ">
|
133
|
+
<span class="summary_signature">
|
134
|
+
|
135
|
+
<a href="#collections-instance_method" title="#collections (instance method)">#<strong>collections</strong> ⇒ Collection </a>
|
136
|
+
|
137
|
+
|
138
|
+
|
139
|
+
</span>
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
|
144
|
+
<span class="note title readonly">readonly</span>
|
145
|
+
|
146
|
+
|
147
|
+
|
148
|
+
|
149
|
+
|
150
|
+
|
151
|
+
|
152
|
+
|
153
|
+
|
154
|
+
<span class="summary_desc"><div class='inline'>
|
155
|
+
<p>Collection management interface.</p>
|
156
|
+
</div></span>
|
157
|
+
|
158
|
+
</li>
|
159
|
+
|
160
|
+
|
161
|
+
<li class="public ">
|
162
|
+
<span class="summary_signature">
|
163
|
+
|
164
|
+
<a href="#config-instance_method" title="#config (instance method)">#<strong>config</strong> ⇒ Configuration </a>
|
165
|
+
|
166
|
+
|
167
|
+
|
168
|
+
</span>
|
169
|
+
|
170
|
+
|
171
|
+
|
172
|
+
|
173
|
+
<span class="note title readonly">readonly</span>
|
174
|
+
|
175
|
+
|
176
|
+
|
177
|
+
|
178
|
+
|
179
|
+
|
180
|
+
|
181
|
+
|
182
|
+
|
183
|
+
<span class="summary_desc"><div class='inline'>
|
184
|
+
<p>Client configuration.</p>
|
185
|
+
</div></span>
|
186
|
+
|
187
|
+
</li>
|
188
|
+
|
189
|
+
|
190
|
+
<li class="public ">
|
191
|
+
<span class="summary_signature">
|
192
|
+
|
193
|
+
<a href="#metadata-instance_method" title="#metadata (instance method)">#<strong>metadata</strong> ⇒ Metadata </a>
|
194
|
+
|
195
|
+
|
196
|
+
|
197
|
+
</span>
|
198
|
+
|
199
|
+
|
200
|
+
|
201
|
+
|
202
|
+
<span class="note title readonly">readonly</span>
|
203
|
+
|
204
|
+
|
205
|
+
|
206
|
+
|
207
|
+
|
208
|
+
|
209
|
+
|
210
|
+
|
211
|
+
|
212
|
+
<span class="summary_desc"><div class='inline'>
|
213
|
+
<p>Metadata management interface.</p>
|
214
|
+
</div></span>
|
215
|
+
|
216
|
+
</li>
|
217
|
+
|
218
|
+
|
219
|
+
<li class="public ">
|
220
|
+
<span class="summary_signature">
|
221
|
+
|
222
|
+
<a href="#resources-instance_method" title="#resources (instance method)">#<strong>resources</strong> ⇒ Resource </a>
|
223
|
+
|
224
|
+
|
225
|
+
|
226
|
+
</span>
|
227
|
+
|
228
|
+
|
229
|
+
|
230
|
+
|
231
|
+
<span class="note title readonly">readonly</span>
|
232
|
+
|
233
|
+
|
234
|
+
|
235
|
+
|
236
|
+
|
237
|
+
|
238
|
+
|
239
|
+
|
240
|
+
|
241
|
+
<span class="summary_desc"><div class='inline'>
|
242
|
+
<p>Resource management interface.</p>
|
243
|
+
</div></span>
|
244
|
+
|
245
|
+
</li>
|
246
|
+
|
247
|
+
|
248
|
+
<li class="public ">
|
249
|
+
<span class="summary_signature">
|
250
|
+
|
251
|
+
<a href="#search-instance_method" title="#search (instance method)">#<strong>search</strong> ⇒ Search </a>
|
252
|
+
|
253
|
+
|
254
|
+
|
255
|
+
</span>
|
256
|
+
|
257
|
+
|
258
|
+
|
259
|
+
|
260
|
+
<span class="note title readonly">readonly</span>
|
261
|
+
|
262
|
+
|
263
|
+
|
264
|
+
|
265
|
+
|
266
|
+
|
267
|
+
|
268
|
+
|
269
|
+
|
270
|
+
<span class="summary_desc"><div class='inline'>
|
271
|
+
<p>Search interface.</p>
|
272
|
+
</div></span>
|
273
|
+
|
274
|
+
</li>
|
275
|
+
|
276
|
+
|
277
|
+
<li class="public ">
|
278
|
+
<span class="summary_signature">
|
279
|
+
|
280
|
+
<a href="#users-instance_method" title="#users (instance method)">#<strong>users</strong> ⇒ User </a>
|
281
|
+
|
282
|
+
|
283
|
+
|
284
|
+
</span>
|
285
|
+
|
286
|
+
|
287
|
+
|
288
|
+
|
289
|
+
<span class="note title readonly">readonly</span>
|
290
|
+
|
291
|
+
|
292
|
+
|
293
|
+
|
294
|
+
|
295
|
+
|
296
|
+
|
297
|
+
|
298
|
+
|
299
|
+
<span class="summary_desc"><div class='inline'>
|
300
|
+
<p>User management interface.</p>
|
301
|
+
</div></span>
|
302
|
+
|
303
|
+
</li>
|
304
|
+
|
305
|
+
|
306
|
+
</ul>
|
307
|
+
|
308
|
+
|
309
|
+
|
310
|
+
|
311
|
+
|
312
|
+
<h2>
|
313
|
+
Instance Method Summary
|
314
|
+
<small><a href="#" class="summary_toggle">collapse</a></small>
|
315
|
+
</h2>
|
316
|
+
|
317
|
+
<ul class="summary">
|
318
|
+
|
319
|
+
<li class="private ">
|
320
|
+
<span class="summary_signature">
|
321
|
+
|
322
|
+
<a href="#connection-instance_method" title="#connection (instance method)">#<strong>connection</strong> ⇒ Faraday::Connection </a>
|
323
|
+
|
324
|
+
|
325
|
+
|
326
|
+
</span>
|
327
|
+
|
328
|
+
|
329
|
+
|
330
|
+
<span class="note title private">private</span>
|
331
|
+
|
332
|
+
|
333
|
+
|
334
|
+
|
335
|
+
|
336
|
+
<span class="summary_desc"><div class='inline'>
|
337
|
+
<p>Get the Faraday connection instance.</p>
|
338
|
+
</div></span>
|
339
|
+
|
340
|
+
</li>
|
341
|
+
|
342
|
+
|
343
|
+
<li class="public ">
|
344
|
+
<span class="summary_signature">
|
345
|
+
|
346
|
+
<a href="#download_file-instance_method" title="#download_file (instance method)">#<strong>download_file</strong>(download_url, file_path) ⇒ Boolean </a>
|
347
|
+
|
348
|
+
|
349
|
+
|
350
|
+
</span>
|
351
|
+
|
352
|
+
|
353
|
+
|
354
|
+
|
355
|
+
|
356
|
+
|
357
|
+
|
358
|
+
|
359
|
+
|
360
|
+
<span class="summary_desc"><div class='inline'>
|
361
|
+
<p>Download a file from ResourceSpace.</p>
|
362
|
+
</div></span>
|
363
|
+
|
364
|
+
</li>
|
365
|
+
|
366
|
+
|
367
|
+
<li class="private ">
|
368
|
+
<span class="summary_signature">
|
369
|
+
|
370
|
+
<a href="#generate_signature-instance_method" title="#generate_signature (instance method)">#<strong>generate_signature</strong>(query_string) ⇒ String </a>
|
371
|
+
|
372
|
+
|
373
|
+
|
374
|
+
</span>
|
375
|
+
|
376
|
+
|
377
|
+
|
378
|
+
<span class="note title private">private</span>
|
379
|
+
|
380
|
+
|
381
|
+
|
382
|
+
|
383
|
+
|
384
|
+
<span class="summary_desc"><div class='inline'>
|
385
|
+
<p>Generate SHA256 signature for API authentication.</p>
|
386
|
+
</div></span>
|
387
|
+
|
388
|
+
</li>
|
389
|
+
|
390
|
+
|
391
|
+
<li class="public ">
|
392
|
+
<span class="summary_signature">
|
393
|
+
|
394
|
+
<a href="#get-instance_method" title="#get (instance method)">#<strong>get</strong>(function, params = {}) ⇒ Hash </a>
|
395
|
+
|
396
|
+
|
397
|
+
|
398
|
+
</span>
|
399
|
+
|
400
|
+
|
401
|
+
|
402
|
+
|
403
|
+
|
404
|
+
|
405
|
+
|
406
|
+
|
407
|
+
|
408
|
+
<span class="summary_desc"><div class='inline'>
|
409
|
+
<p>Make a GET request to the ResourceSpace API.</p>
|
410
|
+
</div></span>
|
411
|
+
|
412
|
+
</li>
|
413
|
+
|
414
|
+
|
415
|
+
<li class="private ">
|
416
|
+
<span class="summary_signature">
|
417
|
+
|
418
|
+
<a href="#handle_error_response-instance_method" title="#handle_error_response (instance method)">#<strong>handle_error_response</strong>(response) ⇒ Object </a>
|
419
|
+
|
420
|
+
|
421
|
+
|
422
|
+
</span>
|
423
|
+
|
424
|
+
|
425
|
+
|
426
|
+
<span class="note title private">private</span>
|
427
|
+
|
428
|
+
|
429
|
+
|
430
|
+
|
431
|
+
|
432
|
+
<span class="summary_desc"><div class='inline'>
|
433
|
+
<p>Handle error responses and raise appropriate exceptions.</p>
|
434
|
+
</div></span>
|
435
|
+
|
436
|
+
</li>
|
437
|
+
|
438
|
+
|
439
|
+
<li class="private ">
|
440
|
+
<span class="summary_signature">
|
441
|
+
|
442
|
+
<a href="#handle_response-instance_method" title="#handle_response (instance method)">#<strong>handle_response</strong>(response) ⇒ Hash </a>
|
443
|
+
|
444
|
+
|
445
|
+
|
446
|
+
</span>
|
447
|
+
|
448
|
+
|
449
|
+
|
450
|
+
<span class="note title private">private</span>
|
451
|
+
|
452
|
+
|
453
|
+
|
454
|
+
|
455
|
+
|
456
|
+
<span class="summary_desc"><div class='inline'>
|
457
|
+
<p>Handle API response and parse JSON.</p>
|
458
|
+
</div></span>
|
459
|
+
|
460
|
+
</li>
|
461
|
+
|
462
|
+
|
463
|
+
<li class="public ">
|
464
|
+
<span class="summary_signature">
|
465
|
+
|
466
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(url: nil, user: nil, private_key: nil, config: nil, **options) ⇒ Client </a>
|
467
|
+
|
468
|
+
|
469
|
+
|
470
|
+
</span>
|
471
|
+
|
472
|
+
|
473
|
+
<span class="note title constructor">constructor</span>
|
474
|
+
|
475
|
+
|
476
|
+
|
477
|
+
|
478
|
+
|
479
|
+
|
480
|
+
|
481
|
+
|
482
|
+
<span class="summary_desc"><div class='inline'>
|
483
|
+
<p>Initialize a new ResourceSpace client.</p>
|
484
|
+
</div></span>
|
485
|
+
|
486
|
+
</li>
|
487
|
+
|
488
|
+
|
489
|
+
<li class="private ">
|
490
|
+
<span class="summary_signature">
|
491
|
+
|
492
|
+
<a href="#mime_type_for_file-instance_method" title="#mime_type_for_file (instance method)">#<strong>mime_type_for_file</strong>(file_path) ⇒ String </a>
|
493
|
+
|
494
|
+
|
495
|
+
|
496
|
+
</span>
|
497
|
+
|
498
|
+
|
499
|
+
|
500
|
+
<span class="note title private">private</span>
|
501
|
+
|
502
|
+
|
503
|
+
|
504
|
+
|
505
|
+
|
506
|
+
<span class="summary_desc"><div class='inline'>
|
507
|
+
<p>Get MIME type for a file.</p>
|
508
|
+
</div></span>
|
509
|
+
|
510
|
+
</li>
|
511
|
+
|
512
|
+
|
513
|
+
<li class="private ">
|
514
|
+
<span class="summary_signature">
|
515
|
+
|
516
|
+
<a href="#parse_json_response-instance_method" title="#parse_json_response (instance method)">#<strong>parse_json_response</strong>(body) ⇒ Hash </a>
|
517
|
+
|
518
|
+
|
519
|
+
|
520
|
+
</span>
|
521
|
+
|
522
|
+
|
523
|
+
|
524
|
+
<span class="note title private">private</span>
|
525
|
+
|
526
|
+
|
527
|
+
|
528
|
+
|
529
|
+
|
530
|
+
<span class="summary_desc"><div class='inline'>
|
531
|
+
<p>Parse JSON response body.</p>
|
532
|
+
</div></span>
|
533
|
+
|
534
|
+
</li>
|
535
|
+
|
536
|
+
|
537
|
+
<li class="public ">
|
538
|
+
<span class="summary_signature">
|
539
|
+
|
540
|
+
<a href="#post-instance_method" title="#post (instance method)">#<strong>post</strong>(function, params = {}) ⇒ Hash </a>
|
541
|
+
|
542
|
+
|
543
|
+
|
544
|
+
</span>
|
545
|
+
|
546
|
+
|
547
|
+
|
548
|
+
|
549
|
+
|
550
|
+
|
551
|
+
|
552
|
+
|
553
|
+
|
554
|
+
<span class="summary_desc"><div class='inline'>
|
555
|
+
<p>Make a POST request to the ResourceSpace API.</p>
|
556
|
+
</div></span>
|
557
|
+
|
558
|
+
</li>
|
559
|
+
|
560
|
+
|
561
|
+
<li class="private ">
|
562
|
+
<span class="summary_signature">
|
563
|
+
|
564
|
+
<a href="#request-instance_method" title="#request (instance method)">#<strong>request</strong>(method, function, params = {}, multipart: false) ⇒ Hash </a>
|
565
|
+
|
566
|
+
|
567
|
+
|
568
|
+
</span>
|
569
|
+
|
570
|
+
|
571
|
+
|
572
|
+
<span class="note title private">private</span>
|
573
|
+
|
574
|
+
|
575
|
+
|
576
|
+
|
577
|
+
|
578
|
+
<span class="summary_desc"><div class='inline'>
|
579
|
+
<p>Make an HTTP request to the ResourceSpace API.</p>
|
580
|
+
</div></span>
|
581
|
+
|
582
|
+
</li>
|
583
|
+
|
584
|
+
|
585
|
+
<li class="public ">
|
586
|
+
<span class="summary_signature">
|
587
|
+
|
588
|
+
<a href="#test_connection-instance_method" title="#test_connection (instance method)">#<strong>test_connection</strong> ⇒ Hash </a>
|
589
|
+
|
590
|
+
|
591
|
+
|
592
|
+
</span>
|
593
|
+
|
594
|
+
|
595
|
+
|
596
|
+
|
597
|
+
|
598
|
+
|
599
|
+
|
600
|
+
|
601
|
+
|
602
|
+
<span class="summary_desc"><div class='inline'>
|
603
|
+
<p>Test the API connection.</p>
|
604
|
+
</div></span>
|
605
|
+
|
606
|
+
</li>
|
607
|
+
|
608
|
+
|
609
|
+
<li class="public ">
|
610
|
+
<span class="summary_signature">
|
611
|
+
|
612
|
+
<a href="#upload_file-instance_method" title="#upload_file (instance method)">#<strong>upload_file</strong>(file, params = {}) ⇒ Hash </a>
|
613
|
+
|
614
|
+
|
615
|
+
|
616
|
+
</span>
|
617
|
+
|
618
|
+
|
619
|
+
|
620
|
+
|
621
|
+
|
622
|
+
|
623
|
+
|
624
|
+
|
625
|
+
|
626
|
+
<span class="summary_desc"><div class='inline'>
|
627
|
+
<p>Upload a file to ResourceSpace.</p>
|
628
|
+
</div></span>
|
629
|
+
|
630
|
+
</li>
|
631
|
+
|
632
|
+
|
633
|
+
</ul>
|
634
|
+
|
635
|
+
|
636
|
+
<div id="constructor_details" class="method_details_list">
|
637
|
+
<h2>Constructor Details</h2>
|
638
|
+
|
639
|
+
<div class="method_details first">
|
640
|
+
<h3 class="signature first" id="initialize-instance_method">
|
641
|
+
|
642
|
+
#<strong>initialize</strong>(url: nil, user: nil, private_key: nil, config: nil, **options) ⇒ <tt><span class='object_link'><a href="" title="ResourceSpace::Client (class)">Client</a></span></tt>
|
643
|
+
|
644
|
+
|
645
|
+
|
646
|
+
|
647
|
+
|
648
|
+
</h3><div class="docstring">
|
649
|
+
<div class="discussion">
|
650
|
+
|
651
|
+
<p>Initialize a new ResourceSpace client</p>
|
652
|
+
|
653
|
+
|
654
|
+
</div>
|
655
|
+
</div>
|
656
|
+
<div class="tags">
|
657
|
+
<p class="tag_title">Parameters:</p>
|
658
|
+
<ul class="param">
|
659
|
+
|
660
|
+
<li>
|
661
|
+
|
662
|
+
<span class='name'>url</span>
|
663
|
+
|
664
|
+
|
665
|
+
<span class='type'>(<tt>String</tt>)</span>
|
666
|
+
|
667
|
+
|
668
|
+
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
669
|
+
|
670
|
+
|
671
|
+
—
|
672
|
+
<div class='inline'>
|
673
|
+
<p>ResourceSpace API URL</p>
|
674
|
+
</div>
|
675
|
+
|
676
|
+
</li>
|
677
|
+
|
678
|
+
<li>
|
679
|
+
|
680
|
+
<span class='name'>user</span>
|
681
|
+
|
682
|
+
|
683
|
+
<span class='type'>(<tt>String</tt>)</span>
|
684
|
+
|
685
|
+
|
686
|
+
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
687
|
+
|
688
|
+
|
689
|
+
—
|
690
|
+
<div class='inline'>
|
691
|
+
<p>ResourceSpace username</p>
|
692
|
+
</div>
|
693
|
+
|
694
|
+
</li>
|
695
|
+
|
696
|
+
<li>
|
697
|
+
|
698
|
+
<span class='name'>private_key</span>
|
699
|
+
|
700
|
+
|
701
|
+
<span class='type'>(<tt>String</tt>)</span>
|
702
|
+
|
703
|
+
|
704
|
+
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
705
|
+
|
706
|
+
|
707
|
+
—
|
708
|
+
<div class='inline'>
|
709
|
+
<p>ResourceSpace private API key</p>
|
710
|
+
</div>
|
711
|
+
|
712
|
+
</li>
|
713
|
+
|
714
|
+
<li>
|
715
|
+
|
716
|
+
<span class='name'>config</span>
|
717
|
+
|
718
|
+
|
719
|
+
<span class='type'>(<tt><span class='object_link'><a href="Configuration.html" title="ResourceSpace::Configuration (class)">Configuration</a></span></tt>)</span>
|
720
|
+
|
721
|
+
|
722
|
+
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
723
|
+
|
724
|
+
|
725
|
+
—
|
726
|
+
<div class='inline'>
|
727
|
+
<p>configuration object</p>
|
728
|
+
</div>
|
729
|
+
|
730
|
+
</li>
|
731
|
+
|
732
|
+
<li>
|
733
|
+
|
734
|
+
<span class='name'>options</span>
|
735
|
+
|
736
|
+
|
737
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
738
|
+
|
739
|
+
|
740
|
+
|
741
|
+
—
|
742
|
+
<div class='inline'>
|
743
|
+
<p>additional configuration options</p>
|
744
|
+
</div>
|
745
|
+
|
746
|
+
</li>
|
747
|
+
|
748
|
+
</ul>
|
749
|
+
|
750
|
+
|
751
|
+
</div><table class="source_code">
|
752
|
+
<tr>
|
753
|
+
<td>
|
754
|
+
<pre class="lines">
|
755
|
+
|
756
|
+
|
757
|
+
44
|
758
|
+
45
|
759
|
+
46
|
760
|
+
47
|
761
|
+
48
|
762
|
+
49
|
763
|
+
50
|
764
|
+
51
|
765
|
+
52
|
766
|
+
53
|
767
|
+
54
|
768
|
+
55
|
769
|
+
56
|
770
|
+
57
|
771
|
+
58
|
772
|
+
59
|
773
|
+
60
|
774
|
+
61
|
775
|
+
62
|
776
|
+
63
|
777
|
+
64</pre>
|
778
|
+
</td>
|
779
|
+
<td>
|
780
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 44</span>
|
781
|
+
|
782
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='label'>url:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>user:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>private_key:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>config:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
783
|
+
<span class='ivar'>@config</span> <span class='op'>=</span> <span class='id identifier rubyid_config'>config</span> <span class='op'>||</span> <span class='const'><span class='object_link'><a href="../ResourceSpace.html" title="ResourceSpace (module)">ResourceSpace</a></span></span><span class='period'>.</span><span class='id identifier rubyid_config'><span class='object_link'><a href="../ResourceSpace.html#config-class_method" title="ResourceSpace.config (method)">config</a></span></span><span class='period'>.</span><span class='id identifier rubyid_dup'><span class='object_link'><a href="Configuration.html#dup-instance_method" title="ResourceSpace::Configuration#dup (method)">dup</a></span></span>
|
784
|
+
|
785
|
+
<span class='comment'># Set configuration from parameters
|
786
|
+
</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_url'>url</span> <span class='op'>=</span> <span class='id identifier rubyid_url'>url</span> <span class='kw'>if</span> <span class='id identifier rubyid_url'>url</span>
|
787
|
+
<span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_user'>user</span> <span class='op'>=</span> <span class='id identifier rubyid_user'>user</span> <span class='kw'>if</span> <span class='id identifier rubyid_user'>user</span>
|
788
|
+
<span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_private_key'>private_key</span> <span class='op'>=</span> <span class='id identifier rubyid_private_key'>private_key</span> <span class='kw'>if</span> <span class='id identifier rubyid_private_key'>private_key</span>
|
789
|
+
|
790
|
+
<span class='comment'># Apply additional options
|
791
|
+
</span> <span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='op'>|</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_public_send'>public_send</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='embexpr_end'>}</span><span class='tstring_content'>=</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_respond_to?'>respond_to?</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_key'>key</span><span class='embexpr_end'>}</span><span class='tstring_content'>=</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span> <span class='rbrace'>}</span>
|
792
|
+
|
793
|
+
<span class='comment'># Validate configuration
|
794
|
+
</span> <span class='ivar'>@config</span><span class='period'>.</span><span class='id identifier rubyid_validate!'>validate!</span>
|
795
|
+
|
796
|
+
<span class='comment'># Initialize API interfaces
|
797
|
+
</span> <span class='ivar'>@resources</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="Resource.html" title="ResourceSpace::Resource (class)">Resource</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Resource.html#initialize-instance_method" title="ResourceSpace::Resource#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
|
798
|
+
<span class='ivar'>@collections</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="Collection.html" title="ResourceSpace::Collection (class)">Collection</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Collection.html#initialize-instance_method" title="ResourceSpace::Collection#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
|
799
|
+
<span class='ivar'>@search</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="Search.html" title="ResourceSpace::Search (class)">Search</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Search.html#initialize-instance_method" title="ResourceSpace::Search#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
|
800
|
+
<span class='ivar'>@users</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="User.html" title="ResourceSpace::User (class)">User</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="User.html#initialize-instance_method" title="ResourceSpace::User#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
|
801
|
+
<span class='ivar'>@metadata</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="Metadata.html" title="ResourceSpace::Metadata (class)">Metadata</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Metadata.html#initialize-instance_method" title="ResourceSpace::Metadata#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
|
802
|
+
<span class='kw'>end</span></pre>
|
803
|
+
</td>
|
804
|
+
</tr>
|
805
|
+
</table>
|
806
|
+
</div>
|
807
|
+
|
808
|
+
</div>
|
809
|
+
|
810
|
+
<div id="instance_attr_details" class="attr_details">
|
811
|
+
<h2>Instance Attribute Details</h2>
|
812
|
+
|
813
|
+
|
814
|
+
<span id=""></span>
|
815
|
+
<div class="method_details first">
|
816
|
+
<h3 class="signature first" id="collections-instance_method">
|
817
|
+
|
818
|
+
#<strong>collections</strong> ⇒ <tt><span class='object_link'><a href="Collection.html" title="ResourceSpace::Collection (class)">Collection</a></span></tt> <span class="extras">(readonly)</span>
|
819
|
+
|
820
|
+
|
821
|
+
|
822
|
+
|
823
|
+
|
824
|
+
</h3><div class="docstring">
|
825
|
+
<div class="discussion">
|
826
|
+
|
827
|
+
<p>Returns collection management interface.</p>
|
828
|
+
|
829
|
+
|
830
|
+
</div>
|
831
|
+
</div>
|
832
|
+
<div class="tags">
|
833
|
+
|
834
|
+
<p class="tag_title">Returns:</p>
|
835
|
+
<ul class="return">
|
836
|
+
|
837
|
+
<li>
|
838
|
+
|
839
|
+
|
840
|
+
<span class='type'>(<tt><span class='object_link'><a href="Collection.html" title="ResourceSpace::Collection (class)">Collection</a></span></tt>)</span>
|
841
|
+
|
842
|
+
|
843
|
+
|
844
|
+
—
|
845
|
+
<div class='inline'>
|
846
|
+
<p>collection management interface</p>
|
847
|
+
</div>
|
848
|
+
|
849
|
+
</li>
|
850
|
+
|
851
|
+
</ul>
|
852
|
+
|
853
|
+
</div><table class="source_code">
|
854
|
+
<tr>
|
855
|
+
<td>
|
856
|
+
<pre class="lines">
|
857
|
+
|
858
|
+
|
859
|
+
26
|
860
|
+
27
|
861
|
+
28</pre>
|
862
|
+
</td>
|
863
|
+
<td>
|
864
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 26</span>
|
865
|
+
|
866
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_collections'>collections</span>
|
867
|
+
<span class='ivar'>@collections</span>
|
868
|
+
<span class='kw'>end</span></pre>
|
869
|
+
</td>
|
870
|
+
</tr>
|
871
|
+
</table>
|
872
|
+
</div>
|
873
|
+
|
874
|
+
|
875
|
+
<span id=""></span>
|
876
|
+
<div class="method_details ">
|
877
|
+
<h3 class="signature " id="config-instance_method">
|
878
|
+
|
879
|
+
#<strong>config</strong> ⇒ <tt><span class='object_link'><a href="Configuration.html" title="ResourceSpace::Configuration (class)">Configuration</a></span></tt> <span class="extras">(readonly)</span>
|
880
|
+
|
881
|
+
|
882
|
+
|
883
|
+
|
884
|
+
|
885
|
+
</h3><div class="docstring">
|
886
|
+
<div class="discussion">
|
887
|
+
|
888
|
+
<p>Returns client configuration.</p>
|
889
|
+
|
890
|
+
|
891
|
+
</div>
|
892
|
+
</div>
|
893
|
+
<div class="tags">
|
894
|
+
|
895
|
+
<p class="tag_title">Returns:</p>
|
896
|
+
<ul class="return">
|
897
|
+
|
898
|
+
<li>
|
899
|
+
|
900
|
+
|
901
|
+
<span class='type'>(<tt><span class='object_link'><a href="Configuration.html" title="ResourceSpace::Configuration (class)">Configuration</a></span></tt>)</span>
|
902
|
+
|
903
|
+
|
904
|
+
|
905
|
+
—
|
906
|
+
<div class='inline'>
|
907
|
+
<p>client configuration</p>
|
908
|
+
</div>
|
909
|
+
|
910
|
+
</li>
|
911
|
+
|
912
|
+
</ul>
|
913
|
+
|
914
|
+
</div><table class="source_code">
|
915
|
+
<tr>
|
916
|
+
<td>
|
917
|
+
<pre class="lines">
|
918
|
+
|
919
|
+
|
920
|
+
20
|
921
|
+
21
|
922
|
+
22</pre>
|
923
|
+
</td>
|
924
|
+
<td>
|
925
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 20</span>
|
926
|
+
|
927
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_config'>config</span>
|
928
|
+
<span class='ivar'>@config</span>
|
929
|
+
<span class='kw'>end</span></pre>
|
930
|
+
</td>
|
931
|
+
</tr>
|
932
|
+
</table>
|
933
|
+
</div>
|
934
|
+
|
935
|
+
|
936
|
+
<span id=""></span>
|
937
|
+
<div class="method_details ">
|
938
|
+
<h3 class="signature " id="metadata-instance_method">
|
939
|
+
|
940
|
+
#<strong>metadata</strong> ⇒ <tt><span class='object_link'><a href="Metadata.html" title="ResourceSpace::Metadata (class)">Metadata</a></span></tt> <span class="extras">(readonly)</span>
|
941
|
+
|
942
|
+
|
943
|
+
|
944
|
+
|
945
|
+
|
946
|
+
</h3><div class="docstring">
|
947
|
+
<div class="discussion">
|
948
|
+
|
949
|
+
<p>Returns metadata management interface.</p>
|
950
|
+
|
951
|
+
|
952
|
+
</div>
|
953
|
+
</div>
|
954
|
+
<div class="tags">
|
955
|
+
|
956
|
+
<p class="tag_title">Returns:</p>
|
957
|
+
<ul class="return">
|
958
|
+
|
959
|
+
<li>
|
960
|
+
|
961
|
+
|
962
|
+
<span class='type'>(<tt><span class='object_link'><a href="Metadata.html" title="ResourceSpace::Metadata (class)">Metadata</a></span></tt>)</span>
|
963
|
+
|
964
|
+
|
965
|
+
|
966
|
+
—
|
967
|
+
<div class='inline'>
|
968
|
+
<p>metadata management interface</p>
|
969
|
+
</div>
|
970
|
+
|
971
|
+
</li>
|
972
|
+
|
973
|
+
</ul>
|
974
|
+
|
975
|
+
</div><table class="source_code">
|
976
|
+
<tr>
|
977
|
+
<td>
|
978
|
+
<pre class="lines">
|
979
|
+
|
980
|
+
|
981
|
+
35
|
982
|
+
36
|
983
|
+
37</pre>
|
984
|
+
</td>
|
985
|
+
<td>
|
986
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 35</span>
|
987
|
+
|
988
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_metadata'>metadata</span>
|
989
|
+
<span class='ivar'>@metadata</span>
|
990
|
+
<span class='kw'>end</span></pre>
|
991
|
+
</td>
|
992
|
+
</tr>
|
993
|
+
</table>
|
994
|
+
</div>
|
995
|
+
|
996
|
+
|
997
|
+
<span id=""></span>
|
998
|
+
<div class="method_details ">
|
999
|
+
<h3 class="signature " id="resources-instance_method">
|
1000
|
+
|
1001
|
+
#<strong>resources</strong> ⇒ <tt><span class='object_link'><a href="Resource.html" title="ResourceSpace::Resource (class)">Resource</a></span></tt> <span class="extras">(readonly)</span>
|
1002
|
+
|
1003
|
+
|
1004
|
+
|
1005
|
+
|
1006
|
+
|
1007
|
+
</h3><div class="docstring">
|
1008
|
+
<div class="discussion">
|
1009
|
+
|
1010
|
+
<p>Returns resource management interface.</p>
|
1011
|
+
|
1012
|
+
|
1013
|
+
</div>
|
1014
|
+
</div>
|
1015
|
+
<div class="tags">
|
1016
|
+
|
1017
|
+
<p class="tag_title">Returns:</p>
|
1018
|
+
<ul class="return">
|
1019
|
+
|
1020
|
+
<li>
|
1021
|
+
|
1022
|
+
|
1023
|
+
<span class='type'>(<tt><span class='object_link'><a href="Resource.html" title="ResourceSpace::Resource (class)">Resource</a></span></tt>)</span>
|
1024
|
+
|
1025
|
+
|
1026
|
+
|
1027
|
+
—
|
1028
|
+
<div class='inline'>
|
1029
|
+
<p>resource management interface</p>
|
1030
|
+
</div>
|
1031
|
+
|
1032
|
+
</li>
|
1033
|
+
|
1034
|
+
</ul>
|
1035
|
+
|
1036
|
+
</div><table class="source_code">
|
1037
|
+
<tr>
|
1038
|
+
<td>
|
1039
|
+
<pre class="lines">
|
1040
|
+
|
1041
|
+
|
1042
|
+
23
|
1043
|
+
24
|
1044
|
+
25</pre>
|
1045
|
+
</td>
|
1046
|
+
<td>
|
1047
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 23</span>
|
1048
|
+
|
1049
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_resources'>resources</span>
|
1050
|
+
<span class='ivar'>@resources</span>
|
1051
|
+
<span class='kw'>end</span></pre>
|
1052
|
+
</td>
|
1053
|
+
</tr>
|
1054
|
+
</table>
|
1055
|
+
</div>
|
1056
|
+
|
1057
|
+
|
1058
|
+
<span id=""></span>
|
1059
|
+
<div class="method_details ">
|
1060
|
+
<h3 class="signature " id="search-instance_method">
|
1061
|
+
|
1062
|
+
#<strong>search</strong> ⇒ <tt><span class='object_link'><a href="Search.html" title="ResourceSpace::Search (class)">Search</a></span></tt> <span class="extras">(readonly)</span>
|
1063
|
+
|
1064
|
+
|
1065
|
+
|
1066
|
+
|
1067
|
+
|
1068
|
+
</h3><div class="docstring">
|
1069
|
+
<div class="discussion">
|
1070
|
+
|
1071
|
+
<p>Returns search interface.</p>
|
1072
|
+
|
1073
|
+
|
1074
|
+
</div>
|
1075
|
+
</div>
|
1076
|
+
<div class="tags">
|
1077
|
+
|
1078
|
+
<p class="tag_title">Returns:</p>
|
1079
|
+
<ul class="return">
|
1080
|
+
|
1081
|
+
<li>
|
1082
|
+
|
1083
|
+
|
1084
|
+
<span class='type'>(<tt><span class='object_link'><a href="Search.html" title="ResourceSpace::Search (class)">Search</a></span></tt>)</span>
|
1085
|
+
|
1086
|
+
|
1087
|
+
|
1088
|
+
—
|
1089
|
+
<div class='inline'>
|
1090
|
+
<p>search interface</p>
|
1091
|
+
</div>
|
1092
|
+
|
1093
|
+
</li>
|
1094
|
+
|
1095
|
+
</ul>
|
1096
|
+
|
1097
|
+
</div><table class="source_code">
|
1098
|
+
<tr>
|
1099
|
+
<td>
|
1100
|
+
<pre class="lines">
|
1101
|
+
|
1102
|
+
|
1103
|
+
29
|
1104
|
+
30
|
1105
|
+
31</pre>
|
1106
|
+
</td>
|
1107
|
+
<td>
|
1108
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 29</span>
|
1109
|
+
|
1110
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_search'>search</span>
|
1111
|
+
<span class='ivar'>@search</span>
|
1112
|
+
<span class='kw'>end</span></pre>
|
1113
|
+
</td>
|
1114
|
+
</tr>
|
1115
|
+
</table>
|
1116
|
+
</div>
|
1117
|
+
|
1118
|
+
|
1119
|
+
<span id=""></span>
|
1120
|
+
<div class="method_details ">
|
1121
|
+
<h3 class="signature " id="users-instance_method">
|
1122
|
+
|
1123
|
+
#<strong>users</strong> ⇒ <tt><span class='object_link'><a href="User.html" title="ResourceSpace::User (class)">User</a></span></tt> <span class="extras">(readonly)</span>
|
1124
|
+
|
1125
|
+
|
1126
|
+
|
1127
|
+
|
1128
|
+
|
1129
|
+
</h3><div class="docstring">
|
1130
|
+
<div class="discussion">
|
1131
|
+
|
1132
|
+
<p>Returns user management interface.</p>
|
1133
|
+
|
1134
|
+
|
1135
|
+
</div>
|
1136
|
+
</div>
|
1137
|
+
<div class="tags">
|
1138
|
+
|
1139
|
+
<p class="tag_title">Returns:</p>
|
1140
|
+
<ul class="return">
|
1141
|
+
|
1142
|
+
<li>
|
1143
|
+
|
1144
|
+
|
1145
|
+
<span class='type'>(<tt><span class='object_link'><a href="User.html" title="ResourceSpace::User (class)">User</a></span></tt>)</span>
|
1146
|
+
|
1147
|
+
|
1148
|
+
|
1149
|
+
—
|
1150
|
+
<div class='inline'>
|
1151
|
+
<p>user management interface</p>
|
1152
|
+
</div>
|
1153
|
+
|
1154
|
+
</li>
|
1155
|
+
|
1156
|
+
</ul>
|
1157
|
+
|
1158
|
+
</div><table class="source_code">
|
1159
|
+
<tr>
|
1160
|
+
<td>
|
1161
|
+
<pre class="lines">
|
1162
|
+
|
1163
|
+
|
1164
|
+
32
|
1165
|
+
33
|
1166
|
+
34</pre>
|
1167
|
+
</td>
|
1168
|
+
<td>
|
1169
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 32</span>
|
1170
|
+
|
1171
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_users'>users</span>
|
1172
|
+
<span class='ivar'>@users</span>
|
1173
|
+
<span class='kw'>end</span></pre>
|
1174
|
+
</td>
|
1175
|
+
</tr>
|
1176
|
+
</table>
|
1177
|
+
</div>
|
1178
|
+
|
1179
|
+
</div>
|
1180
|
+
|
1181
|
+
|
1182
|
+
<div id="instance_method_details" class="method_details_list">
|
1183
|
+
<h2>Instance Method Details</h2>
|
1184
|
+
|
1185
|
+
|
1186
|
+
<div class="method_details first">
|
1187
|
+
<h3 class="signature first" id="connection-instance_method">
|
1188
|
+
|
1189
|
+
#<strong>connection</strong> ⇒ <tt>Faraday::Connection</tt> <span class="extras">(private)</span>
|
1190
|
+
|
1191
|
+
|
1192
|
+
|
1193
|
+
|
1194
|
+
|
1195
|
+
</h3><div class="docstring">
|
1196
|
+
<div class="discussion">
|
1197
|
+
|
1198
|
+
<p>Get the Faraday connection instance</p>
|
1199
|
+
|
1200
|
+
|
1201
|
+
</div>
|
1202
|
+
</div>
|
1203
|
+
<div class="tags">
|
1204
|
+
|
1205
|
+
<p class="tag_title">Returns:</p>
|
1206
|
+
<ul class="return">
|
1207
|
+
|
1208
|
+
<li>
|
1209
|
+
|
1210
|
+
|
1211
|
+
<span class='type'>(<tt>Faraday::Connection</tt>)</span>
|
1212
|
+
|
1213
|
+
|
1214
|
+
|
1215
|
+
—
|
1216
|
+
<div class='inline'>
|
1217
|
+
<p>configured connection</p>
|
1218
|
+
</div>
|
1219
|
+
|
1220
|
+
</li>
|
1221
|
+
|
1222
|
+
</ul>
|
1223
|
+
|
1224
|
+
</div><table class="source_code">
|
1225
|
+
<tr>
|
1226
|
+
<td>
|
1227
|
+
<pre class="lines">
|
1228
|
+
|
1229
|
+
|
1230
|
+
172
|
1231
|
+
173
|
1232
|
+
174
|
1233
|
+
175
|
1234
|
+
176
|
1235
|
+
177
|
1236
|
+
178
|
1237
|
+
179
|
1238
|
+
180
|
1239
|
+
181
|
1240
|
+
182
|
1241
|
+
183
|
1242
|
+
184
|
1243
|
+
185
|
1244
|
+
186
|
1245
|
+
187
|
1246
|
+
188</pre>
|
1247
|
+
</td>
|
1248
|
+
<td>
|
1249
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 172</span>
|
1250
|
+
|
1251
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_connection'>connection</span>
|
1252
|
+
<span class='ivar'>@connection</span> <span class='op'>||=</span> <span class='const'>Faraday</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='label'>url:</span> <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_url'>url</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_conn'>conn</span><span class='op'>|</span>
|
1253
|
+
<span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_request'>request</span> <span class='symbol'>:multipart</span>
|
1254
|
+
<span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_request'>request</span> <span class='symbol'>:url_encoded</span>
|
1255
|
+
<span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_adapter'>adapter</span> <span class='const'>Faraday</span><span class='period'>.</span><span class='id identifier rubyid_default_adapter'>default_adapter</span>
|
1256
|
+
|
1257
|
+
<span class='comment'># Set timeout
|
1258
|
+
</span> <span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_timeout'>timeout</span> <span class='op'>=</span> <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_timeout'>timeout</span>
|
1259
|
+
|
1260
|
+
<span class='comment'># Set headers
|
1261
|
+
</span> <span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>User-Agent</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_user_agent'>user_agent</span>
|
1262
|
+
<span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_default_headers'>default_headers</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='op'>|</span> <span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='id identifier rubyid_key'>key</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span> <span class='rbrace'>}</span>
|
1263
|
+
|
1264
|
+
<span class='comment'># Add response middleware
|
1265
|
+
</span> <span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_response'>response</span> <span class='symbol'>:logger</span><span class='comma'>,</span> <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_logger'>logger</span> <span class='kw'>if</span> <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='op'>&&</span> <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_logger'>logger</span>
|
1266
|
+
<span class='kw'>end</span>
|
1267
|
+
<span class='kw'>end</span></pre>
|
1268
|
+
</td>
|
1269
|
+
</tr>
|
1270
|
+
</table>
|
1271
|
+
</div>
|
1272
|
+
|
1273
|
+
<div class="method_details ">
|
1274
|
+
<h3 class="signature " id="download_file-instance_method">
|
1275
|
+
|
1276
|
+
#<strong>download_file</strong>(download_url, file_path) ⇒ <tt>Boolean</tt>
|
1277
|
+
|
1278
|
+
|
1279
|
+
|
1280
|
+
|
1281
|
+
|
1282
|
+
</h3><div class="docstring">
|
1283
|
+
<div class="discussion">
|
1284
|
+
|
1285
|
+
<p>Download a file from ResourceSpace</p>
|
1286
|
+
|
1287
|
+
|
1288
|
+
</div>
|
1289
|
+
</div>
|
1290
|
+
<div class="tags">
|
1291
|
+
<p class="tag_title">Parameters:</p>
|
1292
|
+
<ul class="param">
|
1293
|
+
|
1294
|
+
<li>
|
1295
|
+
|
1296
|
+
<span class='name'>download_url</span>
|
1297
|
+
|
1298
|
+
|
1299
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1300
|
+
|
1301
|
+
|
1302
|
+
|
1303
|
+
—
|
1304
|
+
<div class='inline'>
|
1305
|
+
<p>download URL</p>
|
1306
|
+
</div>
|
1307
|
+
|
1308
|
+
</li>
|
1309
|
+
|
1310
|
+
<li>
|
1311
|
+
|
1312
|
+
<span class='name'>file_path</span>
|
1313
|
+
|
1314
|
+
|
1315
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1316
|
+
|
1317
|
+
|
1318
|
+
|
1319
|
+
—
|
1320
|
+
<div class='inline'>
|
1321
|
+
<p>local file path to save to</p>
|
1322
|
+
</div>
|
1323
|
+
|
1324
|
+
</li>
|
1325
|
+
|
1326
|
+
</ul>
|
1327
|
+
|
1328
|
+
<p class="tag_title">Returns:</p>
|
1329
|
+
<ul class="return">
|
1330
|
+
|
1331
|
+
<li>
|
1332
|
+
|
1333
|
+
|
1334
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
1335
|
+
|
1336
|
+
|
1337
|
+
|
1338
|
+
—
|
1339
|
+
<div class='inline'>
|
1340
|
+
<p>true if successful</p>
|
1341
|
+
</div>
|
1342
|
+
|
1343
|
+
</li>
|
1344
|
+
|
1345
|
+
</ul>
|
1346
|
+
|
1347
|
+
</div><table class="source_code">
|
1348
|
+
<tr>
|
1349
|
+
<td>
|
1350
|
+
<pre class="lines">
|
1351
|
+
|
1352
|
+
|
1353
|
+
105
|
1354
|
+
106
|
1355
|
+
107
|
1356
|
+
108
|
1357
|
+
109
|
1358
|
+
110
|
1359
|
+
111
|
1360
|
+
112
|
1361
|
+
113
|
1362
|
+
114</pre>
|
1363
|
+
</td>
|
1364
|
+
<td>
|
1365
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 105</span>
|
1366
|
+
|
1367
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_download_file'>download_file</span><span class='lparen'>(</span><span class='id identifier rubyid_download_url'>download_url</span><span class='comma'>,</span> <span class='id identifier rubyid_file_path'>file_path</span><span class='rparen'>)</span>
|
1368
|
+
<span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='id identifier rubyid_connection'>connection</span><span class='period'>.</span><span class='id identifier rubyid_get'>get</span><span class='lparen'>(</span><span class='id identifier rubyid_download_url'>download_url</span><span class='rparen'>)</span>
|
1369
|
+
|
1370
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_success?'>success?</span>
|
1371
|
+
<span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_write'>write</span><span class='lparen'>(</span><span class='id identifier rubyid_file_path'>file_path</span><span class='comma'>,</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span>
|
1372
|
+
<span class='kw'>true</span>
|
1373
|
+
<span class='kw'>else</span>
|
1374
|
+
<span class='id identifier rubyid_handle_error_response'>handle_error_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
|
1375
|
+
<span class='kw'>end</span>
|
1376
|
+
<span class='kw'>end</span></pre>
|
1377
|
+
</td>
|
1378
|
+
</tr>
|
1379
|
+
</table>
|
1380
|
+
</div>
|
1381
|
+
|
1382
|
+
<div class="method_details ">
|
1383
|
+
<h3 class="signature " id="generate_signature-instance_method">
|
1384
|
+
|
1385
|
+
#<strong>generate_signature</strong>(query_string) ⇒ <tt>String</tt> <span class="extras">(private)</span>
|
1386
|
+
|
1387
|
+
|
1388
|
+
|
1389
|
+
|
1390
|
+
|
1391
|
+
</h3><div class="docstring">
|
1392
|
+
<div class="discussion">
|
1393
|
+
|
1394
|
+
<p>Generate SHA256 signature for API authentication</p>
|
1395
|
+
|
1396
|
+
|
1397
|
+
</div>
|
1398
|
+
</div>
|
1399
|
+
<div class="tags">
|
1400
|
+
<p class="tag_title">Parameters:</p>
|
1401
|
+
<ul class="param">
|
1402
|
+
|
1403
|
+
<li>
|
1404
|
+
|
1405
|
+
<span class='name'>query_string</span>
|
1406
|
+
|
1407
|
+
|
1408
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1409
|
+
|
1410
|
+
|
1411
|
+
|
1412
|
+
—
|
1413
|
+
<div class='inline'>
|
1414
|
+
<p>URL-encoded query string</p>
|
1415
|
+
</div>
|
1416
|
+
|
1417
|
+
</li>
|
1418
|
+
|
1419
|
+
</ul>
|
1420
|
+
|
1421
|
+
<p class="tag_title">Returns:</p>
|
1422
|
+
<ul class="return">
|
1423
|
+
|
1424
|
+
<li>
|
1425
|
+
|
1426
|
+
|
1427
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1428
|
+
|
1429
|
+
|
1430
|
+
|
1431
|
+
—
|
1432
|
+
<div class='inline'>
|
1433
|
+
<p>SHA256 hexadecimal signature</p>
|
1434
|
+
</div>
|
1435
|
+
|
1436
|
+
</li>
|
1437
|
+
|
1438
|
+
</ul>
|
1439
|
+
|
1440
|
+
</div><table class="source_code">
|
1441
|
+
<tr>
|
1442
|
+
<td>
|
1443
|
+
<pre class="lines">
|
1444
|
+
|
1445
|
+
|
1446
|
+
165
|
1447
|
+
166
|
1448
|
+
167</pre>
|
1449
|
+
</td>
|
1450
|
+
<td>
|
1451
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 165</span>
|
1452
|
+
|
1453
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_generate_signature'>generate_signature</span><span class='lparen'>(</span><span class='id identifier rubyid_query_string'>query_string</span><span class='rparen'>)</span>
|
1454
|
+
<span class='const'>Digest</span><span class='op'>::</span><span class='const'>SHA256</span><span class='period'>.</span><span class='id identifier rubyid_hexdigest'>hexdigest</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_private_key'>private_key</span><span class='embexpr_end'>}</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_query_string'>query_string</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
1455
|
+
<span class='kw'>end</span></pre>
|
1456
|
+
</td>
|
1457
|
+
</tr>
|
1458
|
+
</table>
|
1459
|
+
</div>
|
1460
|
+
|
1461
|
+
<div class="method_details ">
|
1462
|
+
<h3 class="signature " id="get-instance_method">
|
1463
|
+
|
1464
|
+
#<strong>get</strong>(function, params = {}) ⇒ <tt>Hash</tt>
|
1465
|
+
|
1466
|
+
|
1467
|
+
|
1468
|
+
|
1469
|
+
|
1470
|
+
</h3><div class="docstring">
|
1471
|
+
<div class="discussion">
|
1472
|
+
|
1473
|
+
<p>Make a GET request to the ResourceSpace API</p>
|
1474
|
+
|
1475
|
+
|
1476
|
+
</div>
|
1477
|
+
</div>
|
1478
|
+
<div class="tags">
|
1479
|
+
<p class="tag_title">Parameters:</p>
|
1480
|
+
<ul class="param">
|
1481
|
+
|
1482
|
+
<li>
|
1483
|
+
|
1484
|
+
<span class='name'>function</span>
|
1485
|
+
|
1486
|
+
|
1487
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1488
|
+
|
1489
|
+
|
1490
|
+
|
1491
|
+
—
|
1492
|
+
<div class='inline'>
|
1493
|
+
<p>API function name</p>
|
1494
|
+
</div>
|
1495
|
+
|
1496
|
+
</li>
|
1497
|
+
|
1498
|
+
<li>
|
1499
|
+
|
1500
|
+
<span class='name'>params</span>
|
1501
|
+
|
1502
|
+
|
1503
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
1504
|
+
|
1505
|
+
|
1506
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
1507
|
+
|
1508
|
+
|
1509
|
+
—
|
1510
|
+
<div class='inline'>
|
1511
|
+
<p>request parameters</p>
|
1512
|
+
</div>
|
1513
|
+
|
1514
|
+
</li>
|
1515
|
+
|
1516
|
+
</ul>
|
1517
|
+
|
1518
|
+
<p class="tag_title">Returns:</p>
|
1519
|
+
<ul class="return">
|
1520
|
+
|
1521
|
+
<li>
|
1522
|
+
|
1523
|
+
|
1524
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
1525
|
+
|
1526
|
+
|
1527
|
+
|
1528
|
+
—
|
1529
|
+
<div class='inline'>
|
1530
|
+
<p>parsed JSON response</p>
|
1531
|
+
</div>
|
1532
|
+
|
1533
|
+
</li>
|
1534
|
+
|
1535
|
+
</ul>
|
1536
|
+
|
1537
|
+
</div><table class="source_code">
|
1538
|
+
<tr>
|
1539
|
+
<td>
|
1540
|
+
<pre class="lines">
|
1541
|
+
|
1542
|
+
|
1543
|
+
71
|
1544
|
+
72
|
1545
|
+
73</pre>
|
1546
|
+
</td>
|
1547
|
+
<td>
|
1548
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 71</span>
|
1549
|
+
|
1550
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_get'>get</span><span class='lparen'>(</span><span class='id identifier rubyid_function'>function</span><span class='comma'>,</span> <span class='id identifier rubyid_params'>params</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1551
|
+
<span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='symbol'>:get</span><span class='comma'>,</span> <span class='id identifier rubyid_function'>function</span><span class='comma'>,</span> <span class='id identifier rubyid_params'>params</span><span class='rparen'>)</span>
|
1552
|
+
<span class='kw'>end</span></pre>
|
1553
|
+
</td>
|
1554
|
+
</tr>
|
1555
|
+
</table>
|
1556
|
+
</div>
|
1557
|
+
|
1558
|
+
<div class="method_details ">
|
1559
|
+
<h3 class="signature " id="handle_error_response-instance_method">
|
1560
|
+
|
1561
|
+
#<strong>handle_error_response</strong>(response) ⇒ <tt>Object</tt> <span class="extras">(private)</span>
|
1562
|
+
|
1563
|
+
|
1564
|
+
|
1565
|
+
|
1566
|
+
|
1567
|
+
</h3><div class="docstring">
|
1568
|
+
<div class="discussion">
|
1569
|
+
|
1570
|
+
<p>Handle error responses and raise appropriate exceptions</p>
|
1571
|
+
|
1572
|
+
|
1573
|
+
</div>
|
1574
|
+
</div>
|
1575
|
+
<div class="tags">
|
1576
|
+
<p class="tag_title">Parameters:</p>
|
1577
|
+
<ul class="param">
|
1578
|
+
|
1579
|
+
<li>
|
1580
|
+
|
1581
|
+
<span class='name'>response</span>
|
1582
|
+
|
1583
|
+
|
1584
|
+
<span class='type'>(<tt>Faraday::Response</tt>)</span>
|
1585
|
+
|
1586
|
+
|
1587
|
+
|
1588
|
+
—
|
1589
|
+
<div class='inline'>
|
1590
|
+
<p>HTTP response</p>
|
1591
|
+
</div>
|
1592
|
+
|
1593
|
+
</li>
|
1594
|
+
|
1595
|
+
</ul>
|
1596
|
+
|
1597
|
+
<p class="tag_title">Raises:</p>
|
1598
|
+
<ul class="raise">
|
1599
|
+
|
1600
|
+
<li>
|
1601
|
+
|
1602
|
+
|
1603
|
+
<span class='type'>(<tt><span class='object_link'><a href="Error.html" title="ResourceSpace::Error (class)">Error</a></span></tt>)</span>
|
1604
|
+
|
1605
|
+
|
1606
|
+
|
1607
|
+
—
|
1608
|
+
<div class='inline'>
|
1609
|
+
<p>appropriate error based on status code</p>
|
1610
|
+
</div>
|
1611
|
+
|
1612
|
+
</li>
|
1613
|
+
|
1614
|
+
</ul>
|
1615
|
+
|
1616
|
+
</div><table class="source_code">
|
1617
|
+
<tr>
|
1618
|
+
<td>
|
1619
|
+
<pre class="lines">
|
1620
|
+
|
1621
|
+
|
1622
|
+
207
|
1623
|
+
208
|
1624
|
+
209
|
1625
|
+
210
|
1626
|
+
211
|
1627
|
+
212
|
1628
|
+
213
|
1629
|
+
214
|
1630
|
+
215
|
1631
|
+
216
|
1632
|
+
217
|
1633
|
+
218
|
1634
|
+
219
|
1635
|
+
220
|
1636
|
+
221</pre>
|
1637
|
+
</td>
|
1638
|
+
<td>
|
1639
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 207</span>
|
1640
|
+
|
1641
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_handle_error_response'>handle_error_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
|
1642
|
+
<span class='id identifier rubyid_message'>message</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>HTTP </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_status'>status</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
1643
|
+
|
1644
|
+
<span class='comment'># Try to extract error message from response body
|
1645
|
+
</span> <span class='kw'>if</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span> <span class='op'>&&</span> <span class='op'>!</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
|
1646
|
+
<span class='kw'>begin</span>
|
1647
|
+
<span class='id identifier rubyid_parsed_body'>parsed_body</span> <span class='op'>=</span> <span class='const'>JSON</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span>
|
1648
|
+
<span class='id identifier rubyid_message'>message</span> <span class='op'>=</span> <span class='id identifier rubyid_parsed_body'>parsed_body</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>error</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='id identifier rubyid_parsed_body'>parsed_body</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>message</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='id identifier rubyid_message'>message</span>
|
1649
|
+
<span class='kw'>rescue</span> <span class='const'>JSON</span><span class='op'>::</span><span class='const'>ParserError</span>
|
1650
|
+
<span class='id identifier rubyid_message'>message</span> <span class='op'>=</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='period'>.</span><span class='id identifier rubyid_length'>length</span> <span class='op'>></span> <span class='int'>200</span> <span class='op'>?</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='lbracket'>[</span><span class='int'>0</span><span class='op'>..</span><span class='int'>200</span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_content'>...</span><span class='tstring_end'>"</span></span> <span class='op'>:</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span>
|
1651
|
+
<span class='kw'>end</span>
|
1652
|
+
<span class='kw'>end</span>
|
1653
|
+
|
1654
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="../ResourceSpace.html" title="ResourceSpace (module)">ResourceSpace</a></span></span><span class='period'>.</span><span class='id identifier rubyid_from_response'><span class='object_link'><a href="../ResourceSpace.html#from_response-class_method" title="ResourceSpace.from_response (method)">from_response</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_status'>status</span><span class='comma'>,</span> <span class='id identifier rubyid_message'>message</span><span class='comma'>,</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span>
|
1655
|
+
<span class='kw'>end</span></pre>
|
1656
|
+
</td>
|
1657
|
+
</tr>
|
1658
|
+
</table>
|
1659
|
+
</div>
|
1660
|
+
|
1661
|
+
<div class="method_details ">
|
1662
|
+
<h3 class="signature " id="handle_response-instance_method">
|
1663
|
+
|
1664
|
+
#<strong>handle_response</strong>(response) ⇒ <tt>Hash</tt> <span class="extras">(private)</span>
|
1665
|
+
|
1666
|
+
|
1667
|
+
|
1668
|
+
|
1669
|
+
|
1670
|
+
</h3><div class="docstring">
|
1671
|
+
<div class="discussion">
|
1672
|
+
|
1673
|
+
<p>Handle API response and parse JSON</p>
|
1674
|
+
|
1675
|
+
|
1676
|
+
</div>
|
1677
|
+
</div>
|
1678
|
+
<div class="tags">
|
1679
|
+
<p class="tag_title">Parameters:</p>
|
1680
|
+
<ul class="param">
|
1681
|
+
|
1682
|
+
<li>
|
1683
|
+
|
1684
|
+
<span class='name'>response</span>
|
1685
|
+
|
1686
|
+
|
1687
|
+
<span class='type'>(<tt>Faraday::Response</tt>)</span>
|
1688
|
+
|
1689
|
+
|
1690
|
+
|
1691
|
+
—
|
1692
|
+
<div class='inline'>
|
1693
|
+
<p>HTTP response</p>
|
1694
|
+
</div>
|
1695
|
+
|
1696
|
+
</li>
|
1697
|
+
|
1698
|
+
</ul>
|
1699
|
+
|
1700
|
+
<p class="tag_title">Returns:</p>
|
1701
|
+
<ul class="return">
|
1702
|
+
|
1703
|
+
<li>
|
1704
|
+
|
1705
|
+
|
1706
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
1707
|
+
|
1708
|
+
|
1709
|
+
|
1710
|
+
—
|
1711
|
+
<div class='inline'>
|
1712
|
+
<p>parsed JSON response</p>
|
1713
|
+
</div>
|
1714
|
+
|
1715
|
+
</li>
|
1716
|
+
|
1717
|
+
</ul>
|
1718
|
+
<p class="tag_title">Raises:</p>
|
1719
|
+
<ul class="raise">
|
1720
|
+
|
1721
|
+
<li>
|
1722
|
+
|
1723
|
+
|
1724
|
+
<span class='type'>(<tt><span class='object_link'><a href="Error.html" title="ResourceSpace::Error (class)">Error</a></span></tt>)</span>
|
1725
|
+
|
1726
|
+
|
1727
|
+
|
1728
|
+
—
|
1729
|
+
<div class='inline'>
|
1730
|
+
<p>if response indicates an error</p>
|
1731
|
+
</div>
|
1732
|
+
|
1733
|
+
</li>
|
1734
|
+
|
1735
|
+
</ul>
|
1736
|
+
|
1737
|
+
</div><table class="source_code">
|
1738
|
+
<tr>
|
1739
|
+
<td>
|
1740
|
+
<pre class="lines">
|
1741
|
+
|
1742
|
+
|
1743
|
+
195
|
1744
|
+
196
|
1745
|
+
197
|
1746
|
+
198
|
1747
|
+
199
|
1748
|
+
200
|
1749
|
+
201</pre>
|
1750
|
+
</td>
|
1751
|
+
<td>
|
1752
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 195</span>
|
1753
|
+
|
1754
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_handle_response'>handle_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
|
1755
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_success?'>success?</span>
|
1756
|
+
<span class='id identifier rubyid_parse_json_response'>parse_json_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span>
|
1757
|
+
<span class='kw'>else</span>
|
1758
|
+
<span class='id identifier rubyid_handle_error_response'>handle_error_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
|
1759
|
+
<span class='kw'>end</span>
|
1760
|
+
<span class='kw'>end</span></pre>
|
1761
|
+
</td>
|
1762
|
+
</tr>
|
1763
|
+
</table>
|
1764
|
+
</div>
|
1765
|
+
|
1766
|
+
<div class="method_details ">
|
1767
|
+
<h3 class="signature " id="mime_type_for_file-instance_method">
|
1768
|
+
|
1769
|
+
#<strong>mime_type_for_file</strong>(file_path) ⇒ <tt>String</tt> <span class="extras">(private)</span>
|
1770
|
+
|
1771
|
+
|
1772
|
+
|
1773
|
+
|
1774
|
+
|
1775
|
+
</h3><div class="docstring">
|
1776
|
+
<div class="discussion">
|
1777
|
+
|
1778
|
+
<p>Get MIME type for a file</p>
|
1779
|
+
|
1780
|
+
|
1781
|
+
</div>
|
1782
|
+
</div>
|
1783
|
+
<div class="tags">
|
1784
|
+
<p class="tag_title">Parameters:</p>
|
1785
|
+
<ul class="param">
|
1786
|
+
|
1787
|
+
<li>
|
1788
|
+
|
1789
|
+
<span class='name'>file_path</span>
|
1790
|
+
|
1791
|
+
|
1792
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1793
|
+
|
1794
|
+
|
1795
|
+
|
1796
|
+
—
|
1797
|
+
<div class='inline'>
|
1798
|
+
<p>file path</p>
|
1799
|
+
</div>
|
1800
|
+
|
1801
|
+
</li>
|
1802
|
+
|
1803
|
+
</ul>
|
1804
|
+
|
1805
|
+
<p class="tag_title">Returns:</p>
|
1806
|
+
<ul class="return">
|
1807
|
+
|
1808
|
+
<li>
|
1809
|
+
|
1810
|
+
|
1811
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1812
|
+
|
1813
|
+
|
1814
|
+
|
1815
|
+
—
|
1816
|
+
<div class='inline'>
|
1817
|
+
<p>MIME type</p>
|
1818
|
+
</div>
|
1819
|
+
|
1820
|
+
</li>
|
1821
|
+
|
1822
|
+
</ul>
|
1823
|
+
|
1824
|
+
</div><table class="source_code">
|
1825
|
+
<tr>
|
1826
|
+
<td>
|
1827
|
+
<pre class="lines">
|
1828
|
+
|
1829
|
+
|
1830
|
+
240
|
1831
|
+
241
|
1832
|
+
242
|
1833
|
+
243</pre>
|
1834
|
+
</td>
|
1835
|
+
<td>
|
1836
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 240</span>
|
1837
|
+
|
1838
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_mime_type_for_file'>mime_type_for_file</span><span class='lparen'>(</span><span class='id identifier rubyid_file_path'>file_path</span><span class='rparen'>)</span>
|
1839
|
+
<span class='id identifier rubyid_require'>require</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>mime/types</span><span class='tstring_end'>"</span></span>
|
1840
|
+
<span class='const'>MIME</span><span class='op'>::</span><span class='const'>Types</span><span class='period'>.</span><span class='id identifier rubyid_type_for'>type_for</span><span class='lparen'>(</span><span class='id identifier rubyid_file_path'>file_path</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span><span class='op'>&.</span><span class='id identifier rubyid_content_type'>content_type</span> <span class='op'>||</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>application/octet-stream</span><span class='tstring_end'>"</span></span>
|
1841
|
+
<span class='kw'>end</span></pre>
|
1842
|
+
</td>
|
1843
|
+
</tr>
|
1844
|
+
</table>
|
1845
|
+
</div>
|
1846
|
+
|
1847
|
+
<div class="method_details ">
|
1848
|
+
<h3 class="signature " id="parse_json_response-instance_method">
|
1849
|
+
|
1850
|
+
#<strong>parse_json_response</strong>(body) ⇒ <tt>Hash</tt> <span class="extras">(private)</span>
|
1851
|
+
|
1852
|
+
|
1853
|
+
|
1854
|
+
|
1855
|
+
|
1856
|
+
</h3><div class="docstring">
|
1857
|
+
<div class="discussion">
|
1858
|
+
|
1859
|
+
<p>Parse JSON response body</p>
|
1860
|
+
|
1861
|
+
|
1862
|
+
</div>
|
1863
|
+
</div>
|
1864
|
+
<div class="tags">
|
1865
|
+
<p class="tag_title">Parameters:</p>
|
1866
|
+
<ul class="param">
|
1867
|
+
|
1868
|
+
<li>
|
1869
|
+
|
1870
|
+
<span class='name'>body</span>
|
1871
|
+
|
1872
|
+
|
1873
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1874
|
+
|
1875
|
+
|
1876
|
+
|
1877
|
+
—
|
1878
|
+
<div class='inline'>
|
1879
|
+
<p>response body</p>
|
1880
|
+
</div>
|
1881
|
+
|
1882
|
+
</li>
|
1883
|
+
|
1884
|
+
</ul>
|
1885
|
+
|
1886
|
+
<p class="tag_title">Returns:</p>
|
1887
|
+
<ul class="return">
|
1888
|
+
|
1889
|
+
<li>
|
1890
|
+
|
1891
|
+
|
1892
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
1893
|
+
|
1894
|
+
|
1895
|
+
|
1896
|
+
—
|
1897
|
+
<div class='inline'>
|
1898
|
+
<p>parsed JSON</p>
|
1899
|
+
</div>
|
1900
|
+
|
1901
|
+
</li>
|
1902
|
+
|
1903
|
+
</ul>
|
1904
|
+
<p class="tag_title">Raises:</p>
|
1905
|
+
<ul class="raise">
|
1906
|
+
|
1907
|
+
<li>
|
1908
|
+
|
1909
|
+
|
1910
|
+
<span class='type'>(<tt><span class='object_link'><a href="ParseError.html" title="ResourceSpace::ParseError (class)">ParseError</a></span></tt>)</span>
|
1911
|
+
|
1912
|
+
|
1913
|
+
|
1914
|
+
—
|
1915
|
+
<div class='inline'>
|
1916
|
+
<p>if JSON parsing fails</p>
|
1917
|
+
</div>
|
1918
|
+
|
1919
|
+
</li>
|
1920
|
+
|
1921
|
+
</ul>
|
1922
|
+
|
1923
|
+
</div><table class="source_code">
|
1924
|
+
<tr>
|
1925
|
+
<td>
|
1926
|
+
<pre class="lines">
|
1927
|
+
|
1928
|
+
|
1929
|
+
228
|
1930
|
+
229
|
1931
|
+
230
|
1932
|
+
231
|
1933
|
+
232
|
1934
|
+
233
|
1935
|
+
234</pre>
|
1936
|
+
</td>
|
1937
|
+
<td>
|
1938
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 228</span>
|
1939
|
+
|
1940
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_parse_json_response'>parse_json_response</span><span class='lparen'>(</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span>
|
1941
|
+
<span class='kw'>return</span> <span class='lbrace'>{</span><span class='rbrace'>}</span> <span class='kw'>if</span> <span class='id identifier rubyid_body'>body</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>||</span> <span class='id identifier rubyid_body'>body</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
|
1942
|
+
|
1943
|
+
<span class='const'>JSON</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span>
|
1944
|
+
<span class='kw'>rescue</span> <span class='const'>JSON</span><span class='op'>::</span><span class='const'>ParserError</span> <span class='op'>=></span> <span class='id identifier rubyid_e'>e</span>
|
1945
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="ParseError.html" title="ResourceSpace::ParseError (class)">ParseError</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Error.html#initialize-instance_method" title="ResourceSpace::Error#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Failed to parse JSON response: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_message'>message</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='label'>data:</span> <span class='lbrace'>{</span> <span class='label'>body:</span> <span class='id identifier rubyid_body'>body</span> <span class='rbrace'>}</span><span class='rparen'>)</span>
|
1946
|
+
<span class='kw'>end</span></pre>
|
1947
|
+
</td>
|
1948
|
+
</tr>
|
1949
|
+
</table>
|
1950
|
+
</div>
|
1951
|
+
|
1952
|
+
<div class="method_details ">
|
1953
|
+
<h3 class="signature " id="post-instance_method">
|
1954
|
+
|
1955
|
+
#<strong>post</strong>(function, params = {}) ⇒ <tt>Hash</tt>
|
1956
|
+
|
1957
|
+
|
1958
|
+
|
1959
|
+
|
1960
|
+
|
1961
|
+
</h3><div class="docstring">
|
1962
|
+
<div class="discussion">
|
1963
|
+
|
1964
|
+
<p>Make a POST request to the ResourceSpace API</p>
|
1965
|
+
|
1966
|
+
|
1967
|
+
</div>
|
1968
|
+
</div>
|
1969
|
+
<div class="tags">
|
1970
|
+
<p class="tag_title">Parameters:</p>
|
1971
|
+
<ul class="param">
|
1972
|
+
|
1973
|
+
<li>
|
1974
|
+
|
1975
|
+
<span class='name'>function</span>
|
1976
|
+
|
1977
|
+
|
1978
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1979
|
+
|
1980
|
+
|
1981
|
+
|
1982
|
+
—
|
1983
|
+
<div class='inline'>
|
1984
|
+
<p>API function name</p>
|
1985
|
+
</div>
|
1986
|
+
|
1987
|
+
</li>
|
1988
|
+
|
1989
|
+
<li>
|
1990
|
+
|
1991
|
+
<span class='name'>params</span>
|
1992
|
+
|
1993
|
+
|
1994
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
1995
|
+
|
1996
|
+
|
1997
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
1998
|
+
|
1999
|
+
|
2000
|
+
—
|
2001
|
+
<div class='inline'>
|
2002
|
+
<p>request parameters</p>
|
2003
|
+
</div>
|
2004
|
+
|
2005
|
+
</li>
|
2006
|
+
|
2007
|
+
</ul>
|
2008
|
+
|
2009
|
+
<p class="tag_title">Returns:</p>
|
2010
|
+
<ul class="return">
|
2011
|
+
|
2012
|
+
<li>
|
2013
|
+
|
2014
|
+
|
2015
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
2016
|
+
|
2017
|
+
|
2018
|
+
|
2019
|
+
—
|
2020
|
+
<div class='inline'>
|
2021
|
+
<p>parsed JSON response</p>
|
2022
|
+
</div>
|
2023
|
+
|
2024
|
+
</li>
|
2025
|
+
|
2026
|
+
</ul>
|
2027
|
+
|
2028
|
+
</div><table class="source_code">
|
2029
|
+
<tr>
|
2030
|
+
<td>
|
2031
|
+
<pre class="lines">
|
2032
|
+
|
2033
|
+
|
2034
|
+
80
|
2035
|
+
81
|
2036
|
+
82</pre>
|
2037
|
+
</td>
|
2038
|
+
<td>
|
2039
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 80</span>
|
2040
|
+
|
2041
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_post'>post</span><span class='lparen'>(</span><span class='id identifier rubyid_function'>function</span><span class='comma'>,</span> <span class='id identifier rubyid_params'>params</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
2042
|
+
<span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='symbol'>:post</span><span class='comma'>,</span> <span class='id identifier rubyid_function'>function</span><span class='comma'>,</span> <span class='id identifier rubyid_params'>params</span><span class='rparen'>)</span>
|
2043
|
+
<span class='kw'>end</span></pre>
|
2044
|
+
</td>
|
2045
|
+
</tr>
|
2046
|
+
</table>
|
2047
|
+
</div>
|
2048
|
+
|
2049
|
+
<div class="method_details ">
|
2050
|
+
<h3 class="signature " id="request-instance_method">
|
2051
|
+
|
2052
|
+
#<strong>request</strong>(method, function, params = {}, multipart: false) ⇒ <tt>Hash</tt> <span class="extras">(private)</span>
|
2053
|
+
|
2054
|
+
|
2055
|
+
|
2056
|
+
|
2057
|
+
|
2058
|
+
</h3><div class="docstring">
|
2059
|
+
<div class="discussion">
|
2060
|
+
|
2061
|
+
<p>Make an HTTP request to the ResourceSpace API</p>
|
2062
|
+
|
2063
|
+
|
2064
|
+
</div>
|
2065
|
+
</div>
|
2066
|
+
<div class="tags">
|
2067
|
+
<p class="tag_title">Parameters:</p>
|
2068
|
+
<ul class="param">
|
2069
|
+
|
2070
|
+
<li>
|
2071
|
+
|
2072
|
+
<span class='name'>method</span>
|
2073
|
+
|
2074
|
+
|
2075
|
+
<span class='type'>(<tt>Symbol</tt>)</span>
|
2076
|
+
|
2077
|
+
|
2078
|
+
|
2079
|
+
—
|
2080
|
+
<div class='inline'>
|
2081
|
+
<p>HTTP method (:get or :post)</p>
|
2082
|
+
</div>
|
2083
|
+
|
2084
|
+
</li>
|
2085
|
+
|
2086
|
+
<li>
|
2087
|
+
|
2088
|
+
<span class='name'>function</span>
|
2089
|
+
|
2090
|
+
|
2091
|
+
<span class='type'>(<tt>String</tt>)</span>
|
2092
|
+
|
2093
|
+
|
2094
|
+
|
2095
|
+
—
|
2096
|
+
<div class='inline'>
|
2097
|
+
<p>API function name</p>
|
2098
|
+
</div>
|
2099
|
+
|
2100
|
+
</li>
|
2101
|
+
|
2102
|
+
<li>
|
2103
|
+
|
2104
|
+
<span class='name'>params</span>
|
2105
|
+
|
2106
|
+
|
2107
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
2108
|
+
|
2109
|
+
|
2110
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
2111
|
+
|
2112
|
+
|
2113
|
+
—
|
2114
|
+
<div class='inline'>
|
2115
|
+
<p>request parameters</p>
|
2116
|
+
</div>
|
2117
|
+
|
2118
|
+
</li>
|
2119
|
+
|
2120
|
+
<li>
|
2121
|
+
|
2122
|
+
<span class='name'>multipart</span>
|
2123
|
+
|
2124
|
+
|
2125
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
2126
|
+
|
2127
|
+
|
2128
|
+
<em class="default">(defaults to: <tt>false</tt>)</em>
|
2129
|
+
|
2130
|
+
|
2131
|
+
—
|
2132
|
+
<div class='inline'>
|
2133
|
+
<p>whether to use multipart encoding</p>
|
2134
|
+
</div>
|
2135
|
+
|
2136
|
+
</li>
|
2137
|
+
|
2138
|
+
</ul>
|
2139
|
+
|
2140
|
+
<p class="tag_title">Returns:</p>
|
2141
|
+
<ul class="return">
|
2142
|
+
|
2143
|
+
<li>
|
2144
|
+
|
2145
|
+
|
2146
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
2147
|
+
|
2148
|
+
|
2149
|
+
|
2150
|
+
—
|
2151
|
+
<div class='inline'>
|
2152
|
+
<p>parsed JSON response</p>
|
2153
|
+
</div>
|
2154
|
+
|
2155
|
+
</li>
|
2156
|
+
|
2157
|
+
</ul>
|
2158
|
+
|
2159
|
+
</div><table class="source_code">
|
2160
|
+
<tr>
|
2161
|
+
<td>
|
2162
|
+
<pre class="lines">
|
2163
|
+
|
2164
|
+
|
2165
|
+
132
|
2166
|
+
133
|
2167
|
+
134
|
2168
|
+
135
|
2169
|
+
136
|
2170
|
+
137
|
2171
|
+
138
|
2172
|
+
139
|
2173
|
+
140
|
2174
|
+
141
|
2175
|
+
142
|
2176
|
+
143
|
2177
|
+
144
|
2178
|
+
145
|
2179
|
+
146
|
2180
|
+
147
|
2181
|
+
148
|
2182
|
+
149
|
2183
|
+
150
|
2184
|
+
151
|
2185
|
+
152
|
2186
|
+
153
|
2187
|
+
154
|
2188
|
+
155
|
2189
|
+
156
|
2190
|
+
157
|
2191
|
+
158
|
2192
|
+
159</pre>
|
2193
|
+
</td>
|
2194
|
+
<td>
|
2195
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 132</span>
|
2196
|
+
|
2197
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='id identifier rubyid_method'>method</span><span class='comma'>,</span> <span class='id identifier rubyid_function'>function</span><span class='comma'>,</span> <span class='id identifier rubyid_params'>params</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>multipart:</span> <span class='kw'>false</span><span class='rparen'>)</span>
|
2198
|
+
<span class='comment'># Prepare base parameters
|
2199
|
+
</span> <span class='id identifier rubyid_request_params'>request_params</span> <span class='op'>=</span> <span class='lbrace'>{</span>
|
2200
|
+
<span class='label'>user:</span> <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_user'>user</span><span class='comma'>,</span>
|
2201
|
+
<span class='label'>function:</span> <span class='id identifier rubyid_function'>function</span>
|
2202
|
+
<span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_params'>params</span><span class='rparen'>)</span>
|
2203
|
+
|
2204
|
+
<span class='comment'># Build query string for signing
|
2205
|
+
</span> <span class='id identifier rubyid_query_string'>query_string</span> <span class='op'>=</span> <span class='const'>URI</span><span class='period'>.</span><span class='id identifier rubyid_encode_www_form'>encode_www_form</span><span class='lparen'>(</span><span class='id identifier rubyid_request_params'>request_params</span><span class='period'>.</span><span class='id identifier rubyid_reject'>reject</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid__k'>_k</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Faraday</span><span class='op'>::</span><span class='const'>UploadIO</span><span class='rparen'>)</span> <span class='rbrace'>}</span><span class='rparen'>)</span>
|
2206
|
+
|
2207
|
+
<span class='comment'># Generate signature
|
2208
|
+
</span> <span class='id identifier rubyid_signature'>signature</span> <span class='op'>=</span> <span class='id identifier rubyid_generate_signature'>generate_signature</span><span class='lparen'>(</span><span class='id identifier rubyid_query_string'>query_string</span><span class='rparen'>)</span>
|
2209
|
+
<span class='id identifier rubyid_request_params'>request_params</span><span class='lbracket'>[</span><span class='symbol'>:sign</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_signature'>signature</span>
|
2210
|
+
<span class='id identifier rubyid_request_params'>request_params</span><span class='lbracket'>[</span><span class='symbol'>:authmode</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_config'>config</span><span class='period'>.</span><span class='id identifier rubyid_auth_mode'>auth_mode</span>
|
2211
|
+
|
2212
|
+
<span class='comment'># Make the request
|
2213
|
+
</span> <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='kw'>if</span> <span class='id identifier rubyid_method'>method</span> <span class='op'>==</span> <span class='symbol'>:get</span>
|
2214
|
+
<span class='id identifier rubyid_connection'>connection</span><span class='period'>.</span><span class='id identifier rubyid_get'>get</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='id identifier rubyid_request_params'>request_params</span><span class='rparen'>)</span>
|
2215
|
+
<span class='kw'>else</span>
|
2216
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_multipart'>multipart</span>
|
2217
|
+
<span class='id identifier rubyid_connection'>connection</span><span class='period'>.</span><span class='id identifier rubyid_post'>post</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='id identifier rubyid_request_params'>request_params</span><span class='rparen'>)</span>
|
2218
|
+
<span class='kw'>else</span>
|
2219
|
+
<span class='id identifier rubyid_connection'>connection</span><span class='period'>.</span><span class='id identifier rubyid_post'>post</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='const'>URI</span><span class='period'>.</span><span class='id identifier rubyid_encode_www_form'>encode_www_form</span><span class='lparen'>(</span><span class='id identifier rubyid_request_params'>request_params</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
2220
|
+
<span class='kw'>end</span>
|
2221
|
+
<span class='kw'>end</span>
|
2222
|
+
|
2223
|
+
<span class='id identifier rubyid_handle_response'>handle_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
|
2224
|
+
<span class='kw'>end</span></pre>
|
2225
|
+
</td>
|
2226
|
+
</tr>
|
2227
|
+
</table>
|
2228
|
+
</div>
|
2229
|
+
|
2230
|
+
<div class="method_details ">
|
2231
|
+
<h3 class="signature " id="test_connection-instance_method">
|
2232
|
+
|
2233
|
+
#<strong>test_connection</strong> ⇒ <tt>Hash</tt>
|
2234
|
+
|
2235
|
+
|
2236
|
+
|
2237
|
+
|
2238
|
+
|
2239
|
+
</h3><div class="docstring">
|
2240
|
+
<div class="discussion">
|
2241
|
+
|
2242
|
+
<p>Test the API connection</p>
|
2243
|
+
|
2244
|
+
|
2245
|
+
</div>
|
2246
|
+
</div>
|
2247
|
+
<div class="tags">
|
2248
|
+
|
2249
|
+
<p class="tag_title">Returns:</p>
|
2250
|
+
<ul class="return">
|
2251
|
+
|
2252
|
+
<li>
|
2253
|
+
|
2254
|
+
|
2255
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
2256
|
+
|
2257
|
+
|
2258
|
+
|
2259
|
+
—
|
2260
|
+
<div class='inline'>
|
2261
|
+
<p>system status information</p>
|
2262
|
+
</div>
|
2263
|
+
|
2264
|
+
</li>
|
2265
|
+
|
2266
|
+
</ul>
|
2267
|
+
|
2268
|
+
</div><table class="source_code">
|
2269
|
+
<tr>
|
2270
|
+
<td>
|
2271
|
+
<pre class="lines">
|
2272
|
+
|
2273
|
+
|
2274
|
+
119
|
2275
|
+
120
|
2276
|
+
121</pre>
|
2277
|
+
</td>
|
2278
|
+
<td>
|
2279
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 119</span>
|
2280
|
+
|
2281
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_test_connection'>test_connection</span>
|
2282
|
+
<span class='id identifier rubyid_get'>get</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>get_system_status</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
2283
|
+
<span class='kw'>end</span></pre>
|
2284
|
+
</td>
|
2285
|
+
</tr>
|
2286
|
+
</table>
|
2287
|
+
</div>
|
2288
|
+
|
2289
|
+
<div class="method_details ">
|
2290
|
+
<h3 class="signature " id="upload_file-instance_method">
|
2291
|
+
|
2292
|
+
#<strong>upload_file</strong>(file, params = {}) ⇒ <tt>Hash</tt>
|
2293
|
+
|
2294
|
+
|
2295
|
+
|
2296
|
+
|
2297
|
+
|
2298
|
+
</h3><div class="docstring">
|
2299
|
+
<div class="discussion">
|
2300
|
+
|
2301
|
+
<p>Upload a file to ResourceSpace</p>
|
2302
|
+
|
2303
|
+
|
2304
|
+
</div>
|
2305
|
+
</div>
|
2306
|
+
<div class="tags">
|
2307
|
+
<p class="tag_title">Parameters:</p>
|
2308
|
+
<ul class="param">
|
2309
|
+
|
2310
|
+
<li>
|
2311
|
+
|
2312
|
+
<span class='name'>file</span>
|
2313
|
+
|
2314
|
+
|
2315
|
+
<span class='type'>(<tt>File</tt>, <tt>String</tt>)</span>
|
2316
|
+
|
2317
|
+
|
2318
|
+
|
2319
|
+
—
|
2320
|
+
<div class='inline'>
|
2321
|
+
<p>file object or file path</p>
|
2322
|
+
</div>
|
2323
|
+
|
2324
|
+
</li>
|
2325
|
+
|
2326
|
+
<li>
|
2327
|
+
|
2328
|
+
<span class='name'>params</span>
|
2329
|
+
|
2330
|
+
|
2331
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
2332
|
+
|
2333
|
+
|
2334
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
2335
|
+
|
2336
|
+
|
2337
|
+
—
|
2338
|
+
<div class='inline'>
|
2339
|
+
<p>additional parameters</p>
|
2340
|
+
</div>
|
2341
|
+
|
2342
|
+
</li>
|
2343
|
+
|
2344
|
+
</ul>
|
2345
|
+
|
2346
|
+
<p class="tag_title">Returns:</p>
|
2347
|
+
<ul class="return">
|
2348
|
+
|
2349
|
+
<li>
|
2350
|
+
|
2351
|
+
|
2352
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
2353
|
+
|
2354
|
+
|
2355
|
+
|
2356
|
+
—
|
2357
|
+
<div class='inline'>
|
2358
|
+
<p>parsed JSON response</p>
|
2359
|
+
</div>
|
2360
|
+
|
2361
|
+
</li>
|
2362
|
+
|
2363
|
+
</ul>
|
2364
|
+
|
2365
|
+
</div><table class="source_code">
|
2366
|
+
<tr>
|
2367
|
+
<td>
|
2368
|
+
<pre class="lines">
|
2369
|
+
|
2370
|
+
|
2371
|
+
89
|
2372
|
+
90
|
2373
|
+
91
|
2374
|
+
92
|
2375
|
+
93
|
2376
|
+
94
|
2377
|
+
95
|
2378
|
+
96
|
2379
|
+
97
|
2380
|
+
98</pre>
|
2381
|
+
</td>
|
2382
|
+
<td>
|
2383
|
+
<pre class="code"><span class="info file"># File 'lib/resourcespace/client.rb', line 89</span>
|
2384
|
+
|
2385
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_upload_file'>upload_file</span><span class='lparen'>(</span><span class='id identifier rubyid_file'>file</span><span class='comma'>,</span> <span class='id identifier rubyid_params'>params</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
2386
|
+
<span class='id identifier rubyid_file_param'>file_param</span> <span class='op'>=</span> <span class='kw'>if</span> <span class='id identifier rubyid_file'>file</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>String</span><span class='rparen'>)</span>
|
2387
|
+
<span class='const'>Faraday</span><span class='op'>::</span><span class='const'>UploadIO</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_file'>file</span><span class='comma'>,</span> <span class='id identifier rubyid_mime_type_for_file'>mime_type_for_file</span><span class='lparen'>(</span><span class='id identifier rubyid_file'>file</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
2388
|
+
<span class='kw'>else</span>
|
2389
|
+
<span class='const'>Faraday</span><span class='op'>::</span><span class='const'>UploadIO</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_file'>file</span><span class='comma'>,</span> <span class='id identifier rubyid_mime_type_for_file'>mime_type_for_file</span><span class='lparen'>(</span><span class='id identifier rubyid_file'>file</span><span class='period'>.</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
2390
|
+
<span class='kw'>end</span>
|
2391
|
+
|
2392
|
+
<span class='id identifier rubyid_params'>params</span> <span class='op'>=</span> <span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='label'>filedata:</span> <span class='id identifier rubyid_file_param'>file_param</span><span class='rparen'>)</span>
|
2393
|
+
<span class='id identifier rubyid_request'>request</span><span class='lparen'>(</span><span class='symbol'>:post</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>upload_file</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='id identifier rubyid_params'>params</span><span class='comma'>,</span> <span class='label'>multipart:</span> <span class='kw'>true</span><span class='rparen'>)</span>
|
2394
|
+
<span class='kw'>end</span></pre>
|
2395
|
+
</td>
|
2396
|
+
</tr>
|
2397
|
+
</table>
|
2398
|
+
</div>
|
2399
|
+
|
2400
|
+
</div>
|
2401
|
+
|
2402
|
+
</div>
|
2403
|
+
|
2404
|
+
<div id="footer">
|
2405
|
+
Generated on Sat May 24 15:41:23 2025 by
|
2406
|
+
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
2407
|
+
0.9.37 (ruby-3.4.4).
|
2408
|
+
</div>
|
2409
|
+
|
2410
|
+
</div>
|
2411
|
+
</body>
|
2412
|
+
</html>
|