simple-service 0.1.5 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.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>
|