mbrao 1.2.3 → 1.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +3 -0
- data/CHANGELOG.md +5 -0
- data/doc/ActionView/Template/Handlers/MbraoTemplate.html +87 -20
- data/doc/ActionView/Template/Handlers.html +1 -1
- data/doc/HTML/Pipeline/KramdownFilter.html +1 -1
- data/doc/HTML/Pipeline.html +1 -1
- data/doc/HTML.html +1 -1
- data/doc/Mbrao/Author.html +337 -67
- data/doc/Mbrao/Content.html +1268 -444
- data/doc/Mbrao/ContentPublicInterface.html +24 -20
- data/doc/Mbrao/Exceptions/InvalidDate.html +1 -1
- data/doc/Mbrao/Exceptions/InvalidMetadata.html +1 -1
- data/doc/Mbrao/Exceptions/Parsing.html +1 -1
- data/doc/Mbrao/Exceptions/Rendering.html +1 -1
- data/doc/Mbrao/Exceptions/UnavailableLocalization.html +1 -1
- data/doc/Mbrao/Exceptions/Unimplemented.html +1 -1
- data/doc/Mbrao/Exceptions/UnknownEngine.html +1 -1
- data/doc/Mbrao/Exceptions.html +1 -1
- data/doc/Mbrao/Parser.html +11 -11
- data/doc/Mbrao/ParsingEngines/Base.html +25 -24
- data/doc/Mbrao/ParsingEngines/PlainText.html +17 -16
- data/doc/Mbrao/ParsingEngines.html +1 -1
- data/doc/Mbrao/PublicInterface/ClassMethods.html +312 -19
- data/doc/Mbrao/PublicInterface.html +1 -1
- data/doc/Mbrao/RenderingEngines/Base.html +7 -7
- data/doc/Mbrao/RenderingEngines/HtmlPipeline.html +27 -15
- data/doc/Mbrao/RenderingEngines.html +1 -1
- data/doc/Mbrao/Validations/ClassMethods.html +21 -21
- data/doc/Mbrao/Validations.html +1 -1
- data/doc/Mbrao/Version.html +3 -3
- data/doc/Mbrao.html +1 -1
- data/doc/_index.html +1 -1
- data/doc/file.README.html +1 -1
- data/doc/index.html +1 -1
- data/doc/method_list.html +86 -62
- data/doc/top-level-namespace.html +1 -1
- data/lib/mbrao/author.rb +18 -4
- data/lib/mbrao/content.rb +93 -44
- data/lib/mbrao/integrations/rails.rb +12 -5
- data/lib/mbrao/parser.rb +23 -0
- data/lib/mbrao/parsing_engines/base.rb +12 -11
- data/lib/mbrao/parsing_engines/plain_text.rb +29 -23
- data/lib/mbrao/rendering_engines/base.rb +4 -4
- data/lib/mbrao/rendering_engines/html_pipeline.rb +7 -2
- data/lib/mbrao/version.rb +2 -2
- data/spec/mbrao/author_spec.rb +32 -16
- data/spec/mbrao/content_spec.rb +144 -85
- data/spec/mbrao/integrations/rails_spec.rb +14 -0
- data/spec/mbrao/parser_spec.rb +19 -19
- data/spec/mbrao/parsing_engines/base_spec.rb +12 -12
- data/spec/mbrao/parsing_engines/plain_text_spec.rb +21 -21
- data/spec/mbrao/rendering_engines/base_spec.rb +2 -2
- data/spec/mbrao/rendering_engines/html_pipeline_spec.rb +31 -31
- metadata +2 -2
data/doc/Mbrao/Author.html
CHANGED
@@ -320,7 +320,30 @@
|
|
320
320
|
<li class="public ">
|
321
321
|
<span class="summary_signature">
|
322
322
|
|
323
|
-
<a href="#
|
323
|
+
<a href="#as_json-instance_method" title="#as_json (instance method)">- (Hash) <strong>as_json</strong>(options = {}) </a>
|
324
|
+
|
325
|
+
|
326
|
+
|
327
|
+
</span>
|
328
|
+
|
329
|
+
|
330
|
+
|
331
|
+
|
332
|
+
|
333
|
+
|
334
|
+
|
335
|
+
|
336
|
+
|
337
|
+
<span class="summary_desc"><div class='inline'><p>Returns the author as an Hash.</p>
|
338
|
+
</div></span>
|
339
|
+
|
340
|
+
</li>
|
341
|
+
|
342
|
+
|
343
|
+
<li class="public ">
|
344
|
+
<span class="summary_signature">
|
345
|
+
|
346
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">- (Author) <strong>initialize</strong>(name, email = nil, website = nil, image = nil, metadata = nil) </a>
|
324
347
|
|
325
348
|
|
326
349
|
|
@@ -351,7 +374,7 @@
|
|
351
374
|
<div class="method_details first">
|
352
375
|
<h3 class="signature first" id="initialize-instance_method">
|
353
376
|
|
354
|
-
- (<tt><span class='object_link'><a href="" title="Mbrao::Author (class)">Author</a></span></tt>) <strong>initialize</strong>(name, email = nil, website = nil, image = nil, metadata = nil
|
377
|
+
- (<tt><span class='object_link'><a href="" title="Mbrao::Author (class)">Author</a></span></tt>) <strong>initialize</strong>(name, email = nil, website = nil, image = nil, metadata = nil)
|
355
378
|
|
356
379
|
|
357
380
|
|
@@ -451,23 +474,6 @@
|
|
451
474
|
|
452
475
|
</li>
|
453
476
|
|
454
|
-
<li>
|
455
|
-
|
456
|
-
<span class='name'>uid</span>
|
457
|
-
|
458
|
-
|
459
|
-
<span class='type'>(<tt>String</tt>)</span>
|
460
|
-
|
461
|
-
|
462
|
-
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
463
|
-
|
464
|
-
|
465
|
-
—
|
466
|
-
<div class='inline'><p>A unique ID for this post. This is only for client uses.</p>
|
467
|
-
</div>
|
468
|
-
|
469
|
-
</li>
|
470
|
-
|
471
477
|
</ul>
|
472
478
|
|
473
479
|
|
@@ -477,25 +483,23 @@
|
|
477
483
|
<pre class="lines">
|
478
484
|
|
479
485
|
|
486
|
+
37
|
480
487
|
38
|
481
488
|
39
|
482
489
|
40
|
483
490
|
41
|
484
491
|
42
|
485
|
-
43
|
486
|
-
44
|
487
|
-
45</pre>
|
492
|
+
43</pre>
|
488
493
|
</td>
|
489
494
|
<td>
|
490
|
-
<pre class="code"><span class="info file"># File 'lib/mbrao/author.rb', line
|
495
|
+
<pre class="code"><span class="info file"># File 'lib/mbrao/author.rb', line 37</span>
|
491
496
|
|
492
|
-
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='
|
497
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
493
498
|
<span class='ivar'>@name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_ensure_string'>ensure_string</span>
|
494
499
|
<span class='ivar'>@email</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_email?'>is_email?</span><span class='lparen'>(</span><span class='id identifier rubyid_email'>email</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
495
500
|
<span class='ivar'>@website</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_website'>website</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
496
501
|
<span class='ivar'>@image</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_image'>image</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
497
502
|
<span class='ivar'>@metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_ensure_hash'>ensure_hash</span><span class='lparen'>(</span><span class='symbol'>:indifferent</span><span class='rparen'>)</span>
|
498
|
-
<span class='ivar'>@uid</span> <span class='op'>=</span> <span class='id identifier rubyid_uid'>uid</span>
|
499
503
|
<span class='kw'>end</span></pre>
|
500
504
|
</td>
|
501
505
|
</tr>
|
@@ -589,7 +593,21 @@
|
|
589
593
|
57
|
590
594
|
58
|
591
595
|
59
|
592
|
-
60
|
596
|
+
60
|
597
|
+
61
|
598
|
+
62
|
599
|
+
63
|
600
|
+
64
|
601
|
+
65
|
602
|
+
66
|
603
|
+
67
|
604
|
+
68
|
605
|
+
69
|
606
|
+
70
|
607
|
+
71
|
608
|
+
72
|
609
|
+
73
|
610
|
+
74</pre>
|
593
611
|
</td>
|
594
612
|
<td>
|
595
613
|
<pre class="code"><span class="info file"># File 'lib/mbrao/author.rb', line 22</span>
|
@@ -609,14 +627,25 @@
|
|
609
627
|
</span> <span class='comment'># @param website [String] The website of the author.
|
610
628
|
</span> <span class='comment'># @param image [String] The URL of the avatar of the author.
|
611
629
|
</span> <span class='comment'># @param metadata [HashWithIndifferentAccess] The full list of metadata of this author.
|
612
|
-
</span> <span class='
|
613
|
-
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
630
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
614
631
|
<span class='ivar'>@name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_ensure_string'>ensure_string</span>
|
615
632
|
<span class='ivar'>@email</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_email?'>is_email?</span><span class='lparen'>(</span><span class='id identifier rubyid_email'>email</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
616
633
|
<span class='ivar'>@website</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_website'>website</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
617
634
|
<span class='ivar'>@image</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_image'>image</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
618
635
|
<span class='ivar'>@metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_ensure_hash'>ensure_hash</span><span class='lparen'>(</span><span class='symbol'>:indifferent</span><span class='rparen'>)</span>
|
619
|
-
|
636
|
+
<span class='kw'>end</span>
|
637
|
+
|
638
|
+
<span class='comment'># Returns the author as an Hash.
|
639
|
+
</span> <span class='comment'>#
|
640
|
+
</span> <span class='comment'># @param options [Hash] Options to modify behavior of the serialization.
|
641
|
+
</span> <span class='comment'># The only supported value are:
|
642
|
+
</span> <span class='comment'>#
|
643
|
+
</span> <span class='comment'># * `:exclude`, an array of attributes to skip.
|
644
|
+
</span> <span class='comment'># * `:exclude_empty`, if to exclude nil values. Default is `false`.
|
645
|
+
</span> <span class='comment'># @return [Hash] An hash with all attributes.
|
646
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
647
|
+
<span class='id identifier rubyid_keys'>keys</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='symbol'>:uid</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:email</span><span class='comma'>,</span> <span class='symbol'>:website</span><span class='comma'>,</span> <span class='symbol'>:image</span><span class='comma'>,</span> <span class='symbol'>:metadata</span><span class='rbracket'>]</span>
|
648
|
+
<span class='op'>::</span><span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='kw'>self</span><span class='comma'>,</span> <span class='id identifier rubyid_keys'>keys</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
620
649
|
<span class='kw'>end</span>
|
621
650
|
|
622
651
|
<span class='comment'># Creates an author from a `Hash`.
|
@@ -627,7 +656,10 @@
|
|
627
656
|
<span class='kw'>if</span> <span class='id identifier rubyid_data'>data</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> <span class='kw'>then</span>
|
628
657
|
<span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='const'>HashWithIndifferentAccess</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
629
658
|
<span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:uid</span><span class='rparen'>)</span>
|
630
|
-
<span class='
|
659
|
+
<span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:metadata</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
660
|
+
<span class='id identifier rubyid_author'>author</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:name</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:email</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:website</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:image</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
661
|
+
<span class='id identifier rubyid_author'>author</span><span class='period'>.</span><span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_uid'>uid</span>
|
662
|
+
<span class='id identifier rubyid_author'>author</span>
|
631
663
|
<span class='kw'>else</span>
|
632
664
|
<span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
633
665
|
<span class='kw'>end</span>
|
@@ -720,7 +752,21 @@
|
|
720
752
|
57
|
721
753
|
58
|
722
754
|
59
|
723
|
-
60
|
755
|
+
60
|
756
|
+
61
|
757
|
+
62
|
758
|
+
63
|
759
|
+
64
|
760
|
+
65
|
761
|
+
66
|
762
|
+
67
|
763
|
+
68
|
764
|
+
69
|
765
|
+
70
|
766
|
+
71
|
767
|
+
72
|
768
|
+
73
|
769
|
+
74</pre>
|
724
770
|
</td>
|
725
771
|
<td>
|
726
772
|
<pre class="code"><span class="info file"># File 'lib/mbrao/author.rb', line 22</span>
|
@@ -740,14 +786,25 @@
|
|
740
786
|
</span> <span class='comment'># @param website [String] The website of the author.
|
741
787
|
</span> <span class='comment'># @param image [String] The URL of the avatar of the author.
|
742
788
|
</span> <span class='comment'># @param metadata [HashWithIndifferentAccess] The full list of metadata of this author.
|
743
|
-
</span> <span class='
|
744
|
-
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
789
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
745
790
|
<span class='ivar'>@name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_ensure_string'>ensure_string</span>
|
746
791
|
<span class='ivar'>@email</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_email?'>is_email?</span><span class='lparen'>(</span><span class='id identifier rubyid_email'>email</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
747
792
|
<span class='ivar'>@website</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_website'>website</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
748
793
|
<span class='ivar'>@image</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_image'>image</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
749
794
|
<span class='ivar'>@metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_ensure_hash'>ensure_hash</span><span class='lparen'>(</span><span class='symbol'>:indifferent</span><span class='rparen'>)</span>
|
750
|
-
|
795
|
+
<span class='kw'>end</span>
|
796
|
+
|
797
|
+
<span class='comment'># Returns the author as an Hash.
|
798
|
+
</span> <span class='comment'>#
|
799
|
+
</span> <span class='comment'># @param options [Hash] Options to modify behavior of the serialization.
|
800
|
+
</span> <span class='comment'># The only supported value are:
|
801
|
+
</span> <span class='comment'>#
|
802
|
+
</span> <span class='comment'># * `:exclude`, an array of attributes to skip.
|
803
|
+
</span> <span class='comment'># * `:exclude_empty`, if to exclude nil values. Default is `false`.
|
804
|
+
</span> <span class='comment'># @return [Hash] An hash with all attributes.
|
805
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
806
|
+
<span class='id identifier rubyid_keys'>keys</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='symbol'>:uid</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:email</span><span class='comma'>,</span> <span class='symbol'>:website</span><span class='comma'>,</span> <span class='symbol'>:image</span><span class='comma'>,</span> <span class='symbol'>:metadata</span><span class='rbracket'>]</span>
|
807
|
+
<span class='op'>::</span><span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='kw'>self</span><span class='comma'>,</span> <span class='id identifier rubyid_keys'>keys</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
751
808
|
<span class='kw'>end</span>
|
752
809
|
|
753
810
|
<span class='comment'># Creates an author from a `Hash`.
|
@@ -758,7 +815,10 @@
|
|
758
815
|
<span class='kw'>if</span> <span class='id identifier rubyid_data'>data</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> <span class='kw'>then</span>
|
759
816
|
<span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='const'>HashWithIndifferentAccess</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
760
817
|
<span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:uid</span><span class='rparen'>)</span>
|
761
|
-
<span class='
|
818
|
+
<span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:metadata</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
819
|
+
<span class='id identifier rubyid_author'>author</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:name</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:email</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:website</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:image</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
820
|
+
<span class='id identifier rubyid_author'>author</span><span class='period'>.</span><span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_uid'>uid</span>
|
821
|
+
<span class='id identifier rubyid_author'>author</span>
|
762
822
|
<span class='kw'>else</span>
|
763
823
|
<span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
764
824
|
<span class='kw'>end</span>
|
@@ -851,7 +911,21 @@
|
|
851
911
|
57
|
852
912
|
58
|
853
913
|
59
|
854
|
-
60
|
914
|
+
60
|
915
|
+
61
|
916
|
+
62
|
917
|
+
63
|
918
|
+
64
|
919
|
+
65
|
920
|
+
66
|
921
|
+
67
|
922
|
+
68
|
923
|
+
69
|
924
|
+
70
|
925
|
+
71
|
926
|
+
72
|
927
|
+
73
|
928
|
+
74</pre>
|
855
929
|
</td>
|
856
930
|
<td>
|
857
931
|
<pre class="code"><span class="info file"># File 'lib/mbrao/author.rb', line 22</span>
|
@@ -871,14 +945,25 @@
|
|
871
945
|
</span> <span class='comment'># @param website [String] The website of the author.
|
872
946
|
</span> <span class='comment'># @param image [String] The URL of the avatar of the author.
|
873
947
|
</span> <span class='comment'># @param metadata [HashWithIndifferentAccess] The full list of metadata of this author.
|
874
|
-
</span> <span class='
|
875
|
-
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
948
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
876
949
|
<span class='ivar'>@name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_ensure_string'>ensure_string</span>
|
877
950
|
<span class='ivar'>@email</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_email?'>is_email?</span><span class='lparen'>(</span><span class='id identifier rubyid_email'>email</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
878
951
|
<span class='ivar'>@website</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_website'>website</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
879
952
|
<span class='ivar'>@image</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_image'>image</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
880
953
|
<span class='ivar'>@metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_ensure_hash'>ensure_hash</span><span class='lparen'>(</span><span class='symbol'>:indifferent</span><span class='rparen'>)</span>
|
881
|
-
|
954
|
+
<span class='kw'>end</span>
|
955
|
+
|
956
|
+
<span class='comment'># Returns the author as an Hash.
|
957
|
+
</span> <span class='comment'>#
|
958
|
+
</span> <span class='comment'># @param options [Hash] Options to modify behavior of the serialization.
|
959
|
+
</span> <span class='comment'># The only supported value are:
|
960
|
+
</span> <span class='comment'>#
|
961
|
+
</span> <span class='comment'># * `:exclude`, an array of attributes to skip.
|
962
|
+
</span> <span class='comment'># * `:exclude_empty`, if to exclude nil values. Default is `false`.
|
963
|
+
</span> <span class='comment'># @return [Hash] An hash with all attributes.
|
964
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
965
|
+
<span class='id identifier rubyid_keys'>keys</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='symbol'>:uid</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:email</span><span class='comma'>,</span> <span class='symbol'>:website</span><span class='comma'>,</span> <span class='symbol'>:image</span><span class='comma'>,</span> <span class='symbol'>:metadata</span><span class='rbracket'>]</span>
|
966
|
+
<span class='op'>::</span><span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='kw'>self</span><span class='comma'>,</span> <span class='id identifier rubyid_keys'>keys</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
882
967
|
<span class='kw'>end</span>
|
883
968
|
|
884
969
|
<span class='comment'># Creates an author from a `Hash`.
|
@@ -889,7 +974,10 @@
|
|
889
974
|
<span class='kw'>if</span> <span class='id identifier rubyid_data'>data</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> <span class='kw'>then</span>
|
890
975
|
<span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='const'>HashWithIndifferentAccess</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
891
976
|
<span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:uid</span><span class='rparen'>)</span>
|
892
|
-
<span class='
|
977
|
+
<span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:metadata</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
978
|
+
<span class='id identifier rubyid_author'>author</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:name</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:email</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:website</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:image</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
979
|
+
<span class='id identifier rubyid_author'>author</span><span class='period'>.</span><span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_uid'>uid</span>
|
980
|
+
<span class='id identifier rubyid_author'>author</span>
|
893
981
|
<span class='kw'>else</span>
|
894
982
|
<span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
895
983
|
<span class='kw'>end</span>
|
@@ -982,7 +1070,21 @@
|
|
982
1070
|
57
|
983
1071
|
58
|
984
1072
|
59
|
985
|
-
60
|
1073
|
+
60
|
1074
|
+
61
|
1075
|
+
62
|
1076
|
+
63
|
1077
|
+
64
|
1078
|
+
65
|
1079
|
+
66
|
1080
|
+
67
|
1081
|
+
68
|
1082
|
+
69
|
1083
|
+
70
|
1084
|
+
71
|
1085
|
+
72
|
1086
|
+
73
|
1087
|
+
74</pre>
|
986
1088
|
</td>
|
987
1089
|
<td>
|
988
1090
|
<pre class="code"><span class="info file"># File 'lib/mbrao/author.rb', line 22</span>
|
@@ -1002,14 +1104,25 @@
|
|
1002
1104
|
</span> <span class='comment'># @param website [String] The website of the author.
|
1003
1105
|
</span> <span class='comment'># @param image [String] The URL of the avatar of the author.
|
1004
1106
|
</span> <span class='comment'># @param metadata [HashWithIndifferentAccess] The full list of metadata of this author.
|
1005
|
-
</span> <span class='
|
1006
|
-
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
1107
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
1007
1108
|
<span class='ivar'>@name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_ensure_string'>ensure_string</span>
|
1008
1109
|
<span class='ivar'>@email</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_email?'>is_email?</span><span class='lparen'>(</span><span class='id identifier rubyid_email'>email</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
1009
1110
|
<span class='ivar'>@website</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_website'>website</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
1010
1111
|
<span class='ivar'>@image</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_image'>image</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
1011
1112
|
<span class='ivar'>@metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_ensure_hash'>ensure_hash</span><span class='lparen'>(</span><span class='symbol'>:indifferent</span><span class='rparen'>)</span>
|
1012
|
-
|
1113
|
+
<span class='kw'>end</span>
|
1114
|
+
|
1115
|
+
<span class='comment'># Returns the author as an Hash.
|
1116
|
+
</span> <span class='comment'>#
|
1117
|
+
</span> <span class='comment'># @param options [Hash] Options to modify behavior of the serialization.
|
1118
|
+
</span> <span class='comment'># The only supported value are:
|
1119
|
+
</span> <span class='comment'>#
|
1120
|
+
</span> <span class='comment'># * `:exclude`, an array of attributes to skip.
|
1121
|
+
</span> <span class='comment'># * `:exclude_empty`, if to exclude nil values. Default is `false`.
|
1122
|
+
</span> <span class='comment'># @return [Hash] An hash with all attributes.
|
1123
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1124
|
+
<span class='id identifier rubyid_keys'>keys</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='symbol'>:uid</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:email</span><span class='comma'>,</span> <span class='symbol'>:website</span><span class='comma'>,</span> <span class='symbol'>:image</span><span class='comma'>,</span> <span class='symbol'>:metadata</span><span class='rbracket'>]</span>
|
1125
|
+
<span class='op'>::</span><span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='kw'>self</span><span class='comma'>,</span> <span class='id identifier rubyid_keys'>keys</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
1013
1126
|
<span class='kw'>end</span>
|
1014
1127
|
|
1015
1128
|
<span class='comment'># Creates an author from a `Hash`.
|
@@ -1020,7 +1133,10 @@
|
|
1020
1133
|
<span class='kw'>if</span> <span class='id identifier rubyid_data'>data</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> <span class='kw'>then</span>
|
1021
1134
|
<span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='const'>HashWithIndifferentAccess</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
1022
1135
|
<span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:uid</span><span class='rparen'>)</span>
|
1023
|
-
<span class='
|
1136
|
+
<span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:metadata</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
1137
|
+
<span class='id identifier rubyid_author'>author</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:name</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:email</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:website</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:image</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
1138
|
+
<span class='id identifier rubyid_author'>author</span><span class='period'>.</span><span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_uid'>uid</span>
|
1139
|
+
<span class='id identifier rubyid_author'>author</span>
|
1024
1140
|
<span class='kw'>else</span>
|
1025
1141
|
<span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
1026
1142
|
<span class='kw'>end</span>
|
@@ -1113,7 +1229,21 @@
|
|
1113
1229
|
57
|
1114
1230
|
58
|
1115
1231
|
59
|
1116
|
-
60
|
1232
|
+
60
|
1233
|
+
61
|
1234
|
+
62
|
1235
|
+
63
|
1236
|
+
64
|
1237
|
+
65
|
1238
|
+
66
|
1239
|
+
67
|
1240
|
+
68
|
1241
|
+
69
|
1242
|
+
70
|
1243
|
+
71
|
1244
|
+
72
|
1245
|
+
73
|
1246
|
+
74</pre>
|
1117
1247
|
</td>
|
1118
1248
|
<td>
|
1119
1249
|
<pre class="code"><span class="info file"># File 'lib/mbrao/author.rb', line 22</span>
|
@@ -1133,14 +1263,25 @@
|
|
1133
1263
|
</span> <span class='comment'># @param website [String] The website of the author.
|
1134
1264
|
</span> <span class='comment'># @param image [String] The URL of the avatar of the author.
|
1135
1265
|
</span> <span class='comment'># @param metadata [HashWithIndifferentAccess] The full list of metadata of this author.
|
1136
|
-
</span> <span class='
|
1137
|
-
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
1266
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
1138
1267
|
<span class='ivar'>@name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_ensure_string'>ensure_string</span>
|
1139
1268
|
<span class='ivar'>@email</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_email?'>is_email?</span><span class='lparen'>(</span><span class='id identifier rubyid_email'>email</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
1140
1269
|
<span class='ivar'>@website</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_website'>website</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
1141
1270
|
<span class='ivar'>@image</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_image'>image</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
1142
1271
|
<span class='ivar'>@metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_ensure_hash'>ensure_hash</span><span class='lparen'>(</span><span class='symbol'>:indifferent</span><span class='rparen'>)</span>
|
1143
|
-
|
1272
|
+
<span class='kw'>end</span>
|
1273
|
+
|
1274
|
+
<span class='comment'># Returns the author as an Hash.
|
1275
|
+
</span> <span class='comment'>#
|
1276
|
+
</span> <span class='comment'># @param options [Hash] Options to modify behavior of the serialization.
|
1277
|
+
</span> <span class='comment'># The only supported value are:
|
1278
|
+
</span> <span class='comment'>#
|
1279
|
+
</span> <span class='comment'># * `:exclude`, an array of attributes to skip.
|
1280
|
+
</span> <span class='comment'># * `:exclude_empty`, if to exclude nil values. Default is `false`.
|
1281
|
+
</span> <span class='comment'># @return [Hash] An hash with all attributes.
|
1282
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1283
|
+
<span class='id identifier rubyid_keys'>keys</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='symbol'>:uid</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:email</span><span class='comma'>,</span> <span class='symbol'>:website</span><span class='comma'>,</span> <span class='symbol'>:image</span><span class='comma'>,</span> <span class='symbol'>:metadata</span><span class='rbracket'>]</span>
|
1284
|
+
<span class='op'>::</span><span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='kw'>self</span><span class='comma'>,</span> <span class='id identifier rubyid_keys'>keys</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
1144
1285
|
<span class='kw'>end</span>
|
1145
1286
|
|
1146
1287
|
<span class='comment'># Creates an author from a `Hash`.
|
@@ -1151,7 +1292,10 @@
|
|
1151
1292
|
<span class='kw'>if</span> <span class='id identifier rubyid_data'>data</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> <span class='kw'>then</span>
|
1152
1293
|
<span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='const'>HashWithIndifferentAccess</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
1153
1294
|
<span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:uid</span><span class='rparen'>)</span>
|
1154
|
-
<span class='
|
1295
|
+
<span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:metadata</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
1296
|
+
<span class='id identifier rubyid_author'>author</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:name</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:email</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:website</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:image</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
1297
|
+
<span class='id identifier rubyid_author'>author</span><span class='period'>.</span><span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_uid'>uid</span>
|
1298
|
+
<span class='id identifier rubyid_author'>author</span>
|
1155
1299
|
<span class='kw'>else</span>
|
1156
1300
|
<span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
1157
1301
|
<span class='kw'>end</span>
|
@@ -1244,7 +1388,21 @@
|
|
1244
1388
|
57
|
1245
1389
|
58
|
1246
1390
|
59
|
1247
|
-
60
|
1391
|
+
60
|
1392
|
+
61
|
1393
|
+
62
|
1394
|
+
63
|
1395
|
+
64
|
1396
|
+
65
|
1397
|
+
66
|
1398
|
+
67
|
1399
|
+
68
|
1400
|
+
69
|
1401
|
+
70
|
1402
|
+
71
|
1403
|
+
72
|
1404
|
+
73
|
1405
|
+
74</pre>
|
1248
1406
|
</td>
|
1249
1407
|
<td>
|
1250
1408
|
<pre class="code"><span class="info file"># File 'lib/mbrao/author.rb', line 22</span>
|
@@ -1264,14 +1422,25 @@
|
|
1264
1422
|
</span> <span class='comment'># @param website [String] The website of the author.
|
1265
1423
|
</span> <span class='comment'># @param image [String] The URL of the avatar of the author.
|
1266
1424
|
</span> <span class='comment'># @param metadata [HashWithIndifferentAccess] The full list of metadata of this author.
|
1267
|
-
</span> <span class='
|
1268
|
-
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
1425
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
1269
1426
|
<span class='ivar'>@name</span> <span class='op'>=</span> <span class='id identifier rubyid_name'>name</span><span class='period'>.</span><span class='id identifier rubyid_ensure_string'>ensure_string</span>
|
1270
1427
|
<span class='ivar'>@email</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_email?'>is_email?</span><span class='lparen'>(</span><span class='id identifier rubyid_email'>email</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_email'>email</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
1271
1428
|
<span class='ivar'>@website</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_website'>website</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_website'>website</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
1272
1429
|
<span class='ivar'>@image</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_is_url?'>is_url?</span><span class='lparen'>(</span><span class='id identifier rubyid_image'>image</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='id identifier rubyid_image'>image</span> <span class='op'>:</span> <span class='kw'>nil</span>
|
1273
1430
|
<span class='ivar'>@metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_ensure_hash'>ensure_hash</span><span class='lparen'>(</span><span class='symbol'>:indifferent</span><span class='rparen'>)</span>
|
1274
|
-
|
1431
|
+
<span class='kw'>end</span>
|
1432
|
+
|
1433
|
+
<span class='comment'># Returns the author as an Hash.
|
1434
|
+
</span> <span class='comment'>#
|
1435
|
+
</span> <span class='comment'># @param options [Hash] Options to modify behavior of the serialization.
|
1436
|
+
</span> <span class='comment'># The only supported value are:
|
1437
|
+
</span> <span class='comment'>#
|
1438
|
+
</span> <span class='comment'># * `:exclude`, an array of attributes to skip.
|
1439
|
+
</span> <span class='comment'># * `:exclude_empty`, if to exclude nil values. Default is `false`.
|
1440
|
+
</span> <span class='comment'># @return [Hash] An hash with all attributes.
|
1441
|
+
</span> <span class='kw'>def</span> <span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1442
|
+
<span class='id identifier rubyid_keys'>keys</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='symbol'>:uid</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:email</span><span class='comma'>,</span> <span class='symbol'>:website</span><span class='comma'>,</span> <span class='symbol'>:image</span><span class='comma'>,</span> <span class='symbol'>:metadata</span><span class='rbracket'>]</span>
|
1443
|
+
<span class='op'>::</span><span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='kw'>self</span><span class='comma'>,</span> <span class='id identifier rubyid_keys'>keys</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
1275
1444
|
<span class='kw'>end</span>
|
1276
1445
|
|
1277
1446
|
<span class='comment'># Creates an author from a `Hash`.
|
@@ -1282,7 +1451,10 @@
|
|
1282
1451
|
<span class='kw'>if</span> <span class='id identifier rubyid_data'>data</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> <span class='kw'>then</span>
|
1283
1452
|
<span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='const'>HashWithIndifferentAccess</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
1284
1453
|
<span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:uid</span><span class='rparen'>)</span>
|
1285
|
-
<span class='
|
1454
|
+
<span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:metadata</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
1455
|
+
<span class='id identifier rubyid_author'>author</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:name</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:email</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:website</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:image</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
1456
|
+
<span class='id identifier rubyid_author'>author</span><span class='period'>.</span><span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_uid'>uid</span>
|
1457
|
+
<span class='id identifier rubyid_author'>author</span>
|
1286
1458
|
<span class='kw'>else</span>
|
1287
1459
|
<span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
1288
1460
|
<span class='kw'>end</span>
|
@@ -1361,24 +1533,30 @@
|
|
1361
1533
|
<pre class="lines">
|
1362
1534
|
|
1363
1535
|
|
1364
|
-
|
1365
|
-
|
1366
|
-
|
1367
|
-
|
1368
|
-
|
1369
|
-
|
1370
|
-
|
1371
|
-
|
1372
|
-
|
1536
|
+
62
|
1537
|
+
63
|
1538
|
+
64
|
1539
|
+
65
|
1540
|
+
66
|
1541
|
+
67
|
1542
|
+
68
|
1543
|
+
69
|
1544
|
+
70
|
1545
|
+
71
|
1546
|
+
72
|
1547
|
+
73</pre>
|
1373
1548
|
</td>
|
1374
1549
|
<td>
|
1375
|
-
<pre class="code"><span class="info file"># File 'lib/mbrao/author.rb', line
|
1550
|
+
<pre class="code"><span class="info file"># File 'lib/mbrao/author.rb', line 62</span>
|
1376
1551
|
|
1377
1552
|
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_create'>create</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
1378
1553
|
<span class='kw'>if</span> <span class='id identifier rubyid_data'>data</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> <span class='kw'>then</span>
|
1379
1554
|
<span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='const'>HashWithIndifferentAccess</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
1380
1555
|
<span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:uid</span><span class='rparen'>)</span>
|
1381
|
-
<span class='
|
1556
|
+
<span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:metadata</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
1557
|
+
<span class='id identifier rubyid_author'>author</span> <span class='op'>=</span> <span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:name</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:email</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:website</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='symbol'>:image</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
1558
|
+
<span class='id identifier rubyid_author'>author</span><span class='period'>.</span><span class='id identifier rubyid_uid'>uid</span> <span class='op'>=</span> <span class='id identifier rubyid_uid'>uid</span>
|
1559
|
+
<span class='id identifier rubyid_author'>author</span>
|
1382
1560
|
<span class='kw'>else</span>
|
1383
1561
|
<span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Author</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
1384
1562
|
<span class='kw'>end</span>
|
@@ -1386,6 +1564,98 @@
|
|
1386
1564
|
</td>
|
1387
1565
|
</tr>
|
1388
1566
|
</table>
|
1567
|
+
</div>
|
1568
|
+
|
1569
|
+
</div>
|
1570
|
+
|
1571
|
+
<div id="instance_method_details" class="method_details_list">
|
1572
|
+
<h2>Instance Method Details</h2>
|
1573
|
+
|
1574
|
+
|
1575
|
+
<div class="method_details first">
|
1576
|
+
<h3 class="signature first" id="as_json-instance_method">
|
1577
|
+
|
1578
|
+
- (<tt>Hash</tt>) <strong>as_json</strong>(options = {})
|
1579
|
+
|
1580
|
+
|
1581
|
+
|
1582
|
+
|
1583
|
+
|
1584
|
+
</h3><div class="docstring">
|
1585
|
+
<div class="discussion">
|
1586
|
+
<p>Returns the author as an Hash.</p>
|
1587
|
+
|
1588
|
+
|
1589
|
+
</div>
|
1590
|
+
</div>
|
1591
|
+
<div class="tags">
|
1592
|
+
<p class="tag_title">Parameters:</p>
|
1593
|
+
<ul class="param">
|
1594
|
+
|
1595
|
+
<li>
|
1596
|
+
|
1597
|
+
<span class='name'>options</span>
|
1598
|
+
|
1599
|
+
|
1600
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
1601
|
+
|
1602
|
+
|
1603
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
1604
|
+
|
1605
|
+
|
1606
|
+
—
|
1607
|
+
<div class='inline'><p>Options to modify behavior of the serialization.
|
1608
|
+
The only supported value are:</p>
|
1609
|
+
|
1610
|
+
<ul>
|
1611
|
+
<li><code>:exclude</code>, an array of attributes to skip.</li>
|
1612
|
+
<li><code>:exclude_empty</code>, if to exclude nil values. Default is <code>false</code>.</li>
|
1613
|
+
</ul>
|
1614
|
+
</div>
|
1615
|
+
|
1616
|
+
</li>
|
1617
|
+
|
1618
|
+
</ul>
|
1619
|
+
|
1620
|
+
<p class="tag_title">Returns:</p>
|
1621
|
+
<ul class="return">
|
1622
|
+
|
1623
|
+
<li>
|
1624
|
+
|
1625
|
+
|
1626
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
1627
|
+
|
1628
|
+
|
1629
|
+
|
1630
|
+
—
|
1631
|
+
<div class='inline'><p>An hash with all attributes.</p>
|
1632
|
+
</div>
|
1633
|
+
|
1634
|
+
</li>
|
1635
|
+
|
1636
|
+
</ul>
|
1637
|
+
|
1638
|
+
</div><table class="source_code">
|
1639
|
+
<tr>
|
1640
|
+
<td>
|
1641
|
+
<pre class="lines">
|
1642
|
+
|
1643
|
+
|
1644
|
+
53
|
1645
|
+
54
|
1646
|
+
55
|
1647
|
+
56</pre>
|
1648
|
+
</td>
|
1649
|
+
<td>
|
1650
|
+
<pre class="code"><span class="info file"># File 'lib/mbrao/author.rb', line 53</span>
|
1651
|
+
|
1652
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1653
|
+
<span class='id identifier rubyid_keys'>keys</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='symbol'>:uid</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='comma'>,</span> <span class='symbol'>:email</span><span class='comma'>,</span> <span class='symbol'>:website</span><span class='comma'>,</span> <span class='symbol'>:image</span><span class='comma'>,</span> <span class='symbol'>:metadata</span><span class='rbracket'>]</span>
|
1654
|
+
<span class='op'>::</span><span class='const'>Mbrao</span><span class='op'>::</span><span class='const'>Parser</span><span class='period'>.</span><span class='id identifier rubyid_as_json'>as_json</span><span class='lparen'>(</span><span class='kw'>self</span><span class='comma'>,</span> <span class='id identifier rubyid_keys'>keys</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
1655
|
+
<span class='kw'>end</span></pre>
|
1656
|
+
</td>
|
1657
|
+
</tr>
|
1658
|
+
</table>
|
1389
1659
|
</div>
|
1390
1660
|
|
1391
1661
|
</div>
|
@@ -1393,7 +1663,7 @@
|
|
1393
1663
|
</div>
|
1394
1664
|
|
1395
1665
|
<div id="footer">
|
1396
|
-
Generated on
|
1666
|
+
Generated on Sun Nov 24 14:07:03 2013 by
|
1397
1667
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
1398
1668
|
0.8.7.3 (ruby-2.0.0).
|
1399
1669
|
</div>
|