isimud 0.7.0 → 1.3.1

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