isimud 0.7.0 → 1.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.rspec +1 -2
  4. data/.ruby-version +1 -1
  5. data/.yardoc/checksums +10 -10
  6. data/.yardoc/object_types +0 -0
  7. data/.yardoc/objects/root.dat +0 -0
  8. data/Gemfile +2 -1
  9. data/Gemfile.lock +63 -73
  10. data/LICENSE.txt +19 -0
  11. data/README.md +51 -3
  12. data/Rakefile +5 -0
  13. data/doc/Isimud/BunnyClient.html +882 -179
  14. data/doc/Isimud/Client.html +236 -18
  15. data/doc/Isimud/Event.html +211 -95
  16. data/doc/Isimud/EventListener.html +325 -307
  17. data/doc/Isimud/EventObserver/ClassMethods.html +14 -14
  18. data/doc/Isimud/EventObserver.html +418 -36
  19. data/doc/Isimud/Generators/ConfigGenerator.html +2 -2
  20. data/doc/Isimud/Generators/InitializerGenerator.html +2 -2
  21. data/doc/Isimud/Generators.html +2 -2
  22. data/doc/Isimud/Logging.html +3 -3
  23. data/doc/Isimud/ModelWatcher/ClassMethods.html +3 -3
  24. data/doc/Isimud/ModelWatcher.html +2 -2
  25. data/doc/Isimud/Railtie.html +2 -2
  26. data/doc/Isimud/TestClient/Queue.html +374 -71
  27. data/doc/Isimud/TestClient.html +169 -161
  28. data/doc/Isimud.html +80 -76
  29. data/doc/_index.html +5 -2
  30. data/doc/file.LICENSE.html +73 -0
  31. data/doc/file.README.html +131 -7
  32. data/doc/file_list.html +3 -0
  33. data/doc/index.html +131 -7
  34. data/doc/method_list.html +183 -105
  35. data/doc/top-level-namespace.html +2 -2
  36. data/isimud.gemspec +18 -16
  37. data/lib/isimud/bunny_client.rb +85 -32
  38. data/lib/isimud/client.rb +23 -7
  39. data/lib/isimud/event.rb +11 -14
  40. data/lib/isimud/event_listener.rb +123 -65
  41. data/lib/isimud/event_observer.rb +70 -10
  42. data/lib/isimud/model_watcher.rb +1 -1
  43. data/lib/isimud/test_client.rb +54 -26
  44. data/lib/isimud/version.rb +1 -1
  45. data/lib/isimud.rb +1 -1
  46. data/spec/internal/app/models/company.rb +8 -10
  47. data/spec/internal/app/models/user.rb +11 -1
  48. data/spec/internal/db/schema.rb +5 -0
  49. data/spec/isimud/bunny_client_spec.rb +21 -9
  50. data/spec/isimud/client_spec.rb +40 -0
  51. data/spec/isimud/event_listener_spec.rb +50 -22
  52. data/spec/isimud/event_observer_spec.rb +107 -16
  53. data/spec/isimud/model_watcher_spec.rb +18 -23
  54. data/spec/isimud/test_client_spec.rb +43 -8
  55. data/spec/isimud_spec.rb +2 -2
  56. data/spec/spec_helper.rb +2 -0
  57. metadata +19 -35
  58. checksums.yaml.gz.sig +0 -0
  59. data/certs/gfeil.pem +0 -21
  60. data/release +0 -31
  61. data.tar.gz.sig +0 -0
  62. metadata.gz.sig +0 -2
@@ -101,7 +101,25 @@
101
101
  </dl>
102
102
  <div class="clear"></div>
103
103
 
104
+ <h2>Overview</h2><div class="docstring">
105
+ <div class="discussion">
106
+
107
+ <p>Interface for Bunny RabbitMQ client</p>
108
+
109
+
110
+ </div>
111
+ </div>
112
+ <div class="tags">
113
+
104
114
 
115
+ <p class="tag_title">See Also:</p>
116
+ <ul class="see">
117
+
118
+ <li><a href="http://rubybunny.info" target="_parent" title="http://rubybunny.info">http://rubybunny.info</a></li>
119
+
120
+ </ul>
121
+
122
+ </div>
105
123
  <h2>Constant Summary</h2>
106
124
 
107
125
  <dl class="constants">
@@ -170,7 +188,7 @@
170
188
  <li class="public ">
171
189
  <span class="summary_signature">
172
190
 
173
- <a href="#bind-instance_method" title="#bind (instance method)">- (Object) <strong>bind</strong>(queue_name, exchange_name, *routing_keys, &amp;block) </a>
191
+ <a href="#bind-instance_method" title="#bind (instance method)">- (Bunny::Consumer) <strong>bind</strong>(queue_name, exchange_name, *routing_keys) {|payload| ... }</a>
174
192
 
175
193
 
176
194
 
@@ -184,7 +202,10 @@
184
202
 
185
203
 
186
204
 
187
- <span class="summary_desc"><div class='inline'></div></span>
205
+ <span class="summary_desc"><div class='inline'>
206
+ <p>Convenience method that finds or creates a named queue, binds to an
207
+ exchange, and subscribes to messages.</p>
208
+ </div></span>
188
209
 
189
210
  </li>
190
211
 
@@ -192,7 +213,7 @@
192
213
  <li class="public ">
193
214
  <span class="summary_signature">
194
215
 
195
- <a href="#channel-instance_method" title="#channel (instance method)">- (Object) <strong>channel</strong> </a>
216
+ <a href="#channel-instance_method" title="#channel (instance method)">- (Bunny::Channel) <strong>channel</strong> </a>
196
217
 
197
218
 
198
219
 
@@ -206,7 +227,10 @@
206
227
 
207
228
 
208
229
 
209
- <span class="summary_desc"><div class='inline'></div></span>
230
+ <span class="summary_desc"><div class='inline'>
231
+ <p>Open a new, thread-specific AMQP connection channel, or return the current
232
+ channel for this thread if it exists and is currently open.</p>
233
+ </div></span>
210
234
 
211
235
  </li>
212
236
 
@@ -228,7 +252,9 @@
228
252
 
229
253
 
230
254
 
231
- <span class="summary_desc"><div class='inline'></div></span>
255
+ <span class="summary_desc"><div class='inline'>
256
+ <p>Close the AMQP connection and clear it from the instance.</p>
257
+ </div></span>
232
258
 
233
259
  </li>
234
260
 
@@ -236,7 +262,7 @@
236
262
  <li class="public ">
237
263
  <span class="summary_signature">
238
264
 
239
- <a href="#connected%3F-instance_method" title="#connected? (instance method)">- (Boolean) <strong>connected?</strong> </a>
265
+ <a href="#connected%3F-instance_method" title="#connected? (instance method)">- (Boolean<sup>?</sup>) <strong>connected?</strong> </a>
240
266
 
241
267
 
242
268
 
@@ -250,7 +276,10 @@
250
276
 
251
277
 
252
278
 
253
- <span class="summary_desc"><div class='inline'></div></span>
279
+ <span class="summary_desc"><div class='inline'>
280
+ <p>Determine if a Bunny connection is currently established to the AMQP
281
+ server.</p>
282
+ </div></span>
254
283
 
255
284
  </li>
256
285
 
@@ -258,7 +287,7 @@
258
287
  <li class="public ">
259
288
  <span class="summary_signature">
260
289
 
261
- <a href="#connection-instance_method" title="#connection (instance method)">- (Object) <strong>connection</strong> </a>
290
+ <a href="#connection-instance_method" title="#connection (instance method)">- (Bunny::Session) <strong>connection</strong> </a>
262
291
 
263
292
 
264
293
 
@@ -274,7 +303,10 @@
274
303
 
275
304
 
276
305
 
277
- <span class="summary_desc"><div class='inline'></div></span>
306
+ <span class="summary_desc"><div class='inline'>
307
+ <p>Establish a connection to the AMQP server, or return the current connection
308
+ if one already exists.</p>
309
+ </div></span>
278
310
 
279
311
  </li>
280
312
 
@@ -282,7 +314,7 @@
282
314
  <li class="public ">
283
315
  <span class="summary_signature">
284
316
 
285
- <a href="#create_queue-instance_method" title="#create_queue (instance method)">- (Object) <strong>create_queue</strong>(queue_name, exchange_name, options = {}, &amp;block) </a>
317
+ <a href="#create_queue-instance_method" title="#create_queue (instance method)">- (Bunny::Queue) <strong>create_queue</strong>(queue_name, exchange_name, options = {}) </a>
286
318
 
287
319
 
288
320
 
@@ -296,7 +328,9 @@
296
328
 
297
329
 
298
330
 
299
- <span class="summary_desc"><div class='inline'></div></span>
331
+ <span class="summary_desc"><div class='inline'>
332
+ <p>Find or create a named queue and bind it to the specified exchange.</p>
333
+ </div></span>
300
334
 
301
335
  </li>
302
336
 
@@ -304,7 +338,7 @@
304
338
  <li class="public ">
305
339
  <span class="summary_signature">
306
340
 
307
- <a href="#delete_queue-instance_method" title="#delete_queue (instance method)">- (Object) <strong>delete_queue</strong>(queue_name) </a>
341
+ <a href="#delete_queue-instance_method" title="#delete_queue (instance method)">- (AMQ::Protocol::Queue::DeleteOk) <strong>delete_queue</strong>(queue_name) </a>
308
342
 
309
343
 
310
344
 
@@ -318,7 +352,9 @@
318
352
 
319
353
 
320
354
 
321
- <span class="summary_desc"><div class='inline'></div></span>
355
+ <span class="summary_desc"><div class='inline'>
356
+ <p>Permanently delete the queue from the AMQP server.</p>
357
+ </div></span>
322
358
 
323
359
  </li>
324
360
 
@@ -326,7 +362,7 @@
326
362
  <li class="public ">
327
363
  <span class="summary_signature">
328
364
 
329
- <a href="#exception_handler-instance_method" title="#exception_handler (instance method)">- (Object) <strong>exception_handler</strong>(&amp;block) </a>
365
+ <a href="#find_queue-instance_method" title="#find_queue (instance method)">- (Object) <strong>find_queue</strong>(queue_name, options = {durable: true}) </a>
330
366
 
331
367
 
332
368
 
@@ -340,7 +376,9 @@
340
376
 
341
377
 
342
378
 
343
- <span class="summary_desc"><div class='inline'></div></span>
379
+ <span class="summary_desc"><div class='inline'>
380
+ <p>Look up a queue by name, or create it if it does not already exist.</p>
381
+ </div></span>
344
382
 
345
383
  </li>
346
384
 
@@ -365,7 +403,7 @@
365
403
 
366
404
 
367
405
  <span class="summary_desc"><div class='inline'>
368
- <p>A new instance of BunnyClient.</p>
406
+ <p>Initialize a new BunnyClient instance.</p>
369
407
  </div></span>
370
408
 
371
409
  </li>
@@ -388,7 +426,10 @@
388
426
 
389
427
 
390
428
 
391
- <span class="summary_desc"><div class='inline'></div></span>
429
+ <span class="summary_desc"><div class='inline'>
430
+ <p>Publish a message to the specified exchange, which is declared as a
431
+ durable, topic exchange.</p>
432
+ </div></span>
392
433
 
393
434
  </li>
394
435
 
@@ -396,7 +437,7 @@
396
437
  <li class="public ">
397
438
  <span class="summary_signature">
398
439
 
399
- <a href="#reconnect-instance_method" title="#reconnect (instance method)">- (Object) <strong>reconnect</strong> </a>
440
+ <a href="#reconnect-instance_method" title="#reconnect (instance method)">- (Bunny::Session) <strong>reconnect</strong> </a>
400
441
 
401
442
 
402
443
 
@@ -410,7 +451,9 @@
410
451
 
411
452
 
412
453
 
413
- <span class="summary_desc"><div class='inline'></div></span>
454
+ <span class="summary_desc"><div class='inline'>
455
+ <p>Close and reopen the AMQP connection.</p>
456
+ </div></span>
414
457
 
415
458
  </li>
416
459
 
@@ -432,7 +475,33 @@
432
475
 
433
476
 
434
477
 
435
- <span class="summary_desc"><div class='inline'></div></span>
478
+ <span class="summary_desc"><div class='inline'>
479
+ <p>Reset this client by closing all channels for the connection.</p>
480
+ </div></span>
481
+
482
+ </li>
483
+
484
+
485
+ <li class="public ">
486
+ <span class="summary_signature">
487
+
488
+ <a href="#subscribe-instance_method" title="#subscribe (instance method)">- (Object) <strong>subscribe</strong>(queue, options = {manual_ack: true}) {|payload| ... }</a>
489
+
490
+
491
+
492
+ </span>
493
+
494
+
495
+
496
+
497
+
498
+
499
+
500
+
501
+
502
+ <span class="summary_desc"><div class='inline'>
503
+ <p>Subscribe to messages on the Bunny queue.</p>
504
+ </div></span>
436
505
 
437
506
  </li>
438
507
 
@@ -449,6 +518,11 @@
449
518
 
450
519
 
451
520
 
521
+ <h3 class="inherited">Methods inherited from <span class='object_link'><a href="Client.html" title="Isimud::Client (class)">Client</a></span></h3>
522
+ <p class="inherited"><span class='object_link'><a href="Client.html#on_exception-instance_method" title="Isimud::Client#on_exception (method)">#on_exception</a></span>, <span class='object_link'><a href="Client.html#run_exception_handlers-instance_method" title="Isimud::Client#run_exception_handlers (method)">#run_exception_handlers</a></span></p>
523
+
524
+
525
+
452
526
 
453
527
 
454
528
 
@@ -472,13 +546,61 @@
472
546
  </h3><div class="docstring">
473
547
  <div class="discussion">
474
548
 
475
- <p>Returns a new instance of BunnyClient</p>
549
+ <p>Initialize a new BunnyClient instance. Note that a connection is not
550
+ established until any other method is called</p>
476
551
 
477
552
 
478
553
  </div>
479
554
  </div>
480
555
  <div class="tags">
556
+ <p class="tag_title">Parameters:</p>
557
+ <ul class="param">
558
+
559
+ <li>
560
+
561
+ <span class='name'>_url</span>
562
+
563
+
564
+ <span class='type'>(<tt>String</tt>, <tt>Hash</tt>)</span>
565
+
566
+
567
+ <em class="default">(defaults to: <tt>nil</tt>)</em>
568
+
569
+
570
+ &mdash;
571
+ <div class='inline'>
572
+ <p>Server URL or options hash</p>
573
+ </div>
574
+
575
+ </li>
576
+
577
+ <li>
578
+
579
+ <span class='name'>_bunny_options</span>
580
+
581
+
582
+ <span class='type'>(<tt>Hash</tt>)</span>
583
+
584
+
585
+ <em class="default">(defaults to: <tt>{}</tt>)</em>
586
+
587
+
588
+ &mdash;
589
+ <div class='inline'>
590
+ <p>optional Bunny connection options</p>
591
+ </div>
592
+
593
+ </li>
481
594
 
595
+ </ul>
596
+
597
+
598
+ <p class="tag_title">See Also:</p>
599
+ <ul class="see">
600
+
601
+ <li>for connection options</li>
602
+
603
+ </ul>
482
604
 
483
605
  </div><table class="source_code">
484
606
  <tr>
@@ -486,14 +608,14 @@
486
608
  <pre class="lines">
487
609
 
488
610
 
489
- 10
490
- 11
491
- 12
492
- 13
493
- 14</pre>
611
+ 18
612
+ 19
613
+ 20
614
+ 21
615
+ 22</pre>
494
616
  </td>
495
617
  <td>
496
- <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 10</span>
618
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 18</span>
497
619
 
498
620
  <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid__url'>_url</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid__bunny_options'>_bunny_options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
499
621
  <span class='id identifier rubyid_log'>log</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Isimud::BunnyClient.initialize: options = </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid__bunny_options'>_bunny_options</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
@@ -538,12 +660,12 @@
538
660
  <pre class="lines">
539
661
 
540
662
 
541
- 8
542
- 9
543
- 10</pre>
663
+ 11
664
+ 12
665
+ 13</pre>
544
666
  </td>
545
667
  <td>
546
- <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 8</span>
668
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 11</span>
547
669
 
548
670
  <span class='kw'>def</span> <span class='id identifier rubyid_url'>url</span>
549
671
  <span class='ivar'>@url</span>
@@ -563,33 +685,137 @@
563
685
  <div class="method_details first">
564
686
  <h3 class="signature first" id="bind-instance_method">
565
687
 
566
- - (<tt>Object</tt>) <strong>bind</strong>(queue_name, exchange_name, *routing_keys, &amp;block)
688
+ - (<tt>Bunny::Consumer</tt>) <strong>bind</strong>(queue_name, exchange_name, *routing_keys) {|payload| ... }
689
+
690
+
691
+
692
+
567
693
 
694
+ </h3><div class="docstring">
695
+ <div class="discussion">
696
+
697
+ <p>Convenience method that finds or creates a named queue, binds to an
698
+ exchange, and subscribes to messages. If a block is provided, it will be
699
+ called by the consumer each time a message is received.</p>
568
700
 
701
+
702
+ </div>
703
+ </div>
704
+ <div class="tags">
705
+ <p class="tag_title">Parameters:</p>
706
+ <ul class="param">
707
+
708
+ <li>
709
+
710
+ <span class='name'>queue_name</span>
711
+
712
+
713
+ <span class='type'>(<tt>String</tt>)</span>
714
+
715
+
716
+
717
+ &mdash;
718
+ <div class='inline'>
719
+ <p>name of the queue</p>
720
+ </div>
721
+
722
+ </li>
723
+
724
+ <li>
725
+
726
+ <span class='name'>exchange_name</span>
727
+
728
+
729
+ <span class='type'>(<tt>String</tt>)</span>
730
+
731
+
732
+
733
+ &mdash;
734
+ <div class='inline'>
735
+ <p>name of the AMQP exchange. Note that existing exchanges must be declared as
736
+ Topic exchanges; otherwise, an error will occur</p>
737
+ </div>
738
+
739
+ </li>
740
+
741
+ <li>
742
+
743
+ <span class='name'>routing_keys</span>
744
+
745
+
746
+ <span class='type'>(<tt>Array&lt;String&gt;</tt>)</span>
747
+
748
+
749
+
750
+ &mdash;
751
+ <div class='inline'>
752
+ <p>list of routing keys to be bound to the queue for the specified exchange.</p>
753
+ </div>
754
+
755
+ </li>
569
756
 
757
+ </ul>
570
758
 
759
+ <p class="tag_title">Yield Parameters:</p>
760
+ <ul class="yieldparam">
761
+
762
+ <li>
763
+
764
+ <span class='name'>payload</span>
765
+
766
+
767
+ <span class='type'>(<tt>String</tt>)</span>
768
+
769
+
770
+
771
+ &mdash;
772
+ <div class='inline'>
773
+ <p>message text</p>
774
+ </div>
775
+
776
+ </li>
777
+
778
+ </ul>
779
+ <p class="tag_title">Returns:</p>
780
+ <ul class="return">
781
+
782
+ <li>
783
+
784
+
785
+ <span class='type'>(<tt>Bunny::Consumer</tt>)</span>
786
+
787
+
788
+
789
+ &mdash;
790
+ <div class='inline'>
791
+ <p>Bunny consumer interface</p>
792
+ </div>
793
+
794
+ </li>
571
795
 
572
- </h3><table class="source_code">
796
+ </ul>
797
+
798
+ </div><table class="source_code">
573
799
  <tr>
574
800
  <td>
575
801
  <pre class="lines">
576
802
 
577
803
 
578
- 16
579
- 17
580
- 18
581
- 19
582
- 20
583
- 21</pre>
804
+ 33
805
+ 34
806
+ 35
807
+ 36
808
+ 37
809
+ 38</pre>
584
810
  </td>
585
811
  <td>
586
- <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 16</span>
812
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 33</span>
587
813
 
588
814
  <span class='kw'>def</span> <span class='id identifier rubyid_bind'>bind</span><span class='lparen'>(</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='comma'>,</span> <span class='id identifier rubyid_exchange_name'>exchange_name</span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_routing_keys'>routing_keys</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
589
- <span class='id identifier rubyid_create_queue'>create_queue</span><span class='lparen'>(</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='comma'>,</span> <span class='id identifier rubyid_exchange_name'>exchange_name</span><span class='comma'>,</span>
590
- <span class='label'>queue_options:</span> <span class='lbrace'>{</span><span class='label'>durable:</span> <span class='kw'>true</span><span class='rbrace'>}</span><span class='comma'>,</span>
591
- <span class='label'>routing_keys:</span> <span class='id identifier rubyid_routing_keys'>routing_keys</span><span class='comma'>,</span>
592
- <span class='label'>subscribe_options:</span> <span class='lbrace'>{</span><span class='label'>manual_ack:</span> <span class='kw'>true</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
815
+ <span class='id identifier rubyid_queue'>queue</span> <span class='op'>=</span> <span class='id identifier rubyid_create_queue'>create_queue</span><span class='lparen'>(</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='comma'>,</span> <span class='id identifier rubyid_exchange_name'>exchange_name</span><span class='comma'>,</span>
816
+ <span class='label'>queue_options:</span> <span class='lbrace'>{</span><span class='label'>durable:</span> <span class='kw'>true</span><span class='rbrace'>}</span><span class='comma'>,</span>
817
+ <span class='label'>routing_keys:</span> <span class='id identifier rubyid_routing_keys'>routing_keys</span><span class='rparen'>)</span>
818
+ <span class='id identifier rubyid_subscribe'>subscribe</span><span class='lparen'>(</span><span class='id identifier rubyid_queue'>queue</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_block_given?'>block_given?</span>
593
819
  <span class='kw'>end</span></pre>
594
820
  </td>
595
821
  </tr>
@@ -599,31 +825,64 @@
599
825
  <div class="method_details ">
600
826
  <h3 class="signature " id="channel-instance_method">
601
827
 
602
- - (<tt>Object</tt>) <strong>channel</strong>
828
+ - (<tt>Bunny::Channel</tt>) <strong>channel</strong>
829
+
830
+
603
831
 
604
832
 
605
833
 
834
+ </h3><div class="docstring">
835
+ <div class="discussion">
836
+
837
+ <p>Open a new, thread-specific AMQP connection channel, or return the current
838
+ channel for this thread if it exists</p>
839
+
840
+ <pre class="code ruby"><code class="ruby">and is currently open. New channels are created with publisher confirms enabled. Messages will be prefetched
841
+ according to Isimud.prefetch_count when declared.</code></pre>
606
842
 
843
+
844
+ </div>
845
+ </div>
846
+ <div class="tags">
847
+
848
+ <p class="tag_title">Returns:</p>
849
+ <ul class="return">
850
+
851
+ <li>
852
+
853
+
854
+ <span class='type'>(<tt>Bunny::Channel</tt>)</span>
855
+
856
+
857
+
858
+ &mdash;
859
+ <div class='inline'>
860
+ <p>channel instance.</p>
861
+ </div>
862
+
863
+ </li>
607
864
 
608
- </h3><table class="source_code">
865
+ </ul>
866
+
867
+ </div><table class="source_code">
609
868
  <tr>
610
869
  <td>
611
870
  <pre class="lines">
612
871
 
613
872
 
614
- 61
615
- 62
616
- 63
617
- 64
618
- 65
619
- 66
620
- 67
621
- 68
622
- 69
623
- 70</pre>
873
+ 107
874
+ 108
875
+ 109
876
+ 110
877
+ 111
878
+ 112
879
+ 113
880
+ 114
881
+ 115
882
+ 116</pre>
624
883
  </td>
625
884
  <td>
626
- <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 61</span>
885
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 107</span>
627
886
 
628
887
  <span class='kw'>def</span> <span class='id identifier rubyid_channel'>channel</span>
629
888
  <span class='kw'>if</span> <span class='lparen'>(</span><span class='id identifier rubyid_channel'>channel</span> <span class='op'>=</span> <span class='const'>Thread</span><span class='period'>.</span><span class='id identifier rubyid_current'>current</span><span class='lbracket'>[</span><span class='const'>CHANNEL_KEY</span><span class='rbracket'>]</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_try'>try</span><span class='lparen'>(</span><span class='symbol'>:open?</span><span class='rparen'>)</span>
@@ -649,20 +908,49 @@
649
908
 
650
909
 
651
910
 
652
- </h3><table class="source_code">
911
+ </h3><div class="docstring">
912
+ <div class="discussion">
913
+
914
+ <p>Close the AMQP connection and clear it from the instance.</p>
915
+
916
+
917
+ </div>
918
+ </div>
919
+ <div class="tags">
920
+
921
+ <p class="tag_title">Returns:</p>
922
+ <ul class="return">
923
+
924
+ <li>
925
+
926
+
927
+ <span class='type'></span>
928
+
929
+
930
+
931
+
932
+ <div class='inline'>
933
+ <p>nil</p>
934
+ </div>
935
+
936
+ </li>
937
+
938
+ </ul>
939
+
940
+ </div><table class="source_code">
653
941
  <tr>
654
942
  <td>
655
943
  <pre class="lines">
656
944
 
657
945
 
658
- 86
659
- 87
660
- 88
661
- 89
662
- 90</pre>
946
+ 132
947
+ 133
948
+ 134
949
+ 135
950
+ 136</pre>
663
951
  </td>
664
952
  <td>
665
- <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 86</span>
953
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 132</span>
666
954
 
667
955
  <span class='kw'>def</span> <span class='id identifier rubyid_close'>close</span>
668
956
  <span class='id identifier rubyid_connection'>connection</span><span class='period'>.</span><span class='id identifier rubyid_close'>close</span>
@@ -677,7 +965,7 @@
677
965
  <div class="method_details ">
678
966
  <h3 class="signature " id="connected?-instance_method">
679
967
 
680
- - (<tt>Boolean</tt>) <strong>connected?</strong>
968
+ - (<tt>Boolean</tt><sup>?</sup>) <strong>connected?</strong>
681
969
 
682
970
 
683
971
 
@@ -686,6 +974,10 @@
686
974
  </h3><div class="docstring">
687
975
  <div class="discussion">
688
976
 
977
+ <p>Determine if a Bunny connection is currently established to the AMQP
978
+ server. but is closed or closing, or nil if no connection has been
979
+ established.</p>
980
+
689
981
 
690
982
  </div>
691
983
  </div>
@@ -697,10 +989,16 @@
697
989
  <li>
698
990
 
699
991
 
700
- <span class='type'>(<tt>Boolean</tt>)</span>
992
+ <span class='type'>(<tt>Boolean</tt>, <tt>nil</tt>)</span>
701
993
 
702
994
 
703
995
 
996
+ &mdash;
997
+ <div class='inline'>
998
+ <p>true if a connection was established and is active or starting, false if a
999
+ connection exists</p>
1000
+ </div>
1001
+
704
1002
  </li>
705
1003
 
706
1004
  </ul>
@@ -711,12 +1009,12 @@
711
1009
  <pre class="lines">
712
1010
 
713
1011
 
714
- 82
715
- 83
716
- 84</pre>
1012
+ 126
1013
+ 127
1014
+ 128</pre>
717
1015
  </td>
718
1016
  <td>
719
- <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 82</span>
1017
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 126</span>
720
1018
 
721
1019
  <span class='kw'>def</span> <span class='id identifier rubyid_connected?'>connected?</span>
722
1020
  <span class='ivar'>@connection</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@connection</span><span class='period'>.</span><span class='id identifier rubyid_open?'>open?</span>
@@ -729,7 +1027,7 @@
729
1027
  <div class="method_details ">
730
1028
  <h3 class="signature " id="connection-instance_method">
731
1029
 
732
- - (<tt>Object</tt>) <strong>connection</strong>
1030
+ - (<tt>Bunny::Session</tt>) <strong>connection</strong>
733
1031
 
734
1032
 
735
1033
 
@@ -739,94 +1037,215 @@
739
1037
 
740
1038
 
741
1039
 
742
- </h3><table class="source_code">
743
- <tr>
744
- <td>
745
- <pre class="lines">
746
-
1040
+ </h3><div class="docstring">
1041
+ <div class="discussion">
1042
+
1043
+ <p>Establish a connection to the AMQP server, or return the current connection
1044
+ if one already exists</p>
747
1045
 
748
- 53
749
- 54
750
- 55</pre>
751
- </td>
752
- <td>
753
- <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 53</span>
754
1046
 
755
- <span class='kw'>def</span> <span class='id identifier rubyid_connection'>connection</span>
756
- <span class='ivar'>@connection</span> <span class='op'>||=</span> <span class='op'>::</span><span class='const'>Bunny</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='ivar'>@bunny_options</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_tap'>tap</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='symbol'>:start</span><span class='rparen'>)</span>
757
- <span class='kw'>end</span></pre>
758
- </td>
759
- </tr>
760
- </table>
1047
+ </div>
1048
+ </div>
1049
+ <div class="tags">
1050
+
1051
+ <p class="tag_title">Returns:</p>
1052
+ <ul class="return">
1053
+
1054
+ <li>
1055
+
1056
+
1057
+ <span class='type'>(<tt>Bunny::Session</tt>)</span>
1058
+
1059
+
1060
+
1061
+ </li>
1062
+
1063
+ </ul>
1064
+
1065
+ </div><table class="source_code">
1066
+ <tr>
1067
+ <td>
1068
+ <pre class="lines">
1069
+
1070
+
1071
+ 95
1072
+ 96
1073
+ 97</pre>
1074
+ </td>
1075
+ <td>
1076
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 95</span>
1077
+
1078
+ <span class='kw'>def</span> <span class='id identifier rubyid_connection'>connection</span>
1079
+ <span class='ivar'>@connection</span> <span class='op'>||=</span> <span class='op'>::</span><span class='const'>Bunny</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='ivar'>@bunny_options</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_tap'>tap</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='symbol'>:start</span><span class='rparen'>)</span>
1080
+ <span class='kw'>end</span></pre>
1081
+ </td>
1082
+ </tr>
1083
+ </table>
761
1084
  </div>
762
1085
 
763
1086
  <div class="method_details ">
764
1087
  <h3 class="signature " id="create_queue-instance_method">
765
1088
 
766
- - (<tt>Object</tt>) <strong>create_queue</strong>(queue_name, exchange_name, options = {}, &amp;block)
1089
+ - (<tt>Bunny::Queue</tt>) <strong>create_queue</strong>(queue_name, exchange_name, options = {})
1090
+
1091
+
1092
+
1093
+
767
1094
 
1095
+ </h3><div class="docstring">
1096
+ <div class="discussion">
1097
+
1098
+ <p>Find or create a named queue and bind it to the specified exchange</p>
768
1099
 
1100
+
1101
+ </div>
1102
+ </div>
1103
+ <div class="tags">
1104
+ <p class="tag_title">Parameters:</p>
1105
+ <ul class="param">
1106
+
1107
+ <li>
1108
+
1109
+ <span class='name'>queue_name</span>
1110
+
1111
+
1112
+ <span class='type'>(<tt>String</tt>)</span>
1113
+
1114
+
1115
+
1116
+ &mdash;
1117
+ <div class='inline'>
1118
+ <p>name of the queue</p>
1119
+ </div>
1120
+
1121
+ </li>
769
1122
 
1123
+ <li>
1124
+
1125
+ <span class='name'>exchange_name</span>
1126
+
1127
+
1128
+ <span class='type'>(<tt>String</tt>)</span>
1129
+
1130
+
1131
+
1132
+ &mdash;
1133
+ <div class='inline'>
1134
+ <p>name of the AMQP exchange. Note that pre-existing exchanges must be
1135
+ declared as Topic exchanges; otherwise, an error will occur</p>
1136
+ </div>
1137
+
1138
+ </li>
1139
+
1140
+ <li>
1141
+
1142
+ <span class='name'>options</span>
1143
+
1144
+
1145
+ <span class='type'>(<tt>Hash</tt>)</span>
1146
+
1147
+
1148
+ <em class="default">(defaults to: <tt>{}</tt>)</em>
1149
+
1150
+
1151
+ &mdash;
1152
+ <div class='inline'>
1153
+ <p>queue declaration options</p>
1154
+ </div>
1155
+
1156
+ </li>
1157
+
1158
+ </ul>
770
1159
 
771
1160
 
772
- </h3><table class="source_code">
1161
+
1162
+
1163
+
1164
+
1165
+
1166
+
1167
+ <p class="tag_title">Options Hash (<tt>options</tt>):</p>
1168
+ <ul class="option">
1169
+
1170
+ <li>
1171
+ <span class="name">:queue_options</span>
1172
+ <span class="type">(<tt>Boolean</tt>)</span>
1173
+ <span class="default">
1174
+
1175
+ &mdash; default:
1176
+ <tt>{durable: true}</tt>
1177
+
1178
+ </span>
1179
+
1180
+ &mdash; <div class='inline'>
1181
+ <p>queue declaration options – @see Bunny::Channel#queue</p>
1182
+ </div>
1183
+
1184
+ </li>
1185
+
1186
+ <li>
1187
+ <span class="name">:routing_keys</span>
1188
+ <span class="type">(<tt>Array&lt;String&gt;</tt>)</span>
1189
+ <span class="default">
1190
+
1191
+ &mdash; default:
1192
+ <tt>[]</tt>
1193
+
1194
+ </span>
1195
+
1196
+ &mdash; <div class='inline'>
1197
+ <p>routing keys to be bound to the queue. Use “*” to match any 1 word in a
1198
+ route segment. Use “#” to match 0 or more words in a segment.</p>
1199
+ </div>
1200
+
1201
+ </li>
1202
+
1203
+ </ul>
1204
+
1205
+
1206
+ <p class="tag_title">Returns:</p>
1207
+ <ul class="return">
1208
+
1209
+ <li>
1210
+
1211
+
1212
+ <span class='type'>(<tt>Bunny::Queue</tt>)</span>
1213
+
1214
+
1215
+
1216
+ &mdash;
1217
+ <div class='inline'>
1218
+ <p>Bunny queue</p>
1219
+ </div>
1220
+
1221
+ </li>
1222
+
1223
+ </ul>
1224
+
1225
+ </div><table class="source_code">
773
1226
  <tr>
774
1227
  <td>
775
1228
  <pre class="lines">
776
1229
 
777
1230
 
778
- 23
779
- 24
780
- 25
781
- 26
782
- 27
783
- 28
784
- 29
785
- 30
786
- 31
787
- 32
788
- 33
789
- 34
790
- 35
791
- 36
792
- 37
793
- 38
794
- 39
795
- 40
796
- 41
797
- 42
798
- 43
799
- 44
800
- 45
801
- 46
802
- 47</pre>
1231
+ 50
1232
+ 51
1233
+ 52
1234
+ 53
1235
+ 54
1236
+ 55
1237
+ 56
1238
+ 57</pre>
803
1239
  </td>
804
1240
  <td>
805
- <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 23</span>
806
-
807
- <span class='kw'>def</span> <span class='id identifier rubyid_create_queue'>create_queue</span><span class='lparen'>(</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='comma'>,</span> <span class='id identifier rubyid_exchange_name'>exchange_name</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
808
- <span class='id identifier rubyid_queue_options'>queue_options</span> <span class='op'>=</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:queue_options</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
809
- <span class='id identifier rubyid_routing_keys'>routing_keys</span> <span class='op'>=</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:routing_keys</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
810
- <span class='id identifier rubyid_subscribe_options'>subscribe_options</span> <span class='op'>=</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:subscribe_options</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
811
- <span class='id identifier rubyid_log'>log</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Isimud: create_queue </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='embexpr_end'>}</span><span class='tstring_content'>: queue_options=</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_queue_options'>queue_options</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'> routing_keys=</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_routing_keys'>routing_keys</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>,</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'> subscribe_options=</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_subscribe_options'>subscribe_options</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
812
- <span class='id identifier rubyid_current_channel'>current_channel</span> <span class='op'>=</span> <span class='id identifier rubyid_channel'>channel</span>
813
- <span class='id identifier rubyid_queue'>queue</span> <span class='op'>=</span> <span class='id identifier rubyid_current_channel'>current_channel</span><span class='period'>.</span><span class='id identifier rubyid_queue'>queue</span><span class='lparen'>(</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='comma'>,</span> <span class='id identifier rubyid_queue_options'>queue_options</span><span class='rparen'>)</span>
814
- <span class='id identifier rubyid_routing_keys'>routing_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_queue'>queue</span><span class='period'>.</span><span class='id identifier rubyid_bind'>bind</span><span class='lparen'>(</span><span class='id identifier rubyid_exchange_name'>exchange_name</span><span class='comma'>,</span> <span class='label'>routing_key:</span> <span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='label'>nowait:</span> <span class='kw'>false</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
815
- <span class='id identifier rubyid_queue'>queue</span><span class='period'>.</span><span class='id identifier rubyid_subscribe'>subscribe</span><span class='lparen'>(</span><span class='id identifier rubyid_subscribe_options'>subscribe_options</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='comma'>,</span> <span class='id identifier rubyid_properties'>properties</span><span class='comma'>,</span> <span class='id identifier rubyid_payload'>payload</span><span class='op'>|</span>
816
- <span class='kw'>begin</span>
817
- <span class='id identifier rubyid_log'>log</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Isimud: queue </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='embexpr_end'>}</span><span class='tstring_content'> received </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='period'>.</span><span class='id identifier rubyid_delivery_tag'>delivery_tag</span><span class='embexpr_end'>}</span><span class='tstring_content'> routing_key: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='period'>.</span><span class='id identifier rubyid_routing_key'>routing_key</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
818
- <span class='const'>Thread</span><span class='period'>.</span><span class='id identifier rubyid_current'>current</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>isimud_queue_name</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_queue_name'>queue_name</span>
819
- <span class='const'>Thread</span><span class='period'>.</span><span class='id identifier rubyid_current'>current</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>isimud_delivery_info</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_delivery_info'>delivery_info</span>
820
- <span class='const'>Thread</span><span class='period'>.</span><span class='id identifier rubyid_current'>current</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>isimud_properties</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_properties'>properties</span>
821
- <span class='id identifier rubyid_block'>block</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_payload'>payload</span><span class='rparen'>)</span>
822
- <span class='id identifier rubyid_log'>log</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Isimud: queue </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='embexpr_end'>}</span><span class='tstring_content'> finished with </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='period'>.</span><span class='id identifier rubyid_delivery_tag'>delivery_tag</span><span class='embexpr_end'>}</span><span class='tstring_content'>, acknowledging</span><span class='tstring_end'>&quot;</span></span>
823
- <span class='id identifier rubyid_current_channel'>current_channel</span><span class='period'>.</span><span class='id identifier rubyid_ack'>ack</span><span class='lparen'>(</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='period'>.</span><span class='id identifier rubyid_delivery_tag'>delivery_tag</span><span class='rparen'>)</span>
824
- <span class='kw'>rescue</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_e'>e</span>
825
- <span class='id identifier rubyid_log'>log</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Isimud: queue </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='embexpr_end'>}</span><span class='tstring_content'> error processing </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='period'>.</span><span class='id identifier rubyid_delivery_tag'>delivery_tag</span><span class='embexpr_end'>}</span><span class='tstring_content'> payload </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_payload'>payload</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'>: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_message'>message</span><span class='embexpr_end'>}</span><span class='tstring_content'>\n </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_backtrace'>backtrace</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n </span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='symbol'>:warn</span><span class='rparen'>)</span>
826
- <span class='id identifier rubyid_current_channel'>current_channel</span><span class='period'>.</span><span class='id identifier rubyid_reject'>reject</span><span class='lparen'>(</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='period'>.</span><span class='id identifier rubyid_delivery_tag'>delivery_tag</span><span class='comma'>,</span> <span class='const'>Isimud</span><span class='period'>.</span><span class='id identifier rubyid_retry_failures'>retry_failures</span><span class='rparen'>)</span>
827
- <span class='id identifier rubyid_raise'>raise</span>
828
- <span class='kw'>end</span>
829
- <span class='kw'>end</span>
1241
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 50</span>
1242
+
1243
+ <span class='kw'>def</span> <span class='id identifier rubyid_create_queue'>create_queue</span><span class='lparen'>(</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='comma'>,</span> <span class='id identifier rubyid_exchange_name'>exchange_name</span><span class='comma'>,</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>
1244
+ <span class='id identifier rubyid_queue_options'>queue_options</span> <span class='op'>=</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:queue_options</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='lbrace'>{</span><span class='label'>durable:</span> <span class='kw'>true</span><span class='rbrace'>}</span>
1245
+ <span class='id identifier rubyid_routing_keys'>routing_keys</span> <span class='op'>=</span> <span class='id identifier rubyid_options'>options</span><span class='lbracket'>[</span><span class='symbol'>:routing_keys</span><span class='rbracket'>]</span> <span class='op'>||</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
1246
+ <span class='id identifier rubyid_log'>log</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Isimud::BunnyClient: create_queue </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='embexpr_end'>}</span><span class='tstring_content'>: queue_options=</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_queue_options'>queue_options</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
1247
+ <span class='id identifier rubyid_queue'>queue</span> <span class='op'>=</span> <span class='id identifier rubyid_find_queue'>find_queue</span><span class='lparen'>(</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='comma'>,</span> <span class='id identifier rubyid_queue_options'>queue_options</span><span class='rparen'>)</span>
1248
+ <span class='id identifier rubyid_bind_routing_keys'>bind_routing_keys</span><span class='lparen'>(</span><span class='id identifier rubyid_queue'>queue</span><span class='comma'>,</span> <span class='id identifier rubyid_exchange_name'>exchange_name</span><span class='comma'>,</span> <span class='id identifier rubyid_routing_keys'>routing_keys</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_routing_keys'>routing_keys</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span>
830
1249
  <span class='id identifier rubyid_queue'>queue</span>
831
1250
  <span class='kw'>end</span></pre>
832
1251
  </td>
@@ -837,27 +1256,77 @@
837
1256
  <div class="method_details ">
838
1257
  <h3 class="signature " id="delete_queue-instance_method">
839
1258
 
840
- - (<tt>Object</tt>) <strong>delete_queue</strong>(queue_name)
1259
+ - (<tt>AMQ::Protocol::Queue::DeleteOk</tt>) <strong>delete_queue</strong>(queue_name)
841
1260
 
842
1261
 
843
1262
 
844
1263
 
845
1264
 
846
- </h3><table class="source_code">
1265
+ </h3><div class="docstring">
1266
+ <div class="discussion">
1267
+
1268
+ <p>Permanently delete the queue from the AMQP server. Any messages present in
1269
+ the queue will be discarded.</p>
1270
+
1271
+
1272
+ </div>
1273
+ </div>
1274
+ <div class="tags">
1275
+ <p class="tag_title">Parameters:</p>
1276
+ <ul class="param">
1277
+
1278
+ <li>
1279
+
1280
+ <span class='name'>queue_name</span>
1281
+
1282
+
1283
+ <span class='type'>(<tt>String</tt>)</span>
1284
+
1285
+
1286
+
1287
+ &mdash;
1288
+ <div class='inline'>
1289
+ <p>queue name</p>
1290
+ </div>
1291
+
1292
+ </li>
1293
+
1294
+ </ul>
1295
+
1296
+ <p class="tag_title">Returns:</p>
1297
+ <ul class="return">
1298
+
1299
+ <li>
1300
+
1301
+
1302
+ <span class='type'>(<tt>AMQ::Protocol::Queue::DeleteOk</tt>)</span>
1303
+
1304
+
1305
+
1306
+ &mdash;
1307
+ <div class='inline'>
1308
+ <p>RabbitMQ response</p>
1309
+ </div>
1310
+
1311
+ </li>
1312
+
1313
+ </ul>
1314
+
1315
+ </div><table class="source_code">
847
1316
  <tr>
848
1317
  <td>
849
1318
  <pre class="lines">
850
1319
 
851
1320
 
852
- 49
853
- 50
854
- 51</pre>
1321
+ 89
1322
+ 90
1323
+ 91</pre>
855
1324
  </td>
856
1325
  <td>
857
- <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 49</span>
1326
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 89</span>
858
1327
 
859
1328
  <span class='kw'>def</span> <span class='id identifier rubyid_delete_queue'>delete_queue</span><span class='lparen'>(</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='rparen'>)</span>
860
- <span class='id identifier rubyid_channel'>channel</span><span class='period'>.</span><span class='id identifier rubyid_queue'>queue</span><span class='lparen'>(</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span>
1329
+ <span class='id identifier rubyid_channel'>channel</span><span class='period'>.</span><span class='id identifier rubyid_queue_delete'>queue_delete</span><span class='lparen'>(</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='rparen'>)</span>
861
1330
  <span class='kw'>end</span></pre>
862
1331
  </td>
863
1332
  </tr>
@@ -865,33 +1334,40 @@
865
1334
  </div>
866
1335
 
867
1336
  <div class="method_details ">
868
- <h3 class="signature " id="exception_handler-instance_method">
1337
+ <h3 class="signature " id="find_queue-instance_method">
869
1338
 
870
- - (<tt>Object</tt>) <strong>exception_handler</strong>(&amp;block)
1339
+ - (<tt>Object</tt>) <strong>find_queue</strong>(queue_name, options = {durable: true})
871
1340
 
872
1341
 
873
1342
 
874
1343
 
875
1344
 
876
- </h3><table class="source_code">
1345
+ </h3><div class="docstring">
1346
+ <div class="discussion">
1347
+
1348
+ <p>Look up a queue by name, or create it if it does not already exist.</p>
1349
+
1350
+
1351
+ </div>
1352
+ </div>
1353
+ <div class="tags">
1354
+
1355
+
1356
+ </div><table class="source_code">
877
1357
  <tr>
878
1358
  <td>
879
1359
  <pre class="lines">
880
1360
 
881
1361
 
882
- 76
883
- 77
884
- 78
885
- 79
886
- 80</pre>
1362
+ 156
1363
+ 157
1364
+ 158</pre>
887
1365
  </td>
888
1366
  <td>
889
- <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 76</span>
1367
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 156</span>
890
1368
 
891
- <span class='kw'>def</span> <span class='id identifier rubyid_exception_handler'>exception_handler</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
892
- <span class='id identifier rubyid_channel'>channel</span><span class='period'>.</span><span class='id identifier rubyid_on_uncaught_exception'>on_uncaught_exception</span> <span class='kw'>do</span>
893
- <span class='kw'>yield</span>
894
- <span class='kw'>end</span>
1369
+ <span class='kw'>def</span> <span class='id identifier rubyid_find_queue'>find_queue</span><span class='lparen'>(</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='label'>durable:</span> <span class='kw'>true</span><span class='rbrace'>}</span><span class='rparen'>)</span>
1370
+ <span class='id identifier rubyid_channel'>channel</span><span class='period'>.</span><span class='id identifier rubyid_queue'>queue</span><span class='lparen'>(</span><span class='id identifier rubyid_queue_name'>queue_name</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
895
1371
  <span class='kw'>end</span></pre>
896
1372
  </td>
897
1373
  </tr>
@@ -907,18 +1383,76 @@
907
1383
 
908
1384
 
909
1385
 
910
- </h3><table class="source_code">
1386
+ </h3><div class="docstring">
1387
+ <div class="discussion">
1388
+
1389
+ <p>Publish a message to the specified exchange, which is declared as a
1390
+ durable, topic exchange. Note that message</p>
1391
+
1392
+ <pre class="code ruby"><code class="ruby">is always persisted.</code></pre>
1393
+
1394
+
1395
+ </div>
1396
+ </div>
1397
+ <div class="tags">
1398
+ <p class="tag_title">Parameters:</p>
1399
+ <ul class="param">
1400
+
1401
+ <li>
1402
+
1403
+ <span class='name'>exchange</span>
1404
+
1405
+
1406
+ <span class='type'>(<tt>String</tt>)</span>
1407
+
1408
+
1409
+
1410
+ &mdash;
1411
+ <div class='inline'>
1412
+ <p>AMQP exchange name</p>
1413
+ </div>
1414
+
1415
+ </li>
1416
+
1417
+ <li>
1418
+
1419
+ <span class='name'>routing_key</span>
1420
+
1421
+
1422
+ <span class='type'>(<tt>String</tt>)</span>
1423
+
1424
+
1425
+
1426
+ &mdash;
1427
+ <div class='inline'>
1428
+ <p>message routing key. This should always be in the form of words separated
1429
+ by dots e.g. “user.goal.complete”</p>
1430
+ </div>
1431
+
1432
+ </li>
1433
+
1434
+ </ul>
1435
+
1436
+
1437
+ <p class="tag_title">See Also:</p>
1438
+ <ul class="see">
1439
+
1440
+ <li><a href="http://rubybunny.info/articles/exchanges.html" target="_parent" title="http://rubybunny.info/articles/exchanges.html">http://rubybunny.info/articles/exchanges.html</a></li>
1441
+
1442
+ </ul>
1443
+
1444
+ </div><table class="source_code">
911
1445
  <tr>
912
1446
  <td>
913
1447
  <pre class="lines">
914
1448
 
915
1449
 
916
- 92
917
- 93
918
- 94</pre>
1450
+ 144
1451
+ 145
1452
+ 146</pre>
919
1453
  </td>
920
1454
  <td>
921
- <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 92</span>
1455
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 144</span>
922
1456
 
923
1457
  <span class='kw'>def</span> <span class='id identifier rubyid_publish'>publish</span><span class='lparen'>(</span><span class='id identifier rubyid_exchange'>exchange</span><span class='comma'>,</span> <span class='id identifier rubyid_routing_key'>routing_key</span><span class='comma'>,</span> <span class='id identifier rubyid_payload'>payload</span><span class='rparen'>)</span>
924
1458
  <span class='id identifier rubyid_channel'>channel</span><span class='period'>.</span><span class='id identifier rubyid_topic'>topic</span><span class='lparen'>(</span><span class='id identifier rubyid_exchange'>exchange</span><span class='comma'>,</span> <span class='label'>durable:</span> <span class='kw'>true</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_publish'>publish</span><span class='lparen'>(</span><span class='id identifier rubyid_payload'>payload</span><span class='comma'>,</span> <span class='label'>routing_key:</span> <span class='id identifier rubyid_routing_key'>routing_key</span><span class='comma'>,</span> <span class='label'>persistent:</span> <span class='kw'>true</span><span class='rparen'>)</span>
@@ -931,25 +1465,49 @@
931
1465
  <div class="method_details ">
932
1466
  <h3 class="signature " id="reconnect-instance_method">
933
1467
 
934
- - (<tt>Object</tt>) <strong>reconnect</strong>
1468
+ - (<tt>Bunny::Session</tt>) <strong>reconnect</strong>
935
1469
 
936
1470
 
937
1471
 
938
1472
 
939
1473
 
940
- </h3><table class="source_code">
1474
+ </h3><div class="docstring">
1475
+ <div class="discussion">
1476
+
1477
+ <p>Close and reopen the AMQP connection</p>
1478
+
1479
+
1480
+ </div>
1481
+ </div>
1482
+ <div class="tags">
1483
+
1484
+ <p class="tag_title">Returns:</p>
1485
+ <ul class="return">
1486
+
1487
+ <li>
1488
+
1489
+
1490
+ <span class='type'>(<tt>Bunny::Session</tt>)</span>
1491
+
1492
+
1493
+
1494
+ </li>
1495
+
1496
+ </ul>
1497
+
1498
+ </div><table class="source_code">
941
1499
  <tr>
942
1500
  <td>
943
1501
  <pre class="lines">
944
1502
 
945
1503
 
946
- 96
947
- 97
948
- 98
949
- 99</pre>
1504
+ 150
1505
+ 151
1506
+ 152
1507
+ 153</pre>
950
1508
  </td>
951
1509
  <td>
952
- <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 96</span>
1510
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 150</span>
953
1511
 
954
1512
  <span class='kw'>def</span> <span class='id identifier rubyid_reconnect'>reconnect</span>
955
1513
  <span class='id identifier rubyid_close'>close</span>
@@ -969,18 +1527,29 @@
969
1527
 
970
1528
 
971
1529
 
972
- </h3><table class="source_code">
1530
+ </h3><div class="docstring">
1531
+ <div class="discussion">
1532
+
1533
+ <p>Reset this client by closing all channels for the connection.</p>
1534
+
1535
+
1536
+ </div>
1537
+ </div>
1538
+ <div class="tags">
1539
+
1540
+
1541
+ </div><table class="source_code">
973
1542
  <tr>
974
1543
  <td>
975
1544
  <pre class="lines">
976
1545
 
977
1546
 
978
- 72
979
- 73
980
- 74</pre>
1547
+ 119
1548
+ 120
1549
+ 121</pre>
981
1550
  </td>
982
1551
  <td>
983
- <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 72</span>
1552
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 119</span>
984
1553
 
985
1554
  <span class='kw'>def</span> <span class='id identifier rubyid_reset'>reset</span>
986
1555
  <span class='id identifier rubyid_connection'>connection</span><span class='period'>.</span><span class='id identifier rubyid_close_all_channels'>close_all_channels</span>
@@ -988,6 +1557,140 @@
988
1557
  </td>
989
1558
  </tr>
990
1559
  </table>
1560
+ </div>
1561
+
1562
+ <div class="method_details ">
1563
+ <h3 class="signature " id="subscribe-instance_method">
1564
+
1565
+ - (<tt>Object</tt>) <strong>subscribe</strong>(queue, options = {manual_ack: true}) {|payload| ... }
1566
+
1567
+
1568
+
1569
+
1570
+
1571
+ </h3><div class="docstring">
1572
+ <div class="discussion">
1573
+
1574
+ <p>Subscribe to messages on the Bunny queue. The provided block will be called
1575
+ each time a message is received.</p>
1576
+
1577
+ <pre class="code ruby"><code class="ruby">The message will be acknowledged and deleted from the queue unless an exception is raised from the block.
1578
+ In the case that an exception is caught, the message is rejected, and any declared exception handlers will
1579
+ be called.</code></pre>
1580
+
1581
+
1582
+ </div>
1583
+ </div>
1584
+ <div class="tags">
1585
+ <p class="tag_title">Parameters:</p>
1586
+ <ul class="param">
1587
+
1588
+ <li>
1589
+
1590
+ <span class='name'>queue</span>
1591
+
1592
+
1593
+ <span class='type'>(<tt>Bunny::Queue</tt>)</span>
1594
+
1595
+
1596
+
1597
+ &mdash;
1598
+ <div class='inline'>
1599
+ <p>Bunny queue</p>
1600
+ </div>
1601
+
1602
+ </li>
1603
+
1604
+ <li>
1605
+
1606
+ <span class='name'>options</span>
1607
+
1608
+
1609
+ <span class='type'>(<tt>Hash</tt>)</span>
1610
+
1611
+
1612
+ <em class="default">(defaults to: <tt>{manual_ack: true}</tt>)</em>
1613
+
1614
+
1615
+ &mdash;
1616
+ <div class='inline'>
1617
+ <p>true subscription options – @see Bunny::Queue#subscribe</p>
1618
+ </div>
1619
+
1620
+ </li>
1621
+
1622
+ </ul>
1623
+
1624
+ <p class="tag_title">Yield Parameters:</p>
1625
+ <ul class="yieldparam">
1626
+
1627
+ <li>
1628
+
1629
+ <span class='name'>payload</span>
1630
+
1631
+
1632
+ <span class='type'>(<tt>String</tt>)</span>
1633
+
1634
+
1635
+
1636
+ &mdash;
1637
+ <div class='inline'>
1638
+ <p>message text</p>
1639
+ </div>
1640
+
1641
+ </li>
1642
+
1643
+ </ul>
1644
+
1645
+ </div><table class="source_code">
1646
+ <tr>
1647
+ <td>
1648
+ <pre class="lines">
1649
+
1650
+
1651
+ 67
1652
+ 68
1653
+ 69
1654
+ 70
1655
+ 71
1656
+ 72
1657
+ 73
1658
+ 74
1659
+ 75
1660
+ 76
1661
+ 77
1662
+ 78
1663
+ 79
1664
+ 80
1665
+ 81
1666
+ 82
1667
+ 83
1668
+ 84</pre>
1669
+ </td>
1670
+ <td>
1671
+ <pre class="code"><span class="info file"># File 'lib/isimud/bunny_client.rb', line 67</span>
1672
+
1673
+ <span class='kw'>def</span> <span class='id identifier rubyid_subscribe'>subscribe</span><span class='lparen'>(</span><span class='id identifier rubyid_queue'>queue</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='label'>manual_ack:</span> <span class='kw'>true</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_block'>block</span><span class='rparen'>)</span>
1674
+ <span class='id identifier rubyid_current_channel'>current_channel</span> <span class='op'>=</span> <span class='id identifier rubyid_channel'>channel</span>
1675
+ <span class='id identifier rubyid_queue'>queue</span><span class='period'>.</span><span class='id identifier rubyid_subscribe'>subscribe</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='comma'>,</span> <span class='id identifier rubyid_properties'>properties</span><span class='comma'>,</span> <span class='id identifier rubyid_payload'>payload</span><span class='op'>|</span>
1676
+ <span class='kw'>begin</span>
1677
+ <span class='id identifier rubyid_log'>log</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Isimud: queue </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_queue'>queue</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span><span class='embexpr_end'>}</span><span class='tstring_content'> received </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='period'>.</span><span class='id identifier rubyid_delivery_tag'>delivery_tag</span><span class='embexpr_end'>}</span><span class='tstring_content'> routing_key: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='period'>.</span><span class='id identifier rubyid_routing_key'>routing_key</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
1678
+ <span class='const'>Thread</span><span class='period'>.</span><span class='id identifier rubyid_current'>current</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>isimud_queue_name</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_queue'>queue</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span>
1679
+ <span class='const'>Thread</span><span class='period'>.</span><span class='id identifier rubyid_current'>current</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>isimud_delivery_info</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_delivery_info'>delivery_info</span>
1680
+ <span class='const'>Thread</span><span class='period'>.</span><span class='id identifier rubyid_current'>current</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>isimud_properties</span><span class='tstring_end'>&#39;</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_properties'>properties</span>
1681
+ <span class='id identifier rubyid_block'>block</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_payload'>payload</span><span class='rparen'>)</span>
1682
+ <span class='id identifier rubyid_log'>log</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Isimud: queue </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_queue'>queue</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span><span class='embexpr_end'>}</span><span class='tstring_content'> finished with </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='period'>.</span><span class='id identifier rubyid_delivery_tag'>delivery_tag</span><span class='embexpr_end'>}</span><span class='tstring_content'>, acknowledging</span><span class='tstring_end'>&quot;</span></span>
1683
+ <span class='id identifier rubyid_current_channel'>current_channel</span><span class='period'>.</span><span class='id identifier rubyid_ack'>ack</span><span class='lparen'>(</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='period'>.</span><span class='id identifier rubyid_delivery_tag'>delivery_tag</span><span class='rparen'>)</span>
1684
+ <span class='kw'>rescue</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_e'>e</span>
1685
+ <span class='id identifier rubyid_log'>log</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Isimud: queue </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_queue'>queue</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span><span class='embexpr_end'>}</span><span class='tstring_content'> error processing </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='period'>.</span><span class='id identifier rubyid_delivery_tag'>delivery_tag</span><span class='embexpr_end'>}</span><span class='tstring_content'> payload </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_payload'>payload</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'>: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_message'>message</span><span class='embexpr_end'>}</span><span class='tstring_content'>\n </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_backtrace'>backtrace</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n </span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='symbol'>:warn</span><span class='rparen'>)</span>
1686
+ <span class='id identifier rubyid_current_channel'>current_channel</span><span class='period'>.</span><span class='id identifier rubyid_reject'>reject</span><span class='lparen'>(</span><span class='id identifier rubyid_delivery_info'>delivery_info</span><span class='period'>.</span><span class='id identifier rubyid_delivery_tag'>delivery_tag</span><span class='comma'>,</span> <span class='const'>Isimud</span><span class='period'>.</span><span class='id identifier rubyid_retry_failures'>retry_failures</span><span class='rparen'>)</span>
1687
+ <span class='id identifier rubyid_run_exception_handlers'>run_exception_handlers</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='rparen'>)</span>
1688
+ <span class='kw'>end</span>
1689
+ <span class='kw'>end</span>
1690
+ <span class='kw'>end</span></pre>
1691
+ </td>
1692
+ </tr>
1693
+ </table>
991
1694
  </div>
992
1695
 
993
1696
  </div>
@@ -995,9 +1698,9 @@
995
1698
  </div>
996
1699
 
997
1700
  <div id="footer">
998
- Generated on Fri Apr 3 09:28:09 2015 by
1701
+ Generated on Wed Jan 13 16:27:29 2016 by
999
1702
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1000
- 0.8.7.6 (ruby-2.2.1).
1703
+ 0.8.7.6 (ruby-2.2.3).
1001
1704
  </div>
1002
1705
 
1003
1706
  </body>