crapi 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1401 @@
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: Crapi::Client
8
+
9
+ &mdash; Documentation by YARD 0.9.12
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ pathId = "Crapi::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> &raquo;
40
+ <span class='title'><span class='object_link'><a href="../Crapi.html" title="Crapi (module)">Crapi</a></span></span>
41
+ &raquo;
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: Crapi::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">Crapi::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/crapi/client.rb</dd>
98
+ </dl>
99
+
100
+ </div>
101
+
102
+ <h2>Overview</h2><div class="docstring">
103
+ <div class="discussion">
104
+
105
+ <p>Provides a connection mechanism, simple CRUD methods (<span class='object_link'><a href="#delete-instance_method" title="Crapi::Client#delete (method)">#delete</a></span> / <span class='object_link'><a href="#get-instance_method" title="Crapi::Client#get (method)">#get</a></span> /
106
+ <span class='object_link'><a href="#patch-instance_method" title="Crapi::Client#patch (method)">#patch</a></span> / <span class='object_link'><a href="#post-instance_method" title="Crapi::Client#post (method)">#post</a></span> / <span class='object_link'><a href="#put-instance_method" title="Crapi::Client#put (method)">#put</a></span>), and proxy generators.</p>
107
+
108
+
109
+ </div>
110
+ </div>
111
+ <div class="tags">
112
+
113
+
114
+ </div>
115
+ <h2>Constant Summary</h2>
116
+ <dl class="constants">
117
+
118
+ <dt id="JSON_CONTENT_TYPE-constant" class="">JSON_CONTENT_TYPE =
119
+ <div class="docstring">
120
+ <div class="discussion">
121
+
122
+ <p>The content-type for JSON data.</p>
123
+
124
+
125
+ </div>
126
+ </div>
127
+ <div class="tags">
128
+
129
+
130
+ </div>
131
+ </dt>
132
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>application/json</span><span class='tstring_end'>&#39;</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span></pre></dd>
133
+
134
+ <dt id="FORM_CONTENT_TYPE-constant" class="">FORM_CONTENT_TYPE =
135
+ <div class="docstring">
136
+ <div class="discussion">
137
+
138
+ <p>The content-type for FORM data.</p>
139
+
140
+
141
+ </div>
142
+ </div>
143
+ <div class="tags">
144
+
145
+
146
+ </div>
147
+ </dt>
148
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>application/x-www-form-urlencoded</span><span class='tstring_end'>&#39;</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span></pre></dd>
149
+
150
+ </dl>
151
+
152
+
153
+
154
+
155
+ <h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
156
+ <ul class="summary">
157
+
158
+ <li class="public ">
159
+ <span class="summary_signature">
160
+
161
+ <a href="#default_headers-instance_method" title="#default_headers (instance method)">#<strong>default_headers</strong> &#x21d2; Object </a>
162
+
163
+
164
+
165
+ </span>
166
+
167
+
168
+
169
+
170
+
171
+
172
+
173
+
174
+
175
+
176
+
177
+
178
+ <span class="summary_desc"><div class='inline'>
179
+ <p>A Hash containing headers to send with every request (unless overriden
180
+ elsewhere).</p>
181
+ </div></span>
182
+
183
+ </li>
184
+
185
+
186
+ </ul>
187
+
188
+
189
+
190
+
191
+
192
+ <h2>
193
+ Instance Method Summary
194
+ <small><a href="#" class="summary_toggle">collapse</a></small>
195
+ </h2>
196
+
197
+ <ul class="summary">
198
+
199
+ <li class="public ">
200
+ <span class="summary_signature">
201
+
202
+ <a href="#delete-instance_method" title="#delete (instance method)">#<strong>delete</strong>(path, headers: {}, query: {}) &#x21d2; Object </a>
203
+
204
+
205
+
206
+ </span>
207
+
208
+
209
+
210
+
211
+
212
+
213
+
214
+
215
+
216
+ <span class="summary_desc"><div class='inline'>
217
+ <p>CRUD method: DELETE.</p>
218
+ </div></span>
219
+
220
+ </li>
221
+
222
+
223
+ <li class="public ">
224
+ <span class="summary_signature">
225
+
226
+ <a href="#get-instance_method" title="#get (instance method)">#<strong>get</strong>(path, headers: {}, query: {}) &#x21d2; Object </a>
227
+
228
+
229
+
230
+ </span>
231
+
232
+
233
+
234
+
235
+
236
+
237
+
238
+
239
+
240
+ <span class="summary_desc"><div class='inline'>
241
+ <p>CRUD method: GET.</p>
242
+ </div></span>
243
+
244
+ </li>
245
+
246
+
247
+ <li class="public ">
248
+ <span class="summary_signature">
249
+
250
+ <a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(base_uri, opts = {}) &#x21d2; Client </a>
251
+
252
+
253
+
254
+ </span>
255
+
256
+
257
+ <span class="note title constructor">constructor</span>
258
+
259
+
260
+
261
+
262
+
263
+
264
+
265
+
266
+ <span class="summary_desc"><div class='inline'>
267
+ <p>A new instance of Client.</p>
268
+ </div></span>
269
+
270
+ </li>
271
+
272
+
273
+ <li class="public ">
274
+ <span class="summary_signature">
275
+
276
+ <a href="#new_proxy-instance_method" title="#new_proxy (instance method)">#<strong>new_proxy</strong>(segment = &#39;/&#39;, headers: nil) &#x21d2; Crapi::Proxy </a>
277
+
278
+
279
+
280
+ </span>
281
+
282
+
283
+
284
+
285
+
286
+
287
+
288
+
289
+
290
+ <span class="summary_desc"><div class='inline'>
291
+ <p>Returns a new <span class='object_link'><a href="Proxy.html" title="Crapi::Proxy (class)">Crapi::Proxy</a></span> for this client.</p>
292
+ </div></span>
293
+
294
+ </li>
295
+
296
+
297
+ <li class="public ">
298
+ <span class="summary_signature">
299
+
300
+ <a href="#patch-instance_method" title="#patch (instance method)">#<strong>patch</strong>(path, headers: {}, query: {}, payload: {}) &#x21d2; Object </a>
301
+
302
+
303
+
304
+ </span>
305
+
306
+
307
+
308
+
309
+
310
+
311
+
312
+
313
+
314
+ <span class="summary_desc"><div class='inline'>
315
+ <p>CRUD method: PATCH.</p>
316
+ </div></span>
317
+
318
+ </li>
319
+
320
+
321
+ <li class="public ">
322
+ <span class="summary_signature">
323
+
324
+ <a href="#post-instance_method" title="#post (instance method)">#<strong>post</strong>(path, headers: {}, query: {}, payload: {}) &#x21d2; Object </a>
325
+
326
+
327
+
328
+ </span>
329
+
330
+
331
+
332
+
333
+
334
+
335
+
336
+
337
+
338
+ <span class="summary_desc"><div class='inline'>
339
+ <p>CRUD method: POST.</p>
340
+ </div></span>
341
+
342
+ </li>
343
+
344
+
345
+ <li class="public ">
346
+ <span class="summary_signature">
347
+
348
+ <a href="#put-instance_method" title="#put (instance method)">#<strong>put</strong>(path, headers: {}, query: {}, payload: {}) &#x21d2; Object </a>
349
+
350
+
351
+
352
+ </span>
353
+
354
+
355
+
356
+
357
+
358
+
359
+
360
+
361
+
362
+ <span class="summary_desc"><div class='inline'>
363
+ <p>CRUD method: PUT.</p>
364
+ </div></span>
365
+
366
+ </li>
367
+
368
+
369
+ </ul>
370
+
371
+
372
+ <div id="constructor_details" class="method_details_list">
373
+ <h2>Constructor Details</h2>
374
+
375
+ <div class="method_details first">
376
+ <h3 class="signature first" id="initialize-instance_method">
377
+
378
+ #<strong>initialize</strong>(base_uri, opts = {}) &#x21d2; <tt><span class='object_link'><a href="" title="Crapi::Client (class)">Client</a></span></tt>
379
+
380
+
381
+
382
+
383
+
384
+ </h3><div class="docstring">
385
+ <div class="discussion">
386
+
387
+ <p>Returns a new instance of Client</p>
388
+
389
+
390
+ </div>
391
+ </div>
392
+ <div class="tags">
393
+ <p class="tag_title">Parameters:</p>
394
+ <ul class="param">
395
+
396
+ <li>
397
+
398
+ <span class='name'>base_uri</span>
399
+
400
+
401
+ <span class='type'>(<tt>URI</tt>, <tt>String</tt>)</span>
402
+
403
+
404
+
405
+ &mdash;
406
+ <div class='inline'>
407
+ <p>The base URI the client should use for determining the host to connect to,
408
+ determining whether SSH is applicable, and setting the base path for
409
+ subsequent CRUD calls.</p>
410
+ </div>
411
+
412
+ </li>
413
+
414
+ <li>
415
+
416
+ <span class='name'>opts</span>
417
+
418
+
419
+ <span class='type'>(<tt>Hash</tt>)</span>
420
+
421
+
422
+ <em class="default">(defaults to: <tt>{}</tt>)</em>
423
+
424
+
425
+ &mdash;
426
+ <div class='inline'>
427
+ <p>Method options. All method options are <strong>optional</strong> in this
428
+ particular case.</p>
429
+ </div>
430
+
431
+ </li>
432
+
433
+ </ul>
434
+
435
+
436
+
437
+
438
+
439
+
440
+ <p class="tag_title">Options Hash (<tt>opts</tt>):</p>
441
+ <ul class="option">
442
+
443
+ <li>
444
+ <span class="name">:insecure</span>
445
+ <span class="type">(<tt>true</tt>, <tt>false</tt>)</span>
446
+ <span class="default">
447
+
448
+ </span>
449
+
450
+ &mdash; <div class='inline'>
451
+ <p>Whether to allow insecure SSH connections (i.e. don&#39;t attempt to verify
452
+ the validity of the given certificate).</p>
453
+ </div>
454
+
455
+ </li>
456
+
457
+ <li>
458
+ <span class="name">:proxy_host</span>
459
+ <span class="type">(<tt>String</tt>)</span>
460
+ <span class="default">
461
+
462
+ </span>
463
+
464
+ &mdash; <div class='inline'>
465
+ <p>The DNS name or IP address of a proxy server to use when connecting to the
466
+ target system. Maps to <code>Net::HTTP#new</code>&#39;s <em>p_addr</em>.</p>
467
+ </div>
468
+
469
+ </li>
470
+
471
+ <li>
472
+ <span class="name">:proxy_port</span>
473
+ <span class="type">(<tt>Number</tt>)</span>
474
+ <span class="default">
475
+
476
+ </span>
477
+
478
+ &mdash; <div class='inline'>
479
+ <p>The proxy server port to use when connecting to the target system. Maps to
480
+ <code>Net::HTTP#new</code>&#39;s <em>p_port</em>.</p>
481
+ </div>
482
+
483
+ </li>
484
+
485
+ <li>
486
+ <span class="name">:proxy_username</span>
487
+ <span class="type">(<tt>String</tt>)</span>
488
+ <span class="default">
489
+
490
+ </span>
491
+
492
+ &mdash; <div class='inline'>
493
+ <p>The username to give if authorization is required to access the specified
494
+ proxy host. Maps to <code>Net::HTTP#new</code>&#39;s <em>p_user</em>.</p>
495
+ </div>
496
+
497
+ </li>
498
+
499
+ <li>
500
+ <span class="name">:proxy_password</span>
501
+ <span class="type">(<tt>Number</tt>)</span>
502
+ <span class="default">
503
+
504
+ </span>
505
+
506
+ &mdash; <div class='inline'>
507
+ <p>The password to give if authorization is required to access the specified
508
+ proxy host. Maps to <code>Net::HTTP#new</code>&#39;s <em>p_pass</em>.</p>
509
+ </div>
510
+
511
+ </li>
512
+
513
+ </ul>
514
+
515
+
516
+ <p class="tag_title">Raises:</p>
517
+ <ul class="raise">
518
+
519
+ <li>
520
+
521
+
522
+ <span class='type'>(<tt><span class='object_link'><a href="ArgumentError.html" title="Crapi::ArgumentError (class)">Crapi::ArgumentError</a></span></tt>)</span>
523
+
524
+
525
+
526
+ </li>
527
+
528
+ </ul>
529
+
530
+ </div><table class="source_code">
531
+ <tr>
532
+ <td>
533
+ <pre class="lines">
534
+
535
+
536
+ 57
537
+ 58
538
+ 59
539
+ 60
540
+ 61
541
+ 62
542
+ 63
543
+ 64
544
+ 65
545
+ 66
546
+ 67
547
+ 68
548
+ 69
549
+ 70
550
+ 71
551
+ 72
552
+ 73
553
+ 74
554
+ 75</pre>
555
+ </td>
556
+ <td>
557
+ <pre class="code"><span class="info file"># File 'lib/crapi/client.rb', line 57</span>
558
+
559
+ <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_base_uri'>base_uri</span><span class='comma'>,</span> <span class='id identifier rubyid_opts'>opts</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
560
+ <span class='ivar'>@base_uri</span> <span class='op'>=</span> <span class='kw'>case</span> <span class='id identifier rubyid_base_uri'>base_uri</span>
561
+ <span class='kw'>when</span> <span class='const'>URI</span> <span class='kw'>then</span> <span class='id identifier rubyid_base_uri'>base_uri</span>
562
+ <span class='kw'>when</span> <span class='const'>String</span> <span class='kw'>then</span> <span class='const'>URI</span><span class='lparen'>(</span><span class='id identifier rubyid_base_uri'>base_uri</span><span class='rparen'>)</span>
563
+ <span class='kw'>else</span> <span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="../Crapi.html" title="Crapi (module)">Crapi</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="ArgumentError.html" title="Crapi::ArgumentError (class)">ArgumentError</a></span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>%(</span><span class='tstring_content'>Unexpected &quot;base_uri&quot; type: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_base_uri'>base_uri</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='embexpr_end'>}</span><span class='tstring_end'>)</span></span>
564
+ <span class='kw'>end</span>
565
+
566
+ <span class='ivar'>@proxy_host</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:proxy_host</span><span class='rbracket'>]</span>
567
+ <span class='ivar'>@proxy_port</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:proxy_port</span><span class='rbracket'>]</span>
568
+ <span class='ivar'>@proxy_username</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:proxy_username</span><span class='rbracket'>]</span>
569
+ <span class='ivar'>@proxy_password</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:proxy_password</span><span class='rbracket'>]</span>
570
+
571
+ <span class='ivar'>@http</span> <span class='op'>=</span> <span class='const'>Net</span><span class='op'>::</span><span class='const'>HTTP</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='ivar'>@base_uri</span><span class='period'>.</span><span class='id identifier rubyid_host'>host</span><span class='comma'>,</span> <span class='ivar'>@base_uri</span><span class='period'>.</span><span class='id identifier rubyid_port'>port</span><span class='comma'>,</span>
572
+ <span class='ivar'>@proxy_host</span><span class='comma'>,</span> <span class='ivar'>@proxy_port</span><span class='comma'>,</span> <span class='ivar'>@proxy_username</span><span class='comma'>,</span> <span class='ivar'>@proxy_password</span><span class='rparen'>)</span>
573
+ <span class='ivar'>@http</span><span class='period'>.</span><span class='id identifier rubyid_use_ssl'>use_ssl</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='ivar'>@base_uri</span><span class='period'>.</span><span class='id identifier rubyid_scheme'>scheme</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>https</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
574
+ <span class='ivar'>@http</span><span class='period'>.</span><span class='id identifier rubyid_verify_mode'>verify_mode</span> <span class='op'>=</span> <span class='op'>::</span><span class='const'>OpenSSL</span><span class='op'>::</span><span class='const'>SSL</span><span class='op'>::</span><span class='const'>VERIFY_NONE</span> <span class='kw'>if</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:insecure</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_present?'>present?</span>
575
+
576
+ <span class='ivar'>@default_headers</span> <span class='op'>=</span> <span class='lbrace'>{</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Content-Type</span><span class='label_end'>&#39;:</span> <span class='const'><span class='object_link'><a href="#JSON_CONTENT_TYPE-constant" title="Crapi::Client::JSON_CONTENT_TYPE (constant)">JSON_CONTENT_TYPE</a></span></span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_with_indifferent_access'>with_indifferent_access</span>
577
+ <span class='kw'>end</span></pre>
578
+ </td>
579
+ </tr>
580
+ </table>
581
+ </div>
582
+
583
+ </div>
584
+
585
+ <div id="instance_attr_details" class="attr_details">
586
+ <h2>Instance Attribute Details</h2>
587
+
588
+
589
+ <span id="default_headers=-instance_method"></span>
590
+ <div class="method_details first">
591
+ <h3 class="signature first" id="default_headers-instance_method">
592
+
593
+ #<strong>default_headers</strong> &#x21d2; <tt>Object</tt>
594
+
595
+
596
+
597
+
598
+
599
+ </h3><div class="docstring">
600
+ <div class="discussion">
601
+
602
+ <p>A Hash containing headers to send with every request (unless overriden
603
+ elsewhere). Headers set by the user via the CRUD methods&#39;
604
+ <em>headers</em> still override any conflicting default header.</p>
605
+
606
+
607
+ </div>
608
+ </div>
609
+ <div class="tags">
610
+
611
+
612
+ </div><table class="source_code">
613
+ <tr>
614
+ <td>
615
+ <pre class="lines">
616
+
617
+
618
+ 17
619
+ 18
620
+ 19</pre>
621
+ </td>
622
+ <td>
623
+ <pre class="code"><span class="info file"># File 'lib/crapi/client.rb', line 17</span>
624
+
625
+ <span class='kw'>def</span> <span class='id identifier rubyid_default_headers'>default_headers</span>
626
+ <span class='ivar'>@default_headers</span>
627
+ <span class='kw'>end</span></pre>
628
+ </td>
629
+ </tr>
630
+ </table>
631
+ </div>
632
+
633
+ </div>
634
+
635
+
636
+ <div id="instance_method_details" class="method_details_list">
637
+ <h2>Instance Method Details</h2>
638
+
639
+
640
+ <div class="method_details first">
641
+ <h3 class="signature first" id="delete-instance_method">
642
+
643
+ #<strong>delete</strong>(path, headers: {}, query: {}) &#x21d2; <tt>Object</tt>
644
+
645
+
646
+
647
+
648
+
649
+ </h3><div class="docstring">
650
+ <div class="discussion">
651
+
652
+ <p>CRUD method: DELETE</p>
653
+
654
+
655
+ </div>
656
+ </div>
657
+ <div class="tags">
658
+ <p class="tag_title">Parameters:</p>
659
+ <ul class="param">
660
+
661
+ <li>
662
+
663
+ <span class='name'>path</span>
664
+
665
+
666
+ <span class='type'>(<tt>String</tt>)</span>
667
+
668
+
669
+
670
+ &mdash;
671
+ <div class='inline'>
672
+ <p>The path to the resource to DELETE. Note that this path is always
673
+ interpreted as relative to the client&#39;s base_uri&#39;s path, regardless
674
+ of whether it begins with a “/”.</p>
675
+ </div>
676
+
677
+ </li>
678
+
679
+ <li>
680
+
681
+ <span class='name'>headers</span>
682
+
683
+
684
+ <span class='type'>(<tt>Hash</tt>)</span>
685
+
686
+
687
+
688
+ &mdash;
689
+ <div class='inline'>
690
+ <p>Additional headers to set in addition to the client&#39;s defaults. Any
691
+ header given here and also appearing in the client&#39;s defaults will
692
+ override said default value.</p>
693
+ </div>
694
+
695
+ </li>
696
+
697
+ <li>
698
+
699
+ <span class='name'>query</span>
700
+
701
+
702
+ <span class='type'>(<tt>Hash</tt>, <tt>Array</tt>, <tt>String</tt>)</span>
703
+
704
+
705
+
706
+ &mdash;
707
+ <div class='inline'>
708
+ <p>Query string values, if any, to append to the given path. Strings are
709
+ appended as-is; Hashes and Arrays are serialized as URI-encoded form data
710
+ before appending.</p>
711
+ </div>
712
+
713
+ </li>
714
+
715
+ </ul>
716
+
717
+ <p class="tag_title">Returns:</p>
718
+ <ul class="return">
719
+
720
+ <li>
721
+
722
+
723
+ <span class='type'>(<tt>Object</tt>)</span>
724
+
725
+
726
+
727
+ </li>
728
+
729
+ </ul>
730
+
731
+ </div><table class="source_code">
732
+ <tr>
733
+ <td>
734
+ <pre class="lines">
735
+
736
+
737
+ 112
738
+ 113
739
+ 114
740
+ 115
741
+ 116
742
+ 117
743
+ 118</pre>
744
+ </td>
745
+ <td>
746
+ <pre class="code"><span class="info file"># File 'lib/crapi/client.rb', line 112</span>
747
+
748
+ <span class='kw'>def</span> <span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>headers:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>query:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
749
+ <span class='id identifier rubyid_headers'>headers</span> <span class='op'>=</span> <span class='ivar'>@default_headers</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
750
+
751
+ <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='ivar'>@http</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='id identifier rubyid_full_path'>full_path</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>query:</span> <span class='id identifier rubyid_query'>query</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
752
+ <span class='id identifier rubyid_ensure_success!'>ensure_success!</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
753
+ <span class='id identifier rubyid_parse_response'>parse_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
754
+ <span class='kw'>end</span></pre>
755
+ </td>
756
+ </tr>
757
+ </table>
758
+ </div>
759
+
760
+ <div class="method_details ">
761
+ <h3 class="signature " id="get-instance_method">
762
+
763
+ #<strong>get</strong>(path, headers: {}, query: {}) &#x21d2; <tt>Object</tt>
764
+
765
+
766
+
767
+
768
+
769
+ </h3><div class="docstring">
770
+ <div class="discussion">
771
+
772
+ <p>CRUD method: GET</p>
773
+
774
+
775
+ </div>
776
+ </div>
777
+ <div class="tags">
778
+ <p class="tag_title">Parameters:</p>
779
+ <ul class="param">
780
+
781
+ <li>
782
+
783
+ <span class='name'>path</span>
784
+
785
+
786
+ <span class='type'>(<tt>String</tt>)</span>
787
+
788
+
789
+
790
+ &mdash;
791
+ <div class='inline'>
792
+ <p>The path to the resource to GET. Note that this path is always interpreted
793
+ as relative to the client&#39;s base_uri&#39;s path, regardless of whether
794
+ it begins with a “/”.</p>
795
+ </div>
796
+
797
+ </li>
798
+
799
+ <li>
800
+
801
+ <span class='name'>headers</span>
802
+
803
+
804
+ <span class='type'>(<tt>Hash</tt>)</span>
805
+
806
+
807
+
808
+ &mdash;
809
+ <div class='inline'>
810
+ <p>Additional headers to set in addition to the client&#39;s defaults. Any
811
+ header given here and also appearing in the client&#39;s defaults will
812
+ override said default value.</p>
813
+ </div>
814
+
815
+ </li>
816
+
817
+ <li>
818
+
819
+ <span class='name'>query</span>
820
+
821
+
822
+ <span class='type'>(<tt>Hash</tt>, <tt>Array</tt>, <tt>String</tt>)</span>
823
+
824
+
825
+
826
+ &mdash;
827
+ <div class='inline'>
828
+ <p>Query string values, if any, to append to the given path. Strings are
829
+ appended as-is; Hashes and Arrays are serialized as URI-encoded form data
830
+ before appending.</p>
831
+ </div>
832
+
833
+ </li>
834
+
835
+ </ul>
836
+
837
+ <p class="tag_title">Returns:</p>
838
+ <ul class="return">
839
+
840
+ <li>
841
+
842
+
843
+ <span class='type'>(<tt>Object</tt>)</span>
844
+
845
+
846
+
847
+ </li>
848
+
849
+ </ul>
850
+
851
+ </div><table class="source_code">
852
+ <tr>
853
+ <td>
854
+ <pre class="lines">
855
+
856
+
857
+ 137
858
+ 138
859
+ 139
860
+ 140
861
+ 141
862
+ 142
863
+ 143</pre>
864
+ </td>
865
+ <td>
866
+ <pre class="code"><span class="info file"># File 'lib/crapi/client.rb', line 137</span>
867
+
868
+ <span class='kw'>def</span> <span class='id identifier rubyid_get'>get</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>headers:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>query:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
869
+ <span class='id identifier rubyid_headers'>headers</span> <span class='op'>=</span> <span class='ivar'>@default_headers</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
870
+
871
+ <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='ivar'>@http</span><span class='period'>.</span><span class='id identifier rubyid_get'>get</span><span class='lparen'>(</span><span class='id identifier rubyid_full_path'>full_path</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>query:</span> <span class='id identifier rubyid_query'>query</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
872
+ <span class='id identifier rubyid_ensure_success!'>ensure_success!</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
873
+ <span class='id identifier rubyid_parse_response'>parse_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
874
+ <span class='kw'>end</span></pre>
875
+ </td>
876
+ </tr>
877
+ </table>
878
+ </div>
879
+
880
+ <div class="method_details ">
881
+ <h3 class="signature " id="new_proxy-instance_method">
882
+
883
+ #<strong>new_proxy</strong>(segment = &#39;/&#39;, headers: nil) &#x21d2; <tt><span class='object_link'><a href="Proxy.html" title="Crapi::Proxy (class)">Crapi::Proxy</a></span></tt>
884
+
885
+
886
+
887
+
888
+
889
+ </h3><div class="docstring">
890
+ <div class="discussion">
891
+
892
+ <p>Returns a new <span class='object_link'><a href="Proxy.html" title="Crapi::Proxy (class)">Crapi::Proxy</a></span> for this client.</p>
893
+
894
+
895
+ </div>
896
+ </div>
897
+ <div class="tags">
898
+ <p class="tag_title">Parameters:</p>
899
+ <ul class="param">
900
+
901
+ <li>
902
+
903
+ <span class='name'>segment</span>
904
+
905
+
906
+ <span class='type'>(<tt>String</tt>)</span>
907
+
908
+
909
+ <em class="default">(defaults to: <tt>&#39;/&#39;</tt>)</em>
910
+
911
+
912
+ &mdash;
913
+ <div class='inline'>
914
+ <p>The segment to add to this client&#39;s path.</p>
915
+ </div>
916
+
917
+ </li>
918
+
919
+ <li>
920
+
921
+ <span class='name'>headers</span>
922
+
923
+
924
+ <span class='type'>(<tt>Hash</tt>)</span>
925
+
926
+
927
+
928
+ &mdash;
929
+ <div class='inline'>
930
+ <p>The default headers for the new proxy.</p>
931
+ </div>
932
+
933
+ </li>
934
+
935
+ </ul>
936
+
937
+ <p class="tag_title">Returns:</p>
938
+ <ul class="return">
939
+
940
+ <li>
941
+
942
+
943
+ <span class='type'>(<tt><span class='object_link'><a href="Proxy.html" title="Crapi::Proxy (class)">Crapi::Proxy</a></span></tt>)</span>
944
+
945
+
946
+
947
+ </li>
948
+
949
+ </ul>
950
+
951
+ </div><table class="source_code">
952
+ <tr>
953
+ <td>
954
+ <pre class="lines">
955
+
956
+
957
+ 89
958
+ 90
959
+ 91</pre>
960
+ </td>
961
+ <td>
962
+ <pre class="code"><span class="info file"># File 'lib/crapi/client.rb', line 89</span>
963
+
964
+ <span class='kw'>def</span> <span class='id identifier rubyid_new_proxy'>new_proxy</span><span class='lparen'>(</span><span class='id identifier rubyid_segment'>segment</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>/</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='label'>headers:</span> <span class='kw'>nil</span><span class='rparen'>)</span>
965
+ <span class='const'><span class='object_link'><a href="Proxy.html" title="Crapi::Proxy (class)">Proxy</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Proxy.html#initialize-instance_method" title="Crapi::Proxy#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='label'>add:</span> <span class='id identifier rubyid_segment'>segment</span><span class='comma'>,</span> <span class='label'>to:</span> <span class='kw'>self</span><span class='comma'>,</span> <span class='label'>headers:</span> <span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
966
+ <span class='kw'>end</span></pre>
967
+ </td>
968
+ </tr>
969
+ </table>
970
+ </div>
971
+
972
+ <div class="method_details ">
973
+ <h3 class="signature " id="patch-instance_method">
974
+
975
+ #<strong>patch</strong>(path, headers: {}, query: {}, payload: {}) &#x21d2; <tt>Object</tt>
976
+
977
+
978
+
979
+
980
+
981
+ </h3><div class="docstring">
982
+ <div class="discussion">
983
+
984
+ <p>CRUD method: PATCH</p>
985
+
986
+
987
+ </div>
988
+ </div>
989
+ <div class="tags">
990
+ <p class="tag_title">Parameters:</p>
991
+ <ul class="param">
992
+
993
+ <li>
994
+
995
+ <span class='name'>path</span>
996
+
997
+
998
+ <span class='type'>(<tt>String</tt>)</span>
999
+
1000
+
1001
+
1002
+ &mdash;
1003
+ <div class='inline'>
1004
+ <p>The path to the resource to PATCH. Note that this path is always
1005
+ interpreted as relative to the client&#39;s base_uri&#39;s path, regardless
1006
+ of whether it begins with a “/”.</p>
1007
+ </div>
1008
+
1009
+ </li>
1010
+
1011
+ <li>
1012
+
1013
+ <span class='name'>headers</span>
1014
+
1015
+
1016
+ <span class='type'>(<tt>Hash</tt>)</span>
1017
+
1018
+
1019
+
1020
+ &mdash;
1021
+ <div class='inline'>
1022
+ <p>Additional headers to set in addition to the client&#39;s defaults. Any
1023
+ header given here and also appearing in the client&#39;s defaults will
1024
+ override said default value.</p>
1025
+ </div>
1026
+
1027
+ </li>
1028
+
1029
+ <li>
1030
+
1031
+ <span class='name'>query</span>
1032
+
1033
+
1034
+ <span class='type'>(<tt>Hash</tt>, <tt>Array</tt>, <tt>String</tt>)</span>
1035
+
1036
+
1037
+
1038
+ &mdash;
1039
+ <div class='inline'>
1040
+ <p>Query string values, if any, to append to the given path. Strings are
1041
+ appended as-is; Hashes and Arrays are serialized as URI-encoded form data
1042
+ before appending.</p>
1043
+ </div>
1044
+
1045
+ </li>
1046
+
1047
+ <li>
1048
+
1049
+ <span class='name'>payload</span>
1050
+
1051
+
1052
+ <span class='type'>(<tt>Hash</tt>, <tt>String</tt>)</span>
1053
+
1054
+
1055
+
1056
+ &mdash;
1057
+ <div class='inline'>
1058
+ <p>The payload to send, if any. Strings are used as-is; Hashes are serialized
1059
+ per the request&#39;s “Content-Type” header.</p>
1060
+ </div>
1061
+
1062
+ </li>
1063
+
1064
+ </ul>
1065
+
1066
+ <p class="tag_title">Returns:</p>
1067
+ <ul class="return">
1068
+
1069
+ <li>
1070
+
1071
+
1072
+ <span class='type'>(<tt>Object</tt>)</span>
1073
+
1074
+
1075
+
1076
+ </li>
1077
+
1078
+ </ul>
1079
+
1080
+ </div><table class="source_code">
1081
+ <tr>
1082
+ <td>
1083
+ <pre class="lines">
1084
+
1085
+
1086
+ 166
1087
+ 167
1088
+ 168
1089
+ 169
1090
+ 170
1091
+ 171
1092
+ 172
1093
+ 173</pre>
1094
+ </td>
1095
+ <td>
1096
+ <pre class="code"><span class="info file"># File 'lib/crapi/client.rb', line 166</span>
1097
+
1098
+ <span class='kw'>def</span> <span class='id identifier rubyid_patch'>patch</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>headers:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>query:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>payload:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
1099
+ <span class='id identifier rubyid_headers'>headers</span> <span class='op'>=</span> <span class='ivar'>@default_headers</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
1100
+ <span class='id identifier rubyid_payload'>payload</span> <span class='op'>=</span> <span class='id identifier rubyid_format_payload'>format_payload</span><span class='lparen'>(</span><span class='id identifier rubyid_payload'>payload</span><span class='comma'>,</span> <span class='label'>as:</span> <span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='symbol'>:Content-Type</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
1101
+
1102
+ <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='ivar'>@http</span><span class='period'>.</span><span class='id identifier rubyid_patch'>patch</span><span class='lparen'>(</span><span class='id identifier rubyid_full_path'>full_path</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>query:</span> <span class='id identifier rubyid_query'>query</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_payload'>payload</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
1103
+ <span class='id identifier rubyid_ensure_success!'>ensure_success!</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
1104
+ <span class='id identifier rubyid_parse_response'>parse_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
1105
+ <span class='kw'>end</span></pre>
1106
+ </td>
1107
+ </tr>
1108
+ </table>
1109
+ </div>
1110
+
1111
+ <div class="method_details ">
1112
+ <h3 class="signature " id="post-instance_method">
1113
+
1114
+ #<strong>post</strong>(path, headers: {}, query: {}, payload: {}) &#x21d2; <tt>Object</tt>
1115
+
1116
+
1117
+
1118
+
1119
+
1120
+ </h3><div class="docstring">
1121
+ <div class="discussion">
1122
+
1123
+ <p>CRUD method: POST</p>
1124
+
1125
+
1126
+ </div>
1127
+ </div>
1128
+ <div class="tags">
1129
+ <p class="tag_title">Parameters:</p>
1130
+ <ul class="param">
1131
+
1132
+ <li>
1133
+
1134
+ <span class='name'>path</span>
1135
+
1136
+
1137
+ <span class='type'>(<tt>String</tt>)</span>
1138
+
1139
+
1140
+
1141
+ &mdash;
1142
+ <div class='inline'>
1143
+ <p>The path to the resource to POST. Note that this path is always interpreted
1144
+ as relative to the client&#39;s base_uri&#39;s path, regardless of whether
1145
+ it begins with a “/”.</p>
1146
+ </div>
1147
+
1148
+ </li>
1149
+
1150
+ <li>
1151
+
1152
+ <span class='name'>headers</span>
1153
+
1154
+
1155
+ <span class='type'>(<tt>Hash</tt>)</span>
1156
+
1157
+
1158
+
1159
+ &mdash;
1160
+ <div class='inline'>
1161
+ <p>Additional headers to set in addition to the client&#39;s defaults. Any
1162
+ header given here and also appearing in the client&#39;s defaults will
1163
+ override said default value.</p>
1164
+ </div>
1165
+
1166
+ </li>
1167
+
1168
+ <li>
1169
+
1170
+ <span class='name'>query</span>
1171
+
1172
+
1173
+ <span class='type'>(<tt>Hash</tt>, <tt>Array</tt>, <tt>String</tt>)</span>
1174
+
1175
+
1176
+
1177
+ &mdash;
1178
+ <div class='inline'>
1179
+ <p>Query string values, if any, to append to the given path. Strings are
1180
+ appended as-is; Hashes and Arrays are serialized as URI-encoded form data
1181
+ before appending.</p>
1182
+ </div>
1183
+
1184
+ </li>
1185
+
1186
+ <li>
1187
+
1188
+ <span class='name'>payload</span>
1189
+
1190
+
1191
+ <span class='type'>(<tt>Hash</tt>, <tt>String</tt>)</span>
1192
+
1193
+
1194
+
1195
+ &mdash;
1196
+ <div class='inline'>
1197
+ <p>The payload to send, if any. Strings are used as-is; Hashes are serialized
1198
+ per the request&#39;s “Content-Type” header.</p>
1199
+ </div>
1200
+
1201
+ </li>
1202
+
1203
+ </ul>
1204
+
1205
+ <p class="tag_title">Returns:</p>
1206
+ <ul class="return">
1207
+
1208
+ <li>
1209
+
1210
+
1211
+ <span class='type'>(<tt>Object</tt>)</span>
1212
+
1213
+
1214
+
1215
+ </li>
1216
+
1217
+ </ul>
1218
+
1219
+ </div><table class="source_code">
1220
+ <tr>
1221
+ <td>
1222
+ <pre class="lines">
1223
+
1224
+
1225
+ 196
1226
+ 197
1227
+ 198
1228
+ 199
1229
+ 200
1230
+ 201
1231
+ 202
1232
+ 203</pre>
1233
+ </td>
1234
+ <td>
1235
+ <pre class="code"><span class="info file"># File 'lib/crapi/client.rb', line 196</span>
1236
+
1237
+ <span class='kw'>def</span> <span class='id identifier rubyid_post'>post</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>headers:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>query:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>payload:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
1238
+ <span class='id identifier rubyid_headers'>headers</span> <span class='op'>=</span> <span class='ivar'>@default_headers</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
1239
+ <span class='id identifier rubyid_payload'>payload</span> <span class='op'>=</span> <span class='id identifier rubyid_format_payload'>format_payload</span><span class='lparen'>(</span><span class='id identifier rubyid_payload'>payload</span><span class='comma'>,</span> <span class='label'>as:</span> <span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='symbol'>:Content-Type</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
1240
+
1241
+ <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='ivar'>@http</span><span class='period'>.</span><span class='id identifier rubyid_post'>post</span><span class='lparen'>(</span><span class='id identifier rubyid_full_path'>full_path</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>query:</span> <span class='id identifier rubyid_query'>query</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_payload'>payload</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
1242
+ <span class='id identifier rubyid_ensure_success!'>ensure_success!</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
1243
+ <span class='id identifier rubyid_parse_response'>parse_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
1244
+ <span class='kw'>end</span></pre>
1245
+ </td>
1246
+ </tr>
1247
+ </table>
1248
+ </div>
1249
+
1250
+ <div class="method_details ">
1251
+ <h3 class="signature " id="put-instance_method">
1252
+
1253
+ #<strong>put</strong>(path, headers: {}, query: {}, payload: {}) &#x21d2; <tt>Object</tt>
1254
+
1255
+
1256
+
1257
+
1258
+
1259
+ </h3><div class="docstring">
1260
+ <div class="discussion">
1261
+
1262
+ <p>CRUD method: PUT</p>
1263
+
1264
+
1265
+ </div>
1266
+ </div>
1267
+ <div class="tags">
1268
+ <p class="tag_title">Parameters:</p>
1269
+ <ul class="param">
1270
+
1271
+ <li>
1272
+
1273
+ <span class='name'>path</span>
1274
+
1275
+
1276
+ <span class='type'>(<tt>String</tt>)</span>
1277
+
1278
+
1279
+
1280
+ &mdash;
1281
+ <div class='inline'>
1282
+ <p>The path to the resource to PATCH. Note that this path is always
1283
+ interpreted as relative to the client&#39;s base_uri&#39;s path, regardless
1284
+ of whether it begins with a “/”.</p>
1285
+ </div>
1286
+
1287
+ </li>
1288
+
1289
+ <li>
1290
+
1291
+ <span class='name'>headers</span>
1292
+
1293
+
1294
+ <span class='type'>(<tt>Hash</tt>)</span>
1295
+
1296
+
1297
+
1298
+ &mdash;
1299
+ <div class='inline'>
1300
+ <p>Additional headers to set in addition to the client&#39;s defaults. Any
1301
+ header given here and also appearing in the client&#39;s defaults will
1302
+ override said default value.</p>
1303
+ </div>
1304
+
1305
+ </li>
1306
+
1307
+ <li>
1308
+
1309
+ <span class='name'>query</span>
1310
+
1311
+
1312
+ <span class='type'>(<tt>Hash</tt>, <tt>Array</tt>, <tt>String</tt>)</span>
1313
+
1314
+
1315
+
1316
+ &mdash;
1317
+ <div class='inline'>
1318
+ <p>Query string values, if any, to append to the given path. Strings are
1319
+ appended as-is; Hashes and Arrays are serialized as URI-encoded form data
1320
+ before appending.</p>
1321
+ </div>
1322
+
1323
+ </li>
1324
+
1325
+ <li>
1326
+
1327
+ <span class='name'>payload</span>
1328
+
1329
+
1330
+ <span class='type'>(<tt>Hash</tt>, <tt>String</tt>)</span>
1331
+
1332
+
1333
+
1334
+ &mdash;
1335
+ <div class='inline'>
1336
+ <p>The payload to send, if any. Strings are used as-is; Hashes are serialized
1337
+ per the request&#39;s “Content-Type” header.</p>
1338
+ </div>
1339
+
1340
+ </li>
1341
+
1342
+ </ul>
1343
+
1344
+ <p class="tag_title">Returns:</p>
1345
+ <ul class="return">
1346
+
1347
+ <li>
1348
+
1349
+
1350
+ <span class='type'>(<tt>Object</tt>)</span>
1351
+
1352
+
1353
+
1354
+ </li>
1355
+
1356
+ </ul>
1357
+
1358
+ </div><table class="source_code">
1359
+ <tr>
1360
+ <td>
1361
+ <pre class="lines">
1362
+
1363
+
1364
+ 226
1365
+ 227
1366
+ 228
1367
+ 229
1368
+ 230
1369
+ 231
1370
+ 232
1371
+ 233</pre>
1372
+ </td>
1373
+ <td>
1374
+ <pre class="code"><span class="info file"># File 'lib/crapi/client.rb', line 226</span>
1375
+
1376
+ <span class='kw'>def</span> <span class='id identifier rubyid_put'>put</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>headers:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>query:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>payload:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
1377
+ <span class='id identifier rubyid_headers'>headers</span> <span class='op'>=</span> <span class='ivar'>@default_headers</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
1378
+ <span class='id identifier rubyid_payload'>payload</span> <span class='op'>=</span> <span class='id identifier rubyid_format_payload'>format_payload</span><span class='lparen'>(</span><span class='id identifier rubyid_payload'>payload</span><span class='comma'>,</span> <span class='label'>as:</span> <span class='id identifier rubyid_headers'>headers</span><span class='lbracket'>[</span><span class='symbol'>:Content-Type</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
1379
+
1380
+ <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='ivar'>@http</span><span class='period'>.</span><span class='id identifier rubyid_put'>put</span><span class='lparen'>(</span><span class='id identifier rubyid_full_path'>full_path</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>query:</span> <span class='id identifier rubyid_query'>query</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_payload'>payload</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
1381
+ <span class='id identifier rubyid_ensure_success!'>ensure_success!</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
1382
+ <span class='id identifier rubyid_parse_response'>parse_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='rparen'>)</span>
1383
+ <span class='kw'>end</span></pre>
1384
+ </td>
1385
+ </tr>
1386
+ </table>
1387
+ </div>
1388
+
1389
+ </div>
1390
+
1391
+ </div>
1392
+
1393
+ <div id="footer">
1394
+ Generated on Wed May 30 11:27:03 2018 by
1395
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1396
+ 0.9.12 (ruby-2.5.1).
1397
+ </div>
1398
+
1399
+ </div>
1400
+ </body>
1401
+ </html>