simple-service 0.1.5 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +10 -2
- data/Gemfile +3 -1
- data/Makefile +5 -2
- data/TODO.txt +3 -0
- data/VERSION +1 -1
- data/doc/Simple/Service/Action/Comment/Extractor.html +1 -1
- data/doc/Simple/Service/Action/Comment.html +1 -1
- data/doc/Simple/Service/Action/MethodReflection.html +1 -1
- data/doc/Simple/Service/Action/Parameter.html +2 -2
- data/doc/Simple/Service/Action.html +59 -150
- data/doc/Simple/Service/ArgumentError.html +1 -1
- data/doc/Simple/Service/ClassMethods.html +5 -5
- data/doc/Simple/Service/Context.html +5 -5
- data/doc/Simple/Service/ContextMissingError.html +1 -1
- data/doc/Simple/Service/ContextReadOnlyError.html +1 -1
- data/doc/Simple/Service/ExtraArguments.html +1 -1
- data/doc/Simple/Service/GemHelper.html +1 -1
- data/doc/Simple/Service/MissingArguments.html +1 -1
- data/doc/Simple/Service/NoSuchAction.html +1 -1
- data/doc/Simple/Service.html +89 -87
- data/doc/Simple.html +1 -1
- data/doc/_index.html +7 -19
- data/doc/class_list.html +1 -1
- data/doc/file.README.html +3 -3
- data/doc/file.TODO.html +70 -0
- data/doc/file_list.html +5 -0
- data/doc/index.html +3 -3
- data/doc/method_list.html +59 -115
- data/doc/top-level-namespace.html +1 -1
- data/lib/simple/service/action/comment.rb +1 -1
- data/lib/simple/service/action.rb +10 -3
- data/lib/simple/service/errors.rb +4 -3
- data/lib/simple/service.rb +33 -28
- data/lib/simple/workflow/context.rb +105 -0
- data/lib/simple/workflow/current_context.rb +33 -0
- data/lib/simple/workflow/reloader.rb +84 -0
- data/lib/simple/workflow/rspec_helper.rb +15 -0
- data/lib/simple/workflow.rb +96 -0
- data/lib/simple-workflow.rb +3 -0
- data/scripts/test +2 -0
- data/simple-service.gemspec +1 -0
- data/spec/simple/service/action_invoke3_spec.rb +0 -8
- data/spec/simple/service/action_invoke_spec.rb +82 -20
- data/spec/simple/service/service_spec.rb +13 -56
- data/spec/simple/workflow/context_spec.rb +90 -0
- data/spec/simple/workflow/current_context_spec.rb +41 -0
- data/spec/simple/workflow/reloader_spec/example1.rb +10 -0
- data/spec/simple/workflow/reloader_spec/example2.rb +7 -0
- data/spec/simple/workflow/reloader_spec.rb +48 -0
- data/spec/spec_helper.rb +2 -1
- data/spec/support/spec_services.rb +1 -3
- metadata +42 -7
- data/doc/Simple/Service/Action/IndieHash.html +0 -506
- data/lib/simple/service/context.rb +0 -94
- data/spec/simple/service/context_spec.rb +0 -69
data/doc/Simple/Service.html
CHANGED
@@ -88,7 +88,7 @@
|
|
88
88
|
<h2>Overview</h2><div class="docstring">
|
89
89
|
<div class="discussion">
|
90
90
|
|
91
|
-
<p>The
|
91
|
+
<p><strong>The Simple::Service interface</strong></p>
|
92
92
|
|
93
93
|
<p>This module implements the main API of the Simple::Service ruby gem.</p>
|
94
94
|
<ol><li>
|
@@ -109,16 +109,19 @@
|
|
109
109
|
<span class='kw'>end</span>
|
110
110
|
</code></pre>
|
111
111
|
</li><li>
|
112
|
-
<p><em>Discover services:</em> To discover services in a service module use the #actions method. This returns a Hash of actions.
|
112
|
+
<p><em>Discover services:</em> To discover services in a service module use the #actions method. This returns a Hash of actions. </p>
|
113
113
|
|
114
114
|
<pre class="code ruby"><code class="ruby">Simple::Service.actions(GodMode)
|
115
115
|
=> {:build_universe=>#<Simple::Service::Action...>, ...}
|
116
116
|
</code></pre>
|
117
|
-
</li
|
118
|
-
|
117
|
+
</li></ol>
|
118
|
+
|
119
|
+
<p>TODO: why a Hash? It feels much better if Simple::Service.actions returns an array of names.</p>
|
120
|
+
<ol><li>
|
121
|
+
<p><em>Invoke a service:</em> run <code>Simple::Service.invoke3</code> or <code>Simple::Service.invoke</code>. You must set a context first.</p>
|
119
122
|
|
120
123
|
<pre class="code ruby"><code class="ruby">Simple::Service.with_context do
|
121
|
-
Simple::Service.
|
124
|
+
Simple::Service.invoke3(GodMode, :build_universe, "TestWorld", c: 1e9)
|
122
125
|
end
|
123
126
|
=> 42
|
124
127
|
</code></pre>
|
@@ -270,7 +273,7 @@ end
|
|
270
273
|
<li class="public ">
|
271
274
|
<span class="summary_signature">
|
272
275
|
|
273
|
-
<a href="#invoke-class_method" title="invoke (class method)">.<strong>invoke</strong>(service, name,
|
276
|
+
<a href="#invoke-class_method" title="invoke (class method)">.<strong>invoke</strong>(service, name, args: {}, flags: {}) ⇒ Object </a>
|
274
277
|
|
275
278
|
|
276
279
|
|
@@ -285,7 +288,7 @@ end
|
|
285
288
|
|
286
289
|
|
287
290
|
<span class="summary_desc"><div class='inline'>
|
288
|
-
<p>
|
291
|
+
<p><strong>Note:</strong> You cannot call this method if the context is not set.</p>
|
289
292
|
</div></span>
|
290
293
|
|
291
294
|
</li>
|
@@ -294,7 +297,7 @@ end
|
|
294
297
|
<li class="public ">
|
295
298
|
<span class="summary_signature">
|
296
299
|
|
297
|
-
<a href="#
|
300
|
+
<a href="#invoke3-class_method" title="invoke3 (class method)">.<strong>invoke3</strong>(service, name, *args, **flags) ⇒ Object </a>
|
298
301
|
|
299
302
|
|
300
303
|
|
@@ -309,7 +312,7 @@ end
|
|
309
312
|
|
310
313
|
|
311
314
|
<span class="summary_desc"><div class='inline'>
|
312
|
-
<p>invokes an action with a given <code>name</code> in a service with
|
315
|
+
<p>invokes an action with a given <code>name</code> in a service with <code>args</code> and <code>flags</code>.</p>
|
313
316
|
</div></span>
|
314
317
|
|
315
318
|
</li>
|
@@ -356,7 +359,9 @@ end
|
|
356
359
|
|
357
360
|
|
358
361
|
|
359
|
-
<span class="summary_desc"><div class='inline'
|
362
|
+
<span class="summary_desc"><div class='inline'>
|
363
|
+
<p>Raises an error if the passed in object is not a service.</p>
|
364
|
+
</div></span>
|
360
365
|
|
361
366
|
</li>
|
362
367
|
|
@@ -420,15 +425,15 @@ end
|
|
420
425
|
<pre class="lines">
|
421
426
|
|
422
427
|
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
|
428
|
+
78
|
429
|
+
79
|
430
|
+
80
|
431
|
+
81
|
432
|
+
82
|
433
|
+
83</pre>
|
429
434
|
</td>
|
430
435
|
<td>
|
431
|
-
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line
|
436
|
+
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line 78</span>
|
432
437
|
|
433
438
|
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_action'>action</span><span class='lparen'>(</span><span class='id identifier rubyid_service'>service</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='rparen'>)</span>
|
434
439
|
<span class='id identifier rubyid_actions'>actions</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_actions'>actions</span><span class='lparen'>(</span><span class='id identifier rubyid_service'>service</span><span class='rparen'>)</span>
|
@@ -467,14 +472,14 @@ end
|
|
467
472
|
<pre class="lines">
|
468
473
|
|
469
474
|
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
474
|
-
|
475
|
+
71
|
476
|
+
72
|
477
|
+
73
|
478
|
+
74
|
479
|
+
75</pre>
|
475
480
|
</td>
|
476
481
|
<td>
|
477
|
-
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line
|
482
|
+
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line 71</span>
|
478
483
|
|
479
484
|
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_actions'>actions</span><span class='lparen'>(</span><span class='id identifier rubyid_service'>service</span><span class='rparen'>)</span>
|
480
485
|
<span class='id identifier rubyid_verify_service!'>verify_service!</span><span class='lparen'>(</span><span class='id identifier rubyid_service'>service</span><span class='rparen'>)</span>
|
@@ -542,12 +547,12 @@ end
|
|
542
547
|
<pre class="lines">
|
543
548
|
|
544
549
|
|
545
|
-
|
546
|
-
|
547
|
-
|
550
|
+
50
|
551
|
+
51
|
552
|
+
52</pre>
|
548
553
|
</td>
|
549
554
|
<td>
|
550
|
-
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line
|
555
|
+
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line 50</span>
|
551
556
|
|
552
557
|
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_included'>included</span><span class='lparen'>(</span><span class='id identifier rubyid_klass'>klass</span><span class='rparen'>)</span> <span class='comment'># @private
|
553
558
|
</span> <span class='id identifier rubyid_klass'>klass</span><span class='period'>.</span><span class='id identifier rubyid_extend'>extend</span> <span class='const'><span class='object_link'><a href="Service/ClassMethods.html" title="Simple::Service::ClassMethods (module)">ClassMethods</a></span></span>
|
@@ -560,7 +565,7 @@ end
|
|
560
565
|
<div class="method_details ">
|
561
566
|
<h3 class="signature " id="invoke-class_method">
|
562
567
|
|
563
|
-
.<strong>invoke</strong>(service, name,
|
568
|
+
.<strong>invoke</strong>(service, name, args: {}, flags: {}) ⇒ <tt>Object</tt>
|
564
569
|
|
565
570
|
|
566
571
|
|
@@ -569,17 +574,7 @@ end
|
|
569
574
|
</h3><div class="docstring">
|
570
575
|
<div class="discussion">
|
571
576
|
|
572
|
-
<p>
|
573
|
-
|
574
|
-
<p>You cannot call this method if the context is not set.</p>
|
575
|
-
|
576
|
-
<p>When calling #invoke using positional arguments they will be matched against positional arguments of the invoked method - but they will not be matched against named arguments.</p>
|
577
|
-
|
578
|
-
<p>When there are not enough positional arguments to match the number of required positional arguments of the method we raise an ArgumentError.</p>
|
579
|
-
|
580
|
-
<p>When there are more positional arguments provided than the number accepted by the method we raise an ArgumentError.</p>
|
581
|
-
|
582
|
-
<p>Entries in the named_args Hash that are not defined in the action itself are ignored.</p>
|
577
|
+
<p><strong>Note:</strong> You cannot call this method if the context is not set.</p>
|
583
578
|
|
584
579
|
|
585
580
|
</div>
|
@@ -606,19 +601,27 @@ end
|
|
606
601
|
<pre class="lines">
|
607
602
|
|
608
603
|
|
609
|
-
|
610
|
-
|
611
|
-
|
612
|
-
|
613
|
-
|
604
|
+
141
|
605
|
+
142
|
606
|
+
143
|
607
|
+
144
|
608
|
+
145
|
609
|
+
146
|
610
|
+
147
|
611
|
+
148
|
612
|
+
149</pre>
|
614
613
|
</td>
|
615
614
|
<td>
|
616
|
-
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line
|
615
|
+
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line 141</span>
|
616
|
+
|
617
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_invoke'>invoke</span><span class='lparen'>(</span><span class='id identifier rubyid_service'>service</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='label'>args:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>flags:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
618
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="Service/ContextMissingError.html" title="Simple::Service::ContextMissingError (class)">ContextMissingError</a></span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Need to set context before calling ::Simple::Service.invoke3</span><span class='tstring_end'>"</span></span> <span class='kw'>unless</span> <span class='id identifier rubyid_context'>context</span>
|
617
619
|
|
618
|
-
<span class='
|
619
|
-
<span class='id identifier
|
620
|
+
<span class='id identifier rubyid_expect!'>expect!</span> <span class='id identifier rubyid_args'>args</span> <span class='op'>=></span> <span class='lbracket'>[</span><span class='const'>Hash</span><span class='comma'>,</span> <span class='const'>Array</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='label'>flags:</span> <span class='const'>Hash</span>
|
621
|
+
<span class='id identifier rubyid_args'>args</span><span class='period'>.</span><span class='id identifier rubyid_keys'>keys</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_key'>key</span><span class='op'>|</span> <span class='id identifier rubyid_expect!'>expect!</span> <span class='id identifier rubyid_key'>key</span> <span class='op'>=></span> <span class='const'>String</span> <span class='rbrace'>}</span> <span class='kw'>if</span> <span class='id identifier rubyid_args'>args</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Hash</span><span class='rparen'>)</span>
|
622
|
+
<span class='id identifier rubyid_flags'>flags</span><span class='period'>.</span><span class='id identifier rubyid_keys'>keys</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_key'>key</span><span class='op'>|</span> <span class='id identifier rubyid_expect!'>expect!</span> <span class='id identifier rubyid_key'>key</span> <span class='op'>=></span> <span class='const'>String</span> <span class='rbrace'>}</span>
|
620
623
|
|
621
|
-
<span class='id identifier rubyid_action'>action</span><span class='lparen'>(</span><span class='id identifier rubyid_service'>service</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_invoke'>invoke</span><span class='lparen'>(</span><span class='
|
624
|
+
<span class='id identifier rubyid_action'>action</span><span class='lparen'>(</span><span class='id identifier rubyid_service'>service</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_invoke'>invoke</span><span class='lparen'>(</span><span class='label'>args:</span> <span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='label'>flags:</span> <span class='id identifier rubyid_flags'>flags</span><span class='rparen'>)</span>
|
622
625
|
<span class='kw'>end</span></pre>
|
623
626
|
</td>
|
624
627
|
</tr>
|
@@ -626,9 +629,9 @@ end
|
|
626
629
|
</div>
|
627
630
|
|
628
631
|
<div class="method_details ">
|
629
|
-
<h3 class="signature " id="
|
632
|
+
<h3 class="signature " id="invoke3-class_method">
|
630
633
|
|
631
|
-
.<strong>
|
634
|
+
.<strong>invoke3</strong>(service, name, *args, **flags) ⇒ <tt>Object</tt>
|
632
635
|
|
633
636
|
|
634
637
|
|
@@ -637,28 +640,19 @@ end
|
|
637
640
|
</h3><div class="docstring">
|
638
641
|
<div class="discussion">
|
639
642
|
|
640
|
-
<p>invokes an action with a given <code>name</code> in a service with
|
643
|
+
<p>invokes an action with a given <code>name</code> in a service with <code>args</code> and <code>flags</code>.</p>
|
644
|
+
|
645
|
+
<p>This is a helper method which one can use to easily call an action from ruby source code.</p>
|
646
|
+
|
647
|
+
<p>As the main purpose of this module is to call services with outside data, the <code>.invoke</code> action is usually preferred.</p>
|
641
648
|
|
642
|
-
<p>You cannot call this method if the context is not set.</p>
|
649
|
+
<p><strong>Note:</strong> You cannot call this method if the context is not set.</p>
|
643
650
|
|
644
651
|
|
645
652
|
</div>
|
646
653
|
</div>
|
647
654
|
<div class="tags">
|
648
655
|
|
649
|
-
<p class="tag_title">Raises:</p>
|
650
|
-
<ul class="raise">
|
651
|
-
|
652
|
-
<li>
|
653
|
-
|
654
|
-
|
655
|
-
<span class='type'>(<tt><span class='object_link'><a href="Service/ContextMissingError.html" title="Simple::Service::ContextMissingError (class)">ContextMissingError</a></span></tt>)</span>
|
656
|
-
|
657
|
-
|
658
|
-
|
659
|
-
</li>
|
660
|
-
|
661
|
-
</ul>
|
662
656
|
|
663
657
|
</div><table class="source_code">
|
664
658
|
<tr>
|
@@ -666,19 +660,17 @@ end
|
|
666
660
|
<pre class="lines">
|
667
661
|
|
668
662
|
|
669
|
-
|
670
|
-
|
671
|
-
|
672
|
-
|
673
|
-
104</pre>
|
663
|
+
94
|
664
|
+
95
|
665
|
+
96
|
666
|
+
97</pre>
|
674
667
|
</td>
|
675
668
|
<td>
|
676
|
-
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line
|
669
|
+
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line 94</span>
|
677
670
|
|
678
|
-
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier
|
679
|
-
<span class='id identifier
|
680
|
-
|
681
|
-
<span class='id identifier rubyid_action'>action</span><span class='lparen'>(</span><span class='id identifier rubyid_service'>service</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_invoke2'>invoke2</span><span class='lparen'>(</span><span class='label'>args:</span> <span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='label'>flags:</span> <span class='id identifier rubyid_flags'>flags</span><span class='rparen'>)</span>
|
671
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_invoke3'>invoke3</span><span class='lparen'>(</span><span class='id identifier rubyid_service'>service</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='op'>**</span><span class='id identifier rubyid_flags'>flags</span><span class='rparen'>)</span>
|
672
|
+
<span class='id identifier rubyid_flags'>flags</span> <span class='op'>=</span> <span class='id identifier rubyid_flags'>flags</span><span class='period'>.</span><span class='id identifier rubyid_each_with_object'>each_with_object</span><span class='lparen'>(</span><span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='lparen'>(</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_hsh'>hsh</span><span class='op'>|</span> <span class='id identifier rubyid_hsh'>hsh</span><span class='lbracket'>[</span><span class='id identifier rubyid_k'>k</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_v'>v</span> <span class='rbrace'>}</span>
|
673
|
+
<span class='id identifier rubyid_invoke'>invoke</span> <span class='id identifier rubyid_service'>service</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='label'>args:</span> <span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='label'>flags:</span> <span class='id identifier rubyid_flags'>flags</span>
|
682
674
|
<span class='kw'>end</span></pre>
|
683
675
|
</td>
|
684
676
|
</tr>
|
@@ -699,6 +691,8 @@ end
|
|
699
691
|
|
700
692
|
<p>returns true if the passed in object is a service module.</p>
|
701
693
|
|
694
|
+
<p>A service must be a module, and it must include the Simple::Service module.</p>
|
695
|
+
|
702
696
|
|
703
697
|
</div>
|
704
698
|
</div>
|
@@ -724,15 +718,21 @@ end
|
|
724
718
|
<pre class="lines">
|
725
719
|
|
726
720
|
|
727
|
-
|
728
|
-
|
729
|
-
|
721
|
+
57
|
722
|
+
58
|
723
|
+
59
|
724
|
+
60
|
725
|
+
61
|
726
|
+
62</pre>
|
730
727
|
</td>
|
731
728
|
<td>
|
732
|
-
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line
|
729
|
+
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line 57</span>
|
733
730
|
|
734
731
|
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_service?'>service?</span><span class='lparen'>(</span><span class='id identifier rubyid_service'>service</span><span class='rparen'>)</span>
|
735
|
-
<span class='id identifier
|
732
|
+
<span class='id identifier rubyid_verify_service!'>verify_service!</span> <span class='id identifier rubyid_service'>service</span>
|
733
|
+
<span class='kw'>true</span>
|
734
|
+
<span class='kw'>rescue</span> <span class='op'>::</span><span class='const'>ArgumentError</span>
|
735
|
+
<span class='kw'>false</span>
|
736
736
|
<span class='kw'>end</span></pre>
|
737
737
|
</td>
|
738
738
|
</tr>
|
@@ -751,6 +751,8 @@ end
|
|
751
751
|
</h3><div class="docstring">
|
752
752
|
<div class="discussion">
|
753
753
|
|
754
|
+
<p>Raises an error if the passed in object is not a service</p>
|
755
|
+
|
754
756
|
|
755
757
|
</div>
|
756
758
|
</div>
|
@@ -776,17 +778,17 @@ end
|
|
776
778
|
<pre class="lines">
|
777
779
|
|
778
780
|
|
779
|
-
|
780
|
-
|
781
|
-
|
782
|
-
|
781
|
+
65
|
782
|
+
66
|
783
|
+
67
|
784
|
+
68</pre>
|
783
785
|
</td>
|
784
786
|
<td>
|
785
|
-
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line
|
787
|
+
<pre class="code"><span class="info file"># File 'lib/simple/service.rb', line 65</span>
|
786
788
|
|
787
789
|
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_verify_service!'>verify_service!</span><span class='lparen'>(</span><span class='id identifier rubyid_service'>service</span><span class='rparen'>)</span> <span class='comment'># @private
|
788
790
|
</span> <span class='id identifier rubyid_raise'>raise</span> <span class='op'>::</span><span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_service'>service</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> must be a Simple::Service, but is not even a Module</span><span class='tstring_end'>"</span></span> <span class='kw'>unless</span> <span class='id identifier rubyid_service'>service</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Module</span><span class='rparen'>)</span>
|
789
|
-
<span class='id identifier rubyid_raise'>raise</span> <span class='op'>::</span><span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_service'>service</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> must be a Simple::Service, did you 'include Simple::Service'</span><span class='tstring_end'>"</span></span> <span class='kw'>unless</span> <span class='id identifier rubyid_service?'>
|
791
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='op'>::</span><span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_service'>service</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> must be a Simple::Service, did you 'include Simple::Service'</span><span class='tstring_end'>"</span></span> <span class='kw'>unless</span> <span class='id identifier rubyid_service'>service</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>
|
790
792
|
<span class='kw'>end</span></pre>
|
791
793
|
</td>
|
792
794
|
</tr>
|
@@ -853,7 +855,7 @@ end
|
|
853
855
|
</div>
|
854
856
|
|
855
857
|
<div id="footer">
|
856
|
-
Generated on
|
858
|
+
Generated on Wed Dec 4 22:57:13 2019 by
|
857
859
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
858
860
|
0.9.20 (ruby-2.5.1).
|
859
861
|
</div>
|
data/doc/Simple.html
CHANGED
@@ -107,7 +107,7 @@
|
|
107
107
|
</div>
|
108
108
|
|
109
109
|
<div id="footer">
|
110
|
-
Generated on
|
110
|
+
Generated on Wed Dec 4 22:57:12 2019 by
|
111
111
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
112
112
|
0.9.20 (ruby-2.5.1).
|
113
113
|
</div>
|
data/doc/_index.html
CHANGED
@@ -63,6 +63,9 @@
|
|
63
63
|
<li class="r1"><a href="index.html" title="README">README</a></li>
|
64
64
|
|
65
65
|
|
66
|
+
<li class="r2"><a href="file.TODO.html" title="TODO">TODO</a></li>
|
67
|
+
|
68
|
+
|
66
69
|
</ul>
|
67
70
|
|
68
71
|
<div class="clear"></div>
|
@@ -178,21 +181,6 @@
|
|
178
181
|
</ul>
|
179
182
|
|
180
183
|
|
181
|
-
<ul id="alpha_I" class="alpha">
|
182
|
-
<li class="letter">I</li>
|
183
|
-
<ul>
|
184
|
-
|
185
|
-
<li>
|
186
|
-
<span class='object_link'><a href="Simple/Service/Action/IndieHash.html" title="Simple::Service::Action::IndieHash (class)">IndieHash</a></span>
|
187
|
-
|
188
|
-
<small>(Simple::Service::Action)</small>
|
189
|
-
|
190
|
-
</li>
|
191
|
-
|
192
|
-
</ul>
|
193
|
-
</ul>
|
194
|
-
|
195
|
-
|
196
184
|
<ul id="alpha_M" class="alpha">
|
197
185
|
<li class="letter">M</li>
|
198
186
|
<ul>
|
@@ -230,9 +218,6 @@
|
|
230
218
|
</ul>
|
231
219
|
|
232
220
|
|
233
|
-
</td><td valign='top' width="33%">
|
234
|
-
|
235
|
-
|
236
221
|
<ul id="alpha_P" class="alpha">
|
237
222
|
<li class="letter">P</li>
|
238
223
|
<ul>
|
@@ -248,6 +233,9 @@
|
|
248
233
|
</ul>
|
249
234
|
|
250
235
|
|
236
|
+
</td><td valign='top' width="33%">
|
237
|
+
|
238
|
+
|
251
239
|
<ul id="alpha_S" class="alpha">
|
252
240
|
<li class="letter">S</li>
|
253
241
|
<ul>
|
@@ -276,7 +264,7 @@
|
|
276
264
|
</div>
|
277
265
|
|
278
266
|
<div id="footer">
|
279
|
-
Generated on
|
267
|
+
Generated on Wed Dec 4 22:57:12 2019 by
|
280
268
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
281
269
|
0.9.20 (ruby-2.5.1).
|
282
270
|
</div>
|
data/doc/class_list.html
CHANGED
@@ -43,7 +43,7 @@
|
|
43
43
|
|
44
44
|
<ul id="full_list" class="class">
|
45
45
|
<li id="object_" class="odd"><div class="item" style="padding-left:30px"><span class='object_link'><a href="top-level-namespace.html" title="Top Level Namespace (root)">Top Level Namespace</a></span></div></li>
|
46
|
-
<li id='object_Simple' class='even'><div class='item' style='padding-left:30px'><a class='toggle'></a> <span class='object_link'><a href="Simple.html" title="Simple (module)">Simple</a></span><small class='search_info'>Top Level Namespace</small></div><ul><li id='object_Simple::Service' class='collapsed odd'><div class='item' style='padding-left:45px'><a class='toggle'></a> <span class='object_link'><a href="Simple/Service.html" title="Simple::Service (module)">Service</a></span><small class='search_info'>Simple</small></div><ul><li id='object_Simple::Service::Action' class='collapsed'><div class='item' style='padding-left:60px'><a class='toggle'></a> <span class='object_link'><a href="Simple/Service/Action.html" title="Simple::Service::Action (class)">Action</a></span> < Object<small class='search_info'>Simple::Service</small></div><ul><li id='object_Simple::Service::Action::Comment' class='collapsed'><div class='item' style='padding-left:75px'><a class='toggle'></a> <span class='object_link'><a href="Simple/Service/Action/Comment.html" title="Simple::Service::Action::Comment (class)">Comment</a></span> < Object<small class='search_info'>Simple::Service::Action</small></div><ul><li id='object_Simple::Service::Action::Comment::Extractor' class='collapsed'><div class='item' style='padding-left:90px'><span class='object_link'><a href="Simple/Service/Action/Comment/Extractor.html" title="Simple::Service::Action::Comment::Extractor (module)">Extractor</a></span><small class='search_info'>Simple::Service::Action::Comment</small></div></li></ul></li><li id='object_Simple::Service::Action::
|
46
|
+
<li id='object_Simple' class='even'><div class='item' style='padding-left:30px'><a class='toggle'></a> <span class='object_link'><a href="Simple.html" title="Simple (module)">Simple</a></span><small class='search_info'>Top Level Namespace</small></div><ul><li id='object_Simple::Service' class='collapsed odd'><div class='item' style='padding-left:45px'><a class='toggle'></a> <span class='object_link'><a href="Simple/Service.html" title="Simple::Service (module)">Service</a></span><small class='search_info'>Simple</small></div><ul><li id='object_Simple::Service::Action' class='collapsed'><div class='item' style='padding-left:60px'><a class='toggle'></a> <span class='object_link'><a href="Simple/Service/Action.html" title="Simple::Service::Action (class)">Action</a></span> < Object<small class='search_info'>Simple::Service</small></div><ul><li id='object_Simple::Service::Action::Comment' class='collapsed'><div class='item' style='padding-left:75px'><a class='toggle'></a> <span class='object_link'><a href="Simple/Service/Action/Comment.html" title="Simple::Service::Action::Comment (class)">Comment</a></span> < Object<small class='search_info'>Simple::Service::Action</small></div><ul><li id='object_Simple::Service::Action::Comment::Extractor' class='collapsed'><div class='item' style='padding-left:90px'><span class='object_link'><a href="Simple/Service/Action/Comment/Extractor.html" title="Simple::Service::Action::Comment::Extractor (module)">Extractor</a></span><small class='search_info'>Simple::Service::Action::Comment</small></div></li></ul></li><li id='object_Simple::Service::Action::MethodReflection' class='collapsed'><div class='item' style='padding-left:75px'><span class='object_link'><a href="Simple/Service/Action/MethodReflection.html" title="Simple::Service::Action::MethodReflection (module)">MethodReflection</a></span><small class='search_info'>Simple::Service::Action</small></div></li><li id='object_Simple::Service::Action::Parameter' class='collapsed'><div class='item' style='padding-left:75px'><span class='object_link'><a href="Simple/Service/Action/Parameter.html" title="Simple::Service::Action::Parameter (class)">Parameter</a></span> < Object<small class='search_info'>Simple::Service::Action</small></div></li></ul></li><li id='object_Simple::Service::ArgumentError' class='collapsed'><div class='item' style='padding-left:60px'><span class='object_link'><a href="Simple/Service/ArgumentError.html" title="Simple::Service::ArgumentError (class)">ArgumentError</a></span> < ArgumentError<small class='search_info'>Simple::Service</small></div></li><li id='object_Simple::Service::ClassMethods' class='collapsed'><div class='item' style='padding-left:60px'><span class='object_link'><a href="Simple/Service/ClassMethods.html" title="Simple::Service::ClassMethods (module)">ClassMethods</a></span><small class='search_info'>Simple::Service</small></div></li><li id='object_Simple::Service::Context' class='collapsed'><div class='item' style='padding-left:60px'><span class='object_link'><a href="Simple/Service/Context.html" title="Simple::Service::Context (class)">Context</a></span> < Object<small class='search_info'>Simple::Service</small></div></li><li id='object_Simple::Service::ContextMissingError' class='collapsed'><div class='item' style='padding-left:60px'><span class='object_link'><a href="Simple/Service/ContextMissingError.html" title="Simple::Service::ContextMissingError (class)">ContextMissingError</a></span> < StandardError<small class='search_info'>Simple::Service</small></div></li><li id='object_Simple::Service::ContextReadOnlyError' class='collapsed'><div class='item' style='padding-left:60px'><span class='object_link'><a href="Simple/Service/ContextReadOnlyError.html" title="Simple::Service::ContextReadOnlyError (class)">ContextReadOnlyError</a></span> < StandardError<small class='search_info'>Simple::Service</small></div></li><li id='object_Simple::Service::ExtraArguments' class='collapsed'><div class='item' style='padding-left:60px'><span class='object_link'><a href="Simple/Service/ExtraArguments.html" title="Simple::Service::ExtraArguments (class)">ExtraArguments</a></span> < ArgumentError<small class='search_info'>Simple::Service</small></div></li><li id='object_Simple::Service::GemHelper' class='collapsed'><div class='item' style='padding-left:60px'><span class='object_link'><a href="Simple/Service/GemHelper.html" title="Simple::Service::GemHelper (module)">GemHelper</a></span><small class='search_info'>Simple::Service</small></div></li><li id='object_Simple::Service::MissingArguments' class='collapsed'><div class='item' style='padding-left:60px'><span class='object_link'><a href="Simple/Service/MissingArguments.html" title="Simple::Service::MissingArguments (class)">MissingArguments</a></span> < ArgumentError<small class='search_info'>Simple::Service</small></div></li><li id='object_Simple::Service::NoSuchAction' class='collapsed'><div class='item' style='padding-left:60px'><span class='object_link'><a href="Simple/Service/NoSuchAction.html" title="Simple::Service::NoSuchAction (class)">NoSuchAction</a></span> < ArgumentError<small class='search_info'>Simple::Service</small></div></li></ul></li></ul></li>
|
47
47
|
|
48
48
|
</ul>
|
49
49
|
</div>
|
data/doc/file.README.html
CHANGED
@@ -111,7 +111,7 @@
|
|
111
111
|
<p>If the calling site, however, has <strong>named arguments</strong> (in a Hash), one would invoke a service using <code>invoke2</code>. This is used for HTTPD integration (with <code>simple-httpd</code>.)</p>
|
112
112
|
|
113
113
|
<pre class="code ruby"><code class="ruby"> <span class='id identifier rubyid_args'>args</span> <span class='op'>=</span> <span class='lbrace'>{</span> <span class='label'>name:</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>My Universe</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='label'>c:</span> <span class='int'>299792458</span><span class='rbrace'>}</span>
|
114
|
-
<span class='const'><span class='object_link'><a href="Simple.html" title="Simple (module)">Simple</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Simple/Service.html" title="Simple::Service (module)">Service</a></span></span><span class='period'>.</span><span class='id identifier rubyid_invoke2'
|
114
|
+
<span class='const'><span class='object_link'><a href="Simple.html" title="Simple (module)">Simple</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Simple/Service.html" title="Simple::Service (module)">Service</a></span></span><span class='period'>.</span><span class='id identifier rubyid_invoke2'>invoke2</span> <span class='const'>GodMode</span><span class='comma'>,</span>
|
115
115
|
<span class='symbol'>:build_universe</span><span class='comma'>,</span>
|
116
116
|
<span class='label'>args:</span> <span class='id identifier rubyid_args'>args</span>
|
117
117
|
</code></pre>
|
@@ -122,7 +122,7 @@
|
|
122
122
|
|
123
123
|
<pre class="code ruby"><code class="ruby"><span class='const'><span class='object_link'><a href="Simple.html" title="Simple (module)">Simple</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Simple/Service.html" title="Simple::Service (module)">Service</a></span></span><span class='period'>.</span><span class='id identifier rubyid_with_context'><span class='object_link'><a href="Simple/Service.html#with_context-class_method" title="Simple::Service.with_context (method)">with_context</a></span></span><span class='lparen'>(</span><span class='kw'>nil</span><span class='rparen'>)</span> <span class='kw'>do</span>
|
124
124
|
<span class='id identifier rubyid_args'>args</span> <span class='op'>=</span> <span class='lbrace'>{</span> <span class='label'>name:</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>My Universe</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='label'>c:</span> <span class='int'>299792458</span><span class='rbrace'>}</span>
|
125
|
-
<span class='const'><span class='object_link'><a href="Simple.html" title="Simple (module)">Simple</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Simple/Service.html" title="Simple::Service (module)">Service</a></span></span><span class='period'>.</span><span class='id identifier rubyid_invoke2'
|
125
|
+
<span class='const'><span class='object_link'><a href="Simple.html" title="Simple (module)">Simple</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Simple/Service.html" title="Simple::Service (module)">Service</a></span></span><span class='period'>.</span><span class='id identifier rubyid_invoke2'>invoke2</span> <span class='const'>GodMode</span><span class='comma'>,</span>
|
126
126
|
<span class='symbol'>:build_universe</span><span class='comma'>,</span>
|
127
127
|
<span class='label'>args:</span> <span class='id identifier rubyid_args'>args</span>
|
128
128
|
<span class='kw'>end</span>
|
@@ -136,7 +136,7 @@
|
|
136
136
|
</div></div>
|
137
137
|
|
138
138
|
<div id="footer">
|
139
|
-
Generated on
|
139
|
+
Generated on Wed Dec 4 22:57:12 2019 by
|
140
140
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
141
141
|
0.9.20 (ruby-2.5.1).
|
142
142
|
</div>
|
data/doc/file.TODO.html
ADDED
@@ -0,0 +1,70 @@
|
|
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
|
+
File: TODO
|
8
|
+
|
9
|
+
— Documentation by YARD 0.9.20
|
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 = "TODO";
|
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="file_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</a> »
|
40
|
+
<span class="title">File: TODO</span>
|
41
|
+
|
42
|
+
</div>
|
43
|
+
|
44
|
+
<div id="search">
|
45
|
+
|
46
|
+
<a class="full_list_link" id="class_list_link"
|
47
|
+
href="class_list.html">
|
48
|
+
|
49
|
+
<svg width="24" height="24">
|
50
|
+
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
|
51
|
+
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
|
52
|
+
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
|
53
|
+
</svg>
|
54
|
+
</a>
|
55
|
+
|
56
|
+
</div>
|
57
|
+
<div class="clear"></div>
|
58
|
+
</div>
|
59
|
+
|
60
|
+
<div id="content"><div id='filecontents'>lib/simple/service.rb<br/> 39 why a Hash? It feels much better if Simple::Service.actions returns<br/> an array of names.</div></div>
|
61
|
+
|
62
|
+
<div id="footer">
|
63
|
+
Generated on Wed Dec 4 22:57:12 2019 by
|
64
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
65
|
+
0.9.20 (ruby-2.5.1).
|
66
|
+
</div>
|
67
|
+
|
68
|
+
</div>
|
69
|
+
</body>
|
70
|
+
</html>
|