kabk 0.2.0

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.

Potentially problematic release.


This version of kabk might be problematic. Click here for more details.

Files changed (67) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +27 -0
  3. data/Gemfile +6 -0
  4. data/Gemfile.lock +108 -0
  5. data/Kabk_logo.svg +33 -0
  6. data/LICENSE +21 -0
  7. data/README.md +101 -0
  8. data/doc/Kabk/Adapters/Base.html +854 -0
  9. data/doc/Kabk/Adapters/SequelAdapter.html +948 -0
  10. data/doc/Kabk/Adapters.html +120 -0
  11. data/doc/Kabk/ApiError.html +511 -0
  12. data/doc/Kabk/Auth/JwtStrategy.html +551 -0
  13. data/doc/Kabk/Auth.html +118 -0
  14. data/doc/Kabk/Concurrency.html +297 -0
  15. data/doc/Kabk/ConcurrencyConflictError.html +225 -0
  16. data/doc/Kabk/Error.html +140 -0
  17. data/doc/Kabk/ExportHandler.html +381 -0
  18. data/doc/Kabk/Field.html +2160 -0
  19. data/doc/Kabk/ForbiddenError.html +225 -0
  20. data/doc/Kabk/InvalidFieldError.html +136 -0
  21. data/doc/Kabk/InvalidOldPasswordError.html +225 -0
  22. data/doc/Kabk/NotFoundError.html +225 -0
  23. data/doc/Kabk/QueryBuilder.html +551 -0
  24. data/doc/Kabk/Registry.html +608 -0
  25. data/doc/Kabk/RelationHydrator.html +480 -0
  26. data/doc/Kabk/Resource.html +1986 -0
  27. data/doc/Kabk/ResourceBuilder.html +1002 -0
  28. data/doc/Kabk/RestEngine.html +879 -0
  29. data/doc/Kabk/SchemaRenderer.html +318 -0
  30. data/doc/Kabk/UnauthorizedError.html +225 -0
  31. data/doc/Kabk/UploadHandler.html +308 -0
  32. data/doc/Kabk/ValidationError.html +225 -0
  33. data/doc/Kabk/Validator.html +380 -0
  34. data/doc/Kabk.html +330 -0
  35. data/doc/_index.html +376 -0
  36. data/doc/class_list.html +54 -0
  37. data/doc/css/common.css +1 -0
  38. data/doc/css/full_list.css +206 -0
  39. data/doc/css/style.css +1089 -0
  40. data/doc/file.README.html +149 -0
  41. data/doc/file_list.html +59 -0
  42. data/doc/frames.html +22 -0
  43. data/doc/index.html +149 -0
  44. data/doc/js/app.js +801 -0
  45. data/doc/js/full_list.js +334 -0
  46. data/doc/js/jquery.js +4 -0
  47. data/doc/method_list.html +910 -0
  48. data/doc/top-level-namespace.html +112 -0
  49. data/docs/API_REFERENCE.md +241 -0
  50. data/lib/kabk/adapters/base.rb +45 -0
  51. data/lib/kabk/adapters/sequel_adapter.rb +125 -0
  52. data/lib/kabk/concurrency.rb +30 -0
  53. data/lib/kabk/errors.rb +62 -0
  54. data/lib/kabk/export_handler.rb +43 -0
  55. data/lib/kabk/field.rb +97 -0
  56. data/lib/kabk/query_builder.rb +72 -0
  57. data/lib/kabk/registry.rb +41 -0
  58. data/lib/kabk/relation_hydrator.rb +107 -0
  59. data/lib/kabk/resource.rb +88 -0
  60. data/lib/kabk/resource_builder.rb +93 -0
  61. data/lib/kabk/rest_engine.rb +84 -0
  62. data/lib/kabk/schema_renderer.rb +69 -0
  63. data/lib/kabk/upload_handler.rb +24 -0
  64. data/lib/kabk/validator.rb +64 -0
  65. data/lib/kabk/version.rb +6 -0
  66. data/lib/kabk.rb +51 -0
  67. metadata +193 -0
@@ -0,0 +1,608 @@
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: Kabk::Registry
8
+
9
+ &mdash; Documentation by YARD 0.9.45
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css">
14
+
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css">
16
+
17
+ <script type="text/javascript">
18
+ pathId = "Kabk::Registry";
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 id="main_progress" aria-hidden="true"></div>
31
+
32
+ <div class="nav_wrap">
33
+ <iframe id="nav" src="../class_list.html?1"></iframe>
34
+ <div id="resizer"></div>
35
+ </div>
36
+
37
+ <div id="main" tabindex="-1">
38
+ <div id="header">
39
+ <div id="menu">
40
+
41
+ <a href="../_index.html">Index (R)</a> &raquo;
42
+ <span class='title'><span class='object_link'><a href="../Kabk.html" title="Kabk (module)">Kabk</a></span></span>
43
+ &raquo;
44
+ <span class="title">Registry</span>
45
+
46
+ </div>
47
+
48
+ <div id="search">
49
+
50
+ <a class="full_list_link" id="class_list_link"
51
+ href="../class_list.html">
52
+
53
+ <svg width="24" height="24">
54
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
55
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
56
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
57
+ </svg>
58
+ </a>
59
+
60
+ </div>
61
+ <div class="clear"></div>
62
+ </div>
63
+
64
+ <div id="content"><h1>Class: Kabk::Registry
65
+
66
+
67
+
68
+ </h1>
69
+ <div class="box_info">
70
+
71
+ <dl>
72
+ <dt>Inherits:</dt>
73
+ <dd>
74
+ <span class="inheritName">Object</span>
75
+
76
+ <ul class="fullTree">
77
+ <li>Object</li>
78
+
79
+ <li class="next">Kabk::Registry</li>
80
+
81
+ </ul>
82
+ <a href="#" class="inheritanceTree">show all</a>
83
+
84
+ </dd>
85
+ </dl>
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+ <dl>
98
+ <dt>Defined in:</dt>
99
+ <dd>lib/kabk/registry.rb
100
+ </dd>
101
+ </dl>
102
+
103
+ </div>
104
+
105
+ <h2>Overview</h2><div class="docstring">
106
+ <div class="discussion">
107
+ <p>Thread-safe registry for managing registered resources</p>
108
+
109
+ </div>
110
+ </div>
111
+ <div class="tags">
112
+
113
+
114
+ </div>
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+ <h2>
123
+ Class Method Summary
124
+ <small><a href="#" class="summary_toggle">collapse</a></small>
125
+ </h2>
126
+
127
+ <ul class="summary">
128
+
129
+ <li class="public ">
130
+ <span class="summary_signature">
131
+
132
+ <a href="#instance-class_method" title="instance (class method)">.<strong>instance</strong> &#x21d2; Registry </a>
133
+
134
+
135
+
136
+ </span>
137
+
138
+
139
+
140
+
141
+
142
+
143
+
144
+
145
+
146
+ <span class="summary_desc"><div class='inline'></div></span>
147
+
148
+ </li>
149
+
150
+
151
+ </ul>
152
+
153
+
154
+ <h2>
155
+ Instance Method Summary
156
+ <small><a href="#" class="summary_toggle">collapse</a></small>
157
+ </h2>
158
+
159
+ <ul class="summary">
160
+
161
+ <li class="public ">
162
+ <span class="summary_signature">
163
+
164
+ <a href="#all-instance_method" title="#all (instance method)">#<strong>all</strong> &#x21d2; Array&lt;Kabk::Resource&gt; </a>
165
+
166
+
167
+
168
+ </span>
169
+
170
+
171
+
172
+
173
+
174
+
175
+
176
+
177
+
178
+ <span class="summary_desc"><div class='inline'><p>Get all registered resources.</p></div></span>
179
+
180
+ </li>
181
+
182
+
183
+ <li class="public ">
184
+ <span class="summary_signature">
185
+
186
+ <a href="#clear-instance_method" title="#clear (instance method)">#<strong>clear</strong> &#x21d2; Object </a>
187
+
188
+
189
+
190
+ </span>
191
+
192
+
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+ <span class="summary_desc"><div class='inline'><p>Clear registry (useful for testing).</p></div></span>
201
+
202
+ </li>
203
+
204
+
205
+ <li class="public ">
206
+ <span class="summary_signature">
207
+
208
+ <a href="#get-instance_method" title="#get (instance method)">#<strong>get</strong>(name) &#x21d2; Kabk::Resource<sup>?</sup> </a>
209
+
210
+
211
+
212
+ </span>
213
+
214
+
215
+
216
+
217
+
218
+
219
+
220
+
221
+
222
+ <span class="summary_desc"><div class='inline'><p>Retrieve a resource by name.</p></div></span>
223
+
224
+ </li>
225
+
226
+
227
+ <li class="public ">
228
+ <span class="summary_signature">
229
+
230
+ <a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong> &#x21d2; Registry </a>
231
+
232
+
233
+
234
+ </span>
235
+
236
+
237
+ <span class="note title constructor">constructor</span>
238
+
239
+
240
+
241
+
242
+
243
+
244
+
245
+
246
+ <span class="summary_desc"><div class='inline'><p>A new instance of Registry.</p></div></span>
247
+
248
+ </li>
249
+
250
+
251
+ <li class="public ">
252
+ <span class="summary_signature">
253
+
254
+ <a href="#register-instance_method" title="#register (instance method)">#<strong>register</strong>(resource) &#x21d2; Object </a>
255
+
256
+
257
+
258
+ </span>
259
+
260
+
261
+
262
+
263
+
264
+
265
+
266
+
267
+
268
+ <span class="summary_desc"><div class='inline'><p>Register a new resource.</p></div></span>
269
+
270
+ </li>
271
+
272
+
273
+ </ul>
274
+
275
+
276
+
277
+ <div id="constructor_details" class="method_details_list">
278
+ <h2>Constructor Details</h2>
279
+
280
+ <div class="method_details first">
281
+ <h3 class="signature first" id="initialize-instance_method">
282
+
283
+ #<strong>initialize</strong> &#x21d2; <tt><span class='object_link'><a href="" title="Kabk::Registry (class)">Registry</a></span></tt>
284
+
285
+
286
+
287
+
288
+
289
+ </h3><div class="docstring">
290
+ <div class="discussion">
291
+ <p>Returns a new instance of Registry.</p>
292
+
293
+ </div>
294
+ </div>
295
+ <div class="tags">
296
+
297
+
298
+ </div><table class="source_code">
299
+ <tr>
300
+ <td>
301
+ <pre class="lines">
302
+
303
+
304
+ 13
305
+ 14
306
+ 15</pre>
307
+ </td>
308
+ <td>
309
+ <pre class="code"><span class="info file"># File 'lib/kabk/registry.rb', line 13</span>
310
+
311
+ <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span>
312
+ <span class='ivar'>@resources</span> <span class='op'>=</span> <span class='const'>Concurrent</span><span class='op'>::</span><span class='const'>Map</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
313
+ <span class='kw'>end</span></pre>
314
+ </td>
315
+ </tr>
316
+ </table>
317
+ </div>
318
+
319
+ </div>
320
+
321
+
322
+ <div id="class_method_details" class="method_details_list">
323
+ <h2>Class Method Details</h2>
324
+
325
+
326
+ <div class="method_details first">
327
+ <h3 class="signature first" id="instance-class_method">
328
+
329
+ .<strong>instance</strong> &#x21d2; <tt><span class='object_link'><a href="" title="Kabk::Registry (class)">Registry</a></span></tt>
330
+
331
+
332
+
333
+
334
+
335
+ </h3><div class="docstring">
336
+ <div class="discussion">
337
+
338
+
339
+ </div>
340
+ </div>
341
+ <div class="tags">
342
+
343
+ <p class="tag_title">Returns:</p>
344
+ <ul class="return">
345
+
346
+ <li>
347
+
348
+
349
+ <span class='type'>(<tt><span class='object_link'><a href="" title="Kabk::Registry (class)">Registry</a></span></tt>)</span>
350
+
351
+
352
+
353
+ </li>
354
+
355
+ </ul>
356
+
357
+ </div><table class="source_code">
358
+ <tr>
359
+ <td>
360
+ <pre class="lines">
361
+
362
+
363
+ 9
364
+ 10
365
+ 11</pre>
366
+ </td>
367
+ <td>
368
+ <pre class="code"><span class="info file"># File 'lib/kabk/registry.rb', line 9</span>
369
+
370
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_instance'>instance</span>
371
+ <span class='ivar'>@instance</span> <span class='op'>||=</span> <span class='id identifier rubyid_new'>new</span>
372
+ <span class='kw'>end</span></pre>
373
+ </td>
374
+ </tr>
375
+ </table>
376
+ </div>
377
+
378
+ </div>
379
+
380
+ <div id="instance_method_details" class="method_details_list">
381
+ <h2>Instance Method Details</h2>
382
+
383
+
384
+ <div class="method_details first">
385
+ <h3 class="signature first" id="all-instance_method">
386
+
387
+ #<strong>all</strong> &#x21d2; <tt>Array&lt;<span class='object_link'><a href="Resource.html" title="Kabk::Resource (class)">Kabk::Resource</a></span>&gt;</tt>
388
+
389
+
390
+
391
+
392
+
393
+ </h3><div class="docstring">
394
+ <div class="discussion">
395
+ <p>Get all registered resources</p>
396
+
397
+ </div>
398
+ </div>
399
+ <div class="tags">
400
+
401
+ <p class="tag_title">Returns:</p>
402
+ <ul class="return">
403
+
404
+ <li>
405
+
406
+
407
+ <span class='type'>(<tt>Array&lt;<span class='object_link'><a href="Resource.html" title="Kabk::Resource (class)">Kabk::Resource</a></span>&gt;</tt>)</span>
408
+
409
+
410
+
411
+ </li>
412
+
413
+ </ul>
414
+
415
+ </div><table class="source_code">
416
+ <tr>
417
+ <td>
418
+ <pre class="lines">
419
+
420
+
421
+ 32
422
+ 33
423
+ 34</pre>
424
+ </td>
425
+ <td>
426
+ <pre class="code"><span class="info file"># File 'lib/kabk/registry.rb', line 32</span>
427
+
428
+ <span class='kw'>def</span> <span class='id identifier rubyid_all'>all</span>
429
+ <span class='ivar'>@resources</span><span class='period'>.</span><span class='id identifier rubyid_values'>values</span>
430
+ <span class='kw'>end</span></pre>
431
+ </td>
432
+ </tr>
433
+ </table>
434
+ </div>
435
+
436
+ <div class="method_details ">
437
+ <h3 class="signature " id="clear-instance_method">
438
+
439
+ #<strong>clear</strong> &#x21d2; <tt>Object</tt>
440
+
441
+
442
+
443
+
444
+
445
+ </h3><div class="docstring">
446
+ <div class="discussion">
447
+ <p>Clear registry (useful for testing)</p>
448
+
449
+ </div>
450
+ </div>
451
+ <div class="tags">
452
+
453
+
454
+ </div><table class="source_code">
455
+ <tr>
456
+ <td>
457
+ <pre class="lines">
458
+
459
+
460
+ 37
461
+ 38
462
+ 39</pre>
463
+ </td>
464
+ <td>
465
+ <pre class="code"><span class="info file"># File 'lib/kabk/registry.rb', line 37</span>
466
+
467
+ <span class='kw'>def</span> <span class='id identifier rubyid_clear'>clear</span>
468
+ <span class='ivar'>@resources</span><span class='period'>.</span><span class='id identifier rubyid_clear'>clear</span>
469
+ <span class='kw'>end</span></pre>
470
+ </td>
471
+ </tr>
472
+ </table>
473
+ </div>
474
+
475
+ <div class="method_details ">
476
+ <h3 class="signature " id="get-instance_method">
477
+
478
+ #<strong>get</strong>(name) &#x21d2; <tt><span class='object_link'><a href="Resource.html" title="Kabk::Resource (class)">Kabk::Resource</a></span></tt><sup>?</sup>
479
+
480
+
481
+
482
+
483
+
484
+ </h3><div class="docstring">
485
+ <div class="discussion">
486
+ <p>Retrieve a resource by name</p>
487
+
488
+ </div>
489
+ </div>
490
+ <div class="tags">
491
+ <p class="tag_title">Parameters:</p>
492
+ <ul class="param">
493
+
494
+ <li>
495
+
496
+ <span class='name'>name</span>
497
+
498
+
499
+ <span class='type'>(<tt>Symbol</tt>, <tt>String</tt>)</span>
500
+
501
+
502
+
503
+ </li>
504
+
505
+ </ul>
506
+
507
+ <p class="tag_title">Returns:</p>
508
+ <ul class="return">
509
+
510
+ <li>
511
+
512
+
513
+ <span class='type'>(<tt><span class='object_link'><a href="Resource.html" title="Kabk::Resource (class)">Kabk::Resource</a></span></tt>, <tt>nil</tt>)</span>
514
+
515
+
516
+
517
+ </li>
518
+
519
+ </ul>
520
+
521
+ </div><table class="source_code">
522
+ <tr>
523
+ <td>
524
+ <pre class="lines">
525
+
526
+
527
+ 26
528
+ 27
529
+ 28</pre>
530
+ </td>
531
+ <td>
532
+ <pre class="code"><span class="info file"># File 'lib/kabk/registry.rb', line 26</span>
533
+
534
+ <span class='kw'>def</span> <span class='id identifier rubyid_get'>get</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='rparen'>)</span>
535
+ <span class='ivar'>@resources</span><span class='lbracket'>[</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='rbracket'>]</span>
536
+ <span class='kw'>end</span></pre>
537
+ </td>
538
+ </tr>
539
+ </table>
540
+ </div>
541
+
542
+ <div class="method_details ">
543
+ <h3 class="signature " id="register-instance_method">
544
+
545
+ #<strong>register</strong>(resource) &#x21d2; <tt>Object</tt>
546
+
547
+
548
+
549
+
550
+
551
+ </h3><div class="docstring">
552
+ <div class="discussion">
553
+ <p>Register a new resource</p>
554
+
555
+ </div>
556
+ </div>
557
+ <div class="tags">
558
+ <p class="tag_title">Parameters:</p>
559
+ <ul class="param">
560
+
561
+ <li>
562
+
563
+ <span class='name'>resource</span>
564
+
565
+
566
+ <span class='type'>(<tt><span class='object_link'><a href="Resource.html" title="Kabk::Resource (class)">Kabk::Resource</a></span></tt>)</span>
567
+
568
+
569
+
570
+ </li>
571
+
572
+ </ul>
573
+
574
+
575
+ </div><table class="source_code">
576
+ <tr>
577
+ <td>
578
+ <pre class="lines">
579
+
580
+
581
+ 19
582
+ 20
583
+ 21</pre>
584
+ </td>
585
+ <td>
586
+ <pre class="code"><span class="info file"># File 'lib/kabk/registry.rb', line 19</span>
587
+
588
+ <span class='kw'>def</span> <span class='id identifier rubyid_register'>register</span><span class='lparen'>(</span><span class='id identifier rubyid_resource'>resource</span><span class='rparen'>)</span>
589
+ <span class='ivar'>@resources</span><span class='lbracket'>[</span><span class='id identifier rubyid_resource'>resource</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_to_sym'>to_sym</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_resource'>resource</span>
590
+ <span class='kw'>end</span></pre>
591
+ </td>
592
+ </tr>
593
+ </table>
594
+ </div>
595
+
596
+ </div>
597
+
598
+ </div>
599
+
600
+ <div id="footer">
601
+ Generated on Tue Aug 11 21:17:06 2026 by
602
+ <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
603
+ 0.9.45 (ruby-4.0.6).
604
+ </div>
605
+
606
+ </div>
607
+ </body>
608
+ </html>