crapi 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -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>