safubot 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
data/doc/Safubot/Bot.html CHANGED
@@ -293,7 +293,7 @@ Performs appropriate dispatch operation for response type.
293
293
  <li class="public ">
294
294
  <span class="summary_signature">
295
295
 
296
- <a href="#enable_twitter-instance_method" title="#enable_twitter (instance method)">- (Object) <strong>enable_twitter</strong>(opts = {}) </a>
296
+ <a href="#dispatch_error-instance_method" title="#dispatch_error (instance method)">- (Object) <strong>dispatch_error</strong>(resp, e) </a>
297
297
 
298
298
 
299
299
 
@@ -307,7 +307,8 @@ Performs appropriate dispatch operation for response type.
307
307
 
308
308
 
309
309
  <span class="summary_desc"><div class='inline'><p>
310
- Initialises Twitter-related functionality.
310
+ Records an error in dispatch and emits a corresponding :dispatch_error
311
+ event.
311
312
  </p>
312
313
  </div></span>
313
314
 
@@ -317,7 +318,7 @@ Initialises Twitter-related functionality.
317
318
  <li class="public ">
318
319
  <span class="summary_signature">
319
320
 
320
- <a href="#enable_xmpp-instance_method" title="#enable_xmpp (instance method)">- (Object) <strong>enable_xmpp</strong>(options = {}) </a>
321
+ <a href="#enable_twitter-instance_method" title="#enable_twitter (instance method)">- (Object) <strong>enable_twitter</strong>(opts = {}) </a>
321
322
 
322
323
 
323
324
 
@@ -331,7 +332,7 @@ Initialises Twitter-related functionality.
331
332
 
332
333
 
333
334
  <span class="summary_desc"><div class='inline'><p>
334
- Initialises XMPP-related functionality.
335
+ Initialises Twitter-related functionality.
335
336
  </p>
336
337
  </div></span>
337
338
 
@@ -341,14 +342,12 @@ Initialises XMPP-related functionality.
341
342
  <li class="public ">
342
343
  <span class="summary_signature">
343
344
 
344
- <a href="#initialize-instance_method" title="#initialize (instance method)">- (Bot) <strong>initialize</strong>(options = {}) </a>
345
+ <a href="#enable_xmpp-instance_method" title="#enable_xmpp (instance method)">- (Object) <strong>enable_xmpp</strong>(options = {}) </a>
345
346
 
346
347
 
347
348
 
348
349
  </span>
349
350
 
350
- <span class="note title constructor">constructor</span>
351
-
352
351
 
353
352
 
354
353
 
@@ -357,7 +356,7 @@ Initialises XMPP-related functionality.
357
356
 
358
357
 
359
358
  <span class="summary_desc"><div class='inline'><p>
360
- A new instance of Bot.
359
+ Initialises XMPP-related functionality.
361
360
  </p>
362
361
  </div></span>
363
362
 
@@ -367,12 +366,14 @@ A new instance of Bot.
367
366
  <li class="public ">
368
367
  <span class="summary_signature">
369
368
 
370
- <a href="#process-instance_method" title="#process (instance method)">- (Object) <strong>process</strong> </a>
369
+ <a href="#initialize-instance_method" title="#initialize (instance method)">- (Bot) <strong>initialize</strong>(options = {}) </a>
371
370
 
372
371
 
373
372
 
374
373
  </span>
375
374
 
375
+ <span class="note title constructor">constructor</span>
376
+
376
377
 
377
378
 
378
379
 
@@ -381,7 +382,7 @@ A new instance of Bot.
381
382
 
382
383
 
383
384
  <span class="summary_desc"><div class='inline'><p>
384
- Goes through each unprocessed Request and submits it for processing.
385
+ A new instance of Bot.
385
386
  </p>
386
387
  </div></span>
387
388
 
@@ -391,7 +392,7 @@ Goes through each unprocessed Request and submits it for processing.
391
392
  <li class="public ">
392
393
  <span class="summary_signature">
393
394
 
394
- <a href="#process_request-instance_method" title="#process_request (instance method)">- (Object) <strong>process_request</strong>(req) </a>
395
+ <a href="#process-instance_method" title="#process (instance method)">- (Object) <strong>process</strong> </a>
395
396
 
396
397
 
397
398
 
@@ -405,7 +406,7 @@ Goes through each unprocessed Request and submits it for processing.
405
406
 
406
407
 
407
408
  <span class="summary_desc"><div class='inline'><p>
408
- Processes an individual request (synchronously).
409
+ Goes through each unprocessed Request and submits it for processing.
409
410
  </p>
410
411
  </div></span>
411
412
 
@@ -415,7 +416,7 @@ Processes an individual request (synchronously).
415
416
  <li class="public ">
416
417
  <span class="summary_signature">
417
418
 
418
- <a href="#pull-instance_method" title="#pull (instance method)">- (Object) <strong>pull</strong> </a>
419
+ <a href="#process_request-instance_method" title="#process_request (instance method)">- (Object) <strong>process_request</strong>(req) </a>
419
420
 
420
421
 
421
422
 
@@ -429,8 +430,7 @@ Processes an individual request (synchronously).
429
430
 
430
431
 
431
432
  <span class="summary_desc"><div class='inline'><p>
432
- This pulls requests from passive non-streaming sources (currently, the
433
- Twitter AJAX API).
433
+ Processes an individual request (synchronously).
434
434
  </p>
435
435
  </div></span>
436
436
 
@@ -440,7 +440,7 @@ Twitter AJAX API).
440
440
  <li class="public ">
441
441
  <span class="summary_signature">
442
442
 
443
- <a href="#push-instance_method" title="#push (instance method)">- (Object) <strong>push</strong> </a>
443
+ <a href="#pull-instance_method" title="#pull (instance method)">- (Object) <strong>pull</strong> </a>
444
444
 
445
445
 
446
446
 
@@ -454,7 +454,8 @@ Twitter AJAX API).
454
454
 
455
455
 
456
456
  <span class="summary_desc"><div class='inline'><p>
457
- Dispatches all undispatched Responses.
457
+ This pulls requests from passive non-streaming sources (currently, the
458
+ Twitter AJAX API).
458
459
  </p>
459
460
  </div></span>
460
461
 
@@ -464,7 +465,7 @@ Dispatches all undispatched Responses.
464
465
  <li class="public ">
465
466
  <span class="summary_signature">
466
467
 
467
- <a href="#request_error-instance_method" title="#request_error (instance method)">- (Object) <strong>request_error</strong>(req, e) </a>
468
+ <a href="#push-instance_method" title="#push (instance method)">- (Object) <strong>push</strong> </a>
468
469
 
469
470
 
470
471
 
@@ -478,7 +479,7 @@ Dispatches all undispatched Responses.
478
479
 
479
480
 
480
481
  <span class="summary_desc"><div class='inline'><p>
481
- Records an error and emits a corresponding :request_error event.
482
+ Dispatches all undispatched Responses.
482
483
  </p>
483
484
  </div></span>
484
485
 
@@ -488,7 +489,7 @@ Records an error and emits a corresponding :request_error event.
488
489
  <li class="public ">
489
490
  <span class="summary_signature">
490
491
 
491
- <a href="#respond-instance_method" title="#respond (instance method)">- (Object) <strong>respond</strong>(req, text) </a>
492
+ <a href="#request_error-instance_method" title="#request_error (instance method)">- (Object) <strong>request_error</strong>(req, e) </a>
492
493
 
493
494
 
494
495
 
@@ -502,7 +503,8 @@ Records an error and emits a corresponding :request_error event.
502
503
 
503
504
 
504
505
  <span class="summary_desc"><div class='inline'><p>
505
- Adds a response to the queue.
506
+ Records an error in processing and emits a corresponding :request_error
507
+ event.
506
508
  </p>
507
509
  </div></span>
508
510
 
@@ -512,7 +514,7 @@ Adds a response to the queue.
512
514
  <li class="public ">
513
515
  <span class="summary_signature">
514
516
 
515
- <a href="#respond_now-instance_method" title="#respond_now (instance method)">- (Object) <strong>respond_now</strong>(req, text) </a>
517
+ <a href="#respond-instance_method" title="#respond (instance method)">- (Object) <strong>respond</strong>(req, text) </a>
516
518
 
517
519
 
518
520
 
@@ -526,7 +528,7 @@ Adds a response to the queue.
526
528
 
527
529
 
528
530
  <span class="summary_desc"><div class='inline'><p>
529
- Respond + push.
531
+ Adds a response to the queue and dispatches it.
530
532
  </p>
531
533
  </div></span>
532
534
 
@@ -647,16 +649,16 @@ A new instance of Bot
647
649
  <pre class="lines">
648
650
 
649
651
 
650
- 190
651
- 191
652
- 192
653
- 193
654
- 194
655
- 195
656
- 196</pre>
652
+ 264
653
+ 265
654
+ 266
655
+ 267
656
+ 268
657
+ 269
658
+ 270</pre>
657
659
  </td>
658
660
  <td>
659
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 190</span>
661
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 264</span>
660
662
 
661
663
  <span class='kw'>def</span> <span class='id initialize'>initialize</span><span class='lparen'>(</span><span class='id options'>options</span><span class='op'>=</span><span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
662
664
  <span class='id defaults'>defaults</span> <span class='op'>=</span> <span class='lbrace'>{</span> <span class='symbol'>:database</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>safubot</span><span class='tstring_end'>&quot;</span></span> <span class='rbrace'>}</span>
@@ -703,12 +705,12 @@ Returns the value of attribute opts
703
705
  <pre class="lines">
704
706
 
705
707
 
706
- 47
707
- 48
708
- 49</pre>
708
+ 81
709
+ 82
710
+ 83</pre>
709
711
  </td>
710
712
  <td>
711
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 47</span>
713
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 81</span>
712
714
 
713
715
  <span class='kw'>def</span> <span class='id opts'>opts</span>
714
716
  <span class='ivar'>@opts</span>
@@ -746,12 +748,12 @@ Returns the value of attribute twitter
746
748
  <pre class="lines">
747
749
 
748
750
 
749
- 47
750
- 48
751
- 49</pre>
751
+ 81
752
+ 82
753
+ 83</pre>
752
754
  </td>
753
755
  <td>
754
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 47</span>
756
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 81</span>
755
757
 
756
758
  <span class='kw'>def</span> <span class='id twitter'>twitter</span>
757
759
  <span class='ivar'>@twitter</span>
@@ -789,12 +791,12 @@ Returns the value of attribute xmpp
789
791
  <pre class="lines">
790
792
 
791
793
 
792
- 47
793
- 48
794
- 49</pre>
794
+ 81
795
+ 82
796
+ 83</pre>
795
797
  </td>
796
798
  <td>
797
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 47</span>
799
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 81</span>
798
800
 
799
801
  <span class='kw'>def</span> <span class='id xmpp'>xmpp</span>
800
802
  <span class='ivar'>@xmpp</span>
@@ -877,16 +879,16 @@ KnownUser.by_name(&#8216;testing&#8217;)
877
879
  <pre class="lines">
878
880
 
879
881
 
880
- 61
881
- 62
882
- 63
883
- 64
884
882
  65
885
883
  66
886
- 67</pre>
884
+ 67
885
+ 68
886
+ 69
887
+ 70
888
+ 71</pre>
887
889
  </td>
888
890
  <td>
889
- <pre class="code"><span class="info file"># File 'lib/safubot/test_helper.rb', line 61</span>
891
+ <pre class="code"><span class="info file"># File 'lib/safubot/test_helper.rb', line 65</span>
890
892
 
891
893
  <span class='kw'>def</span> <span class='id answer'>answer</span><span class='lparen'>(</span><span class='id text'>text</span><span class='comma'>,</span> <span class='id user'>user</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
892
894
  <span class='id user'>user</span> <span class='op'>||=</span> <span class='const'>KnownUser</span><span class='period'>.</span><span class='id by_name'>by_name</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>testing</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
@@ -964,20 +966,19 @@ The operation to be performed in a separate thread.
964
966
  <pre class="lines">
965
967
 
966
968
 
967
- 138
968
- 139
969
- 140
970
- 141
971
- 142
972
- 143
973
- 144
974
- 145
975
- 146
976
- 147
977
- 148</pre>
969
+ 211
970
+ 212
971
+ 213
972
+ 214
973
+ 215
974
+ 216
975
+ 217
976
+ 218
977
+ 219
978
+ 220</pre>
978
979
  </td>
979
980
  <td>
980
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 138</span>
981
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 211</span>
981
982
 
982
983
  <span class='kw'>def</span> <span class='id concurrently'>concurrently</span><span class='lparen'>(</span><span class='id req'>req</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id blk'>blk</span><span class='rparen'>)</span>
983
984
  <span class='const'>Thread</span><span class='period'>.</span><span class='id new'>new</span> <span class='kw'>do</span>
@@ -986,7 +987,6 @@ The operation to be performed in a separate thread.
986
987
  <span class='kw'>rescue</span> <span class='const'>Exception</span> <span class='op'>=&gt;</span> <span class='id e'>e</span>
987
988
  <span class='id request_error'>request_error</span><span class='lparen'>(</span><span class='id req'>req</span><span class='comma'>,</span> <span class='id e'>e</span><span class='rparen'>)</span>
988
989
  <span class='kw'>end</span>
989
-
990
990
  <span class='id push'>push</span>
991
991
  <span class='kw'>end</span>
992
992
  <span class='kw'>end</span></pre>
@@ -1041,37 +1041,73 @@ An undispatched Response.
1041
1041
  <pre class="lines">
1042
1042
 
1043
1043
 
1044
- 77
1045
- 78
1046
- 79
1047
- 80
1048
- 81
1049
- 82
1050
- 83
1051
- 84
1052
- 85
1053
- 86
1054
- 87
1055
- 88
1056
- 89
1057
- 90
1058
- 91
1059
- 92
1060
- 93
1061
- 94
1062
- 95
1063
- 96
1064
- 97
1065
- 98
1066
- 99
1067
- 100</pre>
1044
+ 138
1045
+ 139
1046
+ 140
1047
+ 141
1048
+ 142
1049
+ 143
1050
+ 144
1051
+ 145
1052
+ 146
1053
+ 147
1054
+ 148
1055
+ 149
1056
+ 150
1057
+ 151
1058
+ 152
1059
+ 153
1060
+ 154
1061
+ 155
1062
+ 156
1063
+ 157
1064
+ 158
1065
+ 159
1066
+ 160
1067
+ 161
1068
+ 162
1069
+ 163
1070
+ 164
1071
+ 165
1072
+ 166
1073
+ 167
1074
+ 168
1075
+ 169
1076
+ 170
1077
+ 171
1078
+ 172
1079
+ 173
1080
+ 174
1081
+ 175
1082
+ 176
1083
+ 177
1084
+ 178
1085
+ 179</pre>
1068
1086
  </td>
1069
1087
  <td>
1070
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 77</span>
1088
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 138</span>
1071
1089
 
1072
1090
  <span class='kw'>def</span> <span class='id dispatch'>dispatch</span><span class='lparen'>(</span><span class='id resp'>resp</span><span class='rparen'>)</span>
1091
+ <span class='id resp'>resp</span><span class='period'>.</span><span class='id reload'>reload</span>
1092
+ <span class='kw'>if</span> <span class='id resp'>resp</span><span class='period'>.</span><span class='id dispatched'>dispatched</span>
1093
+ <span class='const'>Log</span><span class='period'>.</span><span class='id debug'>debug</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Response '</span><span class='embexpr_beg'>#{</span><span class='id resp'>resp</span><span class='period'>.</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_content'>' has already been dispatched, ignoring.</span><span class='tstring_end'>&quot;</span></span>
1094
+ <span class='kw'>return</span>
1095
+ <span class='kw'>elsif</span> <span class='id resp'>resp</span><span class='period'>.</span><span class='id dispatching'>dispatching</span>
1096
+ <span class='const'>Log</span><span class='period'>.</span><span class='id debug'>debug</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Response '</span><span class='embexpr_beg'>#{</span><span class='id resp'>resp</span><span class='period'>.</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_content'>' is already in dispatch, ignoring.</span><span class='tstring_end'>&quot;</span></span>
1097
+ <span class='kw'>return</span>
1098
+ <span class='kw'>elsif</span> <span class='id resp'>resp</span><span class='period'>.</span><span class='id problems'>problems</span><span class='period'>.</span><span class='id length'>length</span> <span class='op'>&gt;</span> <span class='int'>10</span>
1099
+ <span class='const'>Log</span><span class='period'>.</span><span class='id debug'>debug</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Response '</span><span class='embexpr_beg'>#{</span><span class='id resp'>resp</span><span class='period'>.</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_content'>' encountered more than ten dispatch errors, ignoring.</span><span class='tstring_end'>&quot;</span></span>
1100
+ <span class='kw'>return</span>
1101
+ <span class='kw'>elsif</span> <span class='op'>!</span><span class='id resp'>resp</span><span class='period'>.</span><span class='id problems'>problems</span><span class='period'>.</span><span class='id empty?'>empty?</span> <span class='op'>&amp;&amp;</span> <span class='lparen'>(</span><span class='const'>Time</span><span class='period'>.</span><span class='id now'>now</span> <span class='op'>-</span> <span class='id resp'>resp</span><span class='period'>.</span><span class='id last_problem'>last_problem</span><span class='period'>.</span><span class='id when'>when</span><span class='rparen'>)</span> <span class='op'>&lt;</span> <span class='int'>1</span><span class='period'>.</span><span class='id minute'>minute</span>
1102
+ <span class='const'>Log</span><span class='period'>.</span><span class='id debug'>debug</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Response '</span><span class='embexpr_beg'>#{</span><span class='id resp'>resp</span><span class='period'>.</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_content'>' encountered a dispatch error &lt;1 minute ago, ignoring.</span><span class='tstring_end'>&quot;</span></span>
1103
+ <span class='kw'>return</span>
1104
+ <span class='kw'>end</span>
1105
+
1073
1106
  <span class='kw'>begin</span>
1074
1107
  <span class='id source'>source</span> <span class='op'>=</span> <span class='id resp'>resp</span><span class='period'>.</span><span class='id request'>request</span><span class='period'>.</span><span class='id source'>source</span>
1108
+ <span class='id resp'>resp</span><span class='period'>.</span><span class='id dispatching'>dispatching</span> <span class='op'>=</span> <span class='kw'>true</span>
1109
+ <span class='id resp'>resp</span><span class='period'>.</span><span class='id save'>save</span>
1110
+
1075
1111
  <span class='kw'>if</span> <span class='const'>Safubot</span><span class='op'>::</span><span class='id mode'>mode</span> <span class='op'>!=</span> <span class='symbol'>:production</span>
1076
1112
  <span class='const'>Log</span><span class='period'>.</span><span class='id info'>info</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id source'>source</span><span class='period'>.</span><span class='id class'>class</span><span class='rbrace'>}</span><span class='tstring_content'> Response to </span><span class='embexpr_beg'>#{</span><span class='id source'>source</span><span class='period'>.</span><span class='id username'>username</span><span class='rbrace'>}</span><span class='tstring_content'>: </span><span class='embexpr_beg'>#{</span><span class='id resp'>resp</span><span class='period'>.</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span>
1077
1113
  <span class='kw'>else</span>
@@ -1082,20 +1118,105 @@ An undispatched Response.
1082
1118
  <span class='kw'>else</span>
1083
1119
  <span class='id raise'>raise</span> <span class='const'>NotImplementedError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Don't know how to send response to a </span><span class='embexpr_beg'>#{</span><span class='id source'>source</span><span class='period'>.</span><span class='id class'>class</span><span class='rbrace'>}</span><span class='tstring_content'>!</span><span class='tstring_end'>&quot;</span></span>
1084
1120
  <span class='kw'>end</span>
1085
- <span class='kw'>end</span>
1086
1121
 
1087
- <span class='id resp'>resp</span><span class='period'>.</span><span class='id dispatched'>dispatched</span> <span class='op'>=</span> <span class='kw'>true</span>
1088
- <span class='id resp'>resp</span><span class='period'>.</span><span class='id save'>save</span>
1122
+ <span class='id resp'>resp</span><span class='period'>.</span><span class='id dispatched'>dispatched</span> <span class='op'>=</span> <span class='kw'>true</span>
1123
+ <span class='id resp'>resp</span><span class='period'>.</span><span class='id save'>save</span>
1124
+ <span class='kw'>end</span>
1089
1125
  <span class='kw'>rescue</span> <span class='const'>Exception</span> <span class='op'>=&gt;</span> <span class='id e'>e</span>
1090
- <span class='const'>Log</span><span class='period'>.</span><span class='id error'>error</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Error dispatching </span><span class='embexpr_beg'>#{</span><span class='id source'>source</span><span class='period'>.</span><span class='id class'>class</span><span class='rbrace'>}</span><span class='tstring_content'> '</span><span class='embexpr_beg'>#{</span><span class='id resp'>resp</span><span class='period'>.</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_content'>': </span><span class='embexpr_beg'>#{</span><span class='id e'>e</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span>
1091
- <span class='id resp'>resp</span><span class='period'>.</span><span class='id errors'>errors</span><span class='lbracket'>[</span><span class='const'>Time</span><span class='period'>.</span><span class='id now'>now</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id e'>e</span>
1126
+ <span class='id dispatch_error'>dispatch_error</span><span class='lparen'>(</span><span class='id resp'>resp</span><span class='comma'>,</span> <span class='id e'>e</span><span class='rparen'>)</span>
1127
+ <span class='kw'>ensure</span>
1128
+ <span class='id resp'>resp</span><span class='period'>.</span><span class='id dispatching'>dispatching</span> <span class='op'>=</span> <span class='kw'>false</span>
1092
1129
  <span class='id resp'>resp</span><span class='period'>.</span><span class='id save'>save</span>
1093
- <span class='id emit'>emit</span><span class='lparen'>(</span><span class='symbol'>:dispatch_error</span><span class='comma'>,</span> <span class='id resp'>resp</span><span class='comma'>,</span> <span class='id e'>e</span><span class='rparen'>)</span>
1094
1130
  <span class='kw'>end</span>
1095
1131
  <span class='kw'>end</span></pre>
1096
1132
  </td>
1097
1133
  </tr>
1098
1134
  </table>
1135
+ </div>
1136
+
1137
+ <div class="method_details ">
1138
+ <p class="signature " id="dispatch_error-instance_method">
1139
+
1140
+ - (<tt>Object</tt>) <strong>dispatch_error</strong>(resp, e)
1141
+
1142
+
1143
+
1144
+ </p><div class="docstring">
1145
+ <div class="discussion">
1146
+ <p>
1147
+ Records an error in dispatch and emits a corresponding :dispatch_error
1148
+ event.
1149
+ </p>
1150
+
1151
+
1152
+ </div>
1153
+ </div>
1154
+ <div class="tags">
1155
+ <h3>Parameters:</h3>
1156
+ <ul class="param">
1157
+
1158
+ <li>
1159
+
1160
+ <span class='name'>resp</span>
1161
+
1162
+
1163
+ <span class='type'></span>
1164
+
1165
+
1166
+
1167
+ &mdash;
1168
+ <div class='inline'><p>
1169
+ The Response for which the error was encountered.
1170
+ </p>
1171
+ </div>
1172
+
1173
+ </li>
1174
+
1175
+ <li>
1176
+
1177
+ <span class='name'>e</span>
1178
+
1179
+
1180
+ <span class='type'></span>
1181
+
1182
+
1183
+
1184
+ &mdash;
1185
+ <div class='inline'><p>
1186
+ The caught Exception.
1187
+ </p>
1188
+ </div>
1189
+
1190
+ </li>
1191
+
1192
+ </ul>
1193
+
1194
+
1195
+ </div><table class="source_code">
1196
+ <tr>
1197
+ <td>
1198
+ <pre class="lines">
1199
+
1200
+
1201
+ 98
1202
+ 99
1203
+ 100
1204
+ 101
1205
+ 102
1206
+ 103</pre>
1207
+ </td>
1208
+ <td>
1209
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 98</span>
1210
+
1211
+ <span class='kw'>def</span> <span class='id dispatch_error'>dispatch_error</span><span class='lparen'>(</span><span class='id resp'>resp</span><span class='comma'>,</span> <span class='id e'>e</span><span class='rparen'>)</span>
1212
+ <span class='const'>Log</span><span class='period'>.</span><span class='id error'>error</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Error dispatching </span><span class='embexpr_beg'>#{</span><span class='id resp'>resp</span><span class='period'>.</span><span class='id request'>request</span><span class='period'>.</span><span class='id source'>source</span><span class='period'>.</span><span class='id class'>class</span><span class='rbrace'>}</span><span class='tstring_content'> '</span><span class='embexpr_beg'>#{</span><span class='id resp'>resp</span><span class='period'>.</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_content'>': </span><span class='embexpr_beg'>#{</span><span class='id error_report'>error_report</span><span class='lparen'>(</span><span class='id e'>e</span><span class='rparen'>)</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span>
1213
+ <span class='id resp'>resp</span><span class='period'>.</span><span class='id add_problem'>add_problem</span><span class='lparen'>(</span><span class='id e'>e</span><span class='rparen'>)</span>
1214
+ <span class='id resp'>resp</span><span class='period'>.</span><span class='id save'>save</span>
1215
+ <span class='id emit'>emit</span><span class='lparen'>(</span><span class='symbol'>:dispatch_error</span><span class='comma'>,</span> <span class='id resp'>resp</span><span class='comma'>,</span> <span class='id e'>e</span><span class='rparen'>)</span>
1216
+ <span class='kw'>end</span></pre>
1217
+ </td>
1218
+ </tr>
1219
+ </table>
1099
1220
  </div>
1100
1221
 
1101
1222
  <div class="method_details ">
@@ -1123,20 +1244,22 @@ Initialises Twitter-related functionality.
1123
1244
  <pre class="lines">
1124
1245
 
1125
1246
 
1126
- 174
1127
- 175
1128
- 176
1129
- 177
1130
- 178
1131
- 179</pre>
1247
+ 246
1248
+ 247
1249
+ 248
1250
+ 249
1251
+ 250
1252
+ 251
1253
+ 252</pre>
1132
1254
  </td>
1133
1255
  <td>
1134
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 174</span>
1256
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 246</span>
1135
1257
 
1136
1258
  <span class='kw'>def</span> <span class='id enable_twitter'>enable_twitter</span><span class='lparen'>(</span><span class='id opts'>opts</span><span class='op'>=</span><span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
1137
1259
  <span class='ivar'>@twitter</span> <span class='op'>=</span> <span class='const'>Twitter</span><span class='op'>::</span><span class='const'>Bot</span><span class='period'>.</span><span class='id new'>new</span><span class='lparen'>(</span><span class='id opts'>opts</span><span class='rparen'>)</span>
1138
1260
  <span class='ivar'>@twitter</span><span class='period'>.</span><span class='id on'>on</span><span class='lparen'>(</span><span class='symbol'>:request</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id req'>req</span><span class='op'>|</span>
1139
- <span class='id process'>process</span><span class='semicolon'>;</span> <span class='id push'>push</span>
1261
+ <span class='id process_request'>process_request</span><span class='lparen'>(</span><span class='id req'>req</span><span class='rparen'>)</span>
1262
+ <span class='id req'>req</span><span class='period'>.</span><span class='id responses'>responses</span><span class='period'>.</span><span class='id where'>where</span><span class='lparen'>(</span><span class='symbol'>:dispatched</span> <span class='op'>=&gt;</span> <span class='kw'>false</span><span class='rparen'>)</span><span class='period'>.</span><span class='id map'>map</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='symbol'>:dispatch</span><span class='rparen'>)</span>
1140
1263
  <span class='kw'>end</span>
1141
1264
  <span class='kw'>end</span></pre>
1142
1265
  </td>
@@ -1169,22 +1292,24 @@ Initialises XMPP-related functionality.
1169
1292
  <pre class="lines">
1170
1293
 
1171
1294
 
1172
- 182
1173
- 183
1174
- 184
1175
- 185
1176
- 186
1177
- 187
1178
- 188</pre>
1295
+ 255
1296
+ 256
1297
+ 257
1298
+ 258
1299
+ 259
1300
+ 260
1301
+ 261
1302
+ 262</pre>
1179
1303
  </td>
1180
1304
  <td>
1181
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 182</span>
1305
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 255</span>
1182
1306
 
1183
1307
  <span class='kw'>def</span> <span class='id enable_xmpp'>enable_xmpp</span><span class='lparen'>(</span><span class='id options'>options</span><span class='op'>=</span><span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
1184
1308
  <span class='id defaults'>defaults</span> <span class='op'>=</span> <span class='lbrace'>{</span> <span class='symbol'>:jid</span> <span class='op'>=&gt;</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='symbol'>:password</span> <span class='op'>=&gt;</span> <span class='kw'>nil</span> <span class='rbrace'>}</span>
1185
1309
  <span class='ivar'>@xmpp</span> <span class='op'>=</span> <span class='const'>XMPP</span><span class='op'>::</span><span class='const'>Bot</span><span class='period'>.</span><span class='id new'>new</span><span class='lparen'>(</span><span class='id defaults'>defaults</span><span class='period'>.</span><span class='id merge'>merge</span><span class='lparen'>(</span><span class='id options'>options</span><span class='rparen'>)</span><span class='rparen'>)</span>
1186
1310
  <span class='ivar'>@xmpp</span><span class='period'>.</span><span class='id on'>on</span><span class='lparen'>(</span><span class='symbol'>:request</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id req'>req</span><span class='op'>|</span>
1187
- <span class='id process'>process</span><span class='semicolon'>;</span> <span class='id push'>push</span>
1311
+ <span class='id process_request'>process_request</span><span class='lparen'>(</span><span class='id req'>req</span><span class='rparen'>)</span>
1312
+ <span class='id req'>req</span><span class='period'>.</span><span class='id responses'>responses</span><span class='period'>.</span><span class='id where'>where</span><span class='lparen'>(</span><span class='symbol'>:dispatched</span> <span class='op'>=&gt;</span> <span class='kw'>false</span><span class='rparen'>)</span><span class='period'>.</span><span class='id map'>map</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='symbol'>:dispatch</span><span class='rparen'>)</span>
1188
1313
  <span class='kw'>end</span>
1189
1314
  <span class='kw'>end</span></pre>
1190
1315
  </td>
@@ -1217,14 +1342,14 @@ Goes through each unprocessed Request and submits it for processing.
1217
1342
  <pre class="lines">
1218
1343
 
1219
1344
 
1220
- 108
1221
- 109
1222
- 110
1223
- 111
1224
- 112</pre>
1345
+ 187
1346
+ 188
1347
+ 189
1348
+ 190
1349
+ 191</pre>
1225
1350
  </td>
1226
1351
  <td>
1227
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 108</span>
1352
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 187</span>
1228
1353
 
1229
1354
  <span class='kw'>def</span> <span class='id process'>process</span>
1230
1355
  <span class='const'>Request</span><span class='period'>.</span><span class='id where'>where</span><span class='lparen'>(</span><span class='symbol'>:processed</span> <span class='op'>=&gt;</span> <span class='kw'>false</span><span class='rparen'>)</span><span class='period'>.</span><span class='id each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id req'>req</span><span class='op'>|</span>
@@ -1282,29 +1407,61 @@ An unprocessed Request.
1282
1407
  <pre class="lines">
1283
1408
 
1284
1409
 
1285
- 63
1286
- 64
1287
- 65
1288
- 66
1289
- 67
1290
- 68
1291
- 69
1292
- 70
1293
- 71
1294
- 72</pre>
1410
+ 108
1411
+ 109
1412
+ 110
1413
+ 111
1414
+ 112
1415
+ 113
1416
+ 114
1417
+ 115
1418
+ 116
1419
+ 117
1420
+ 118
1421
+ 119
1422
+ 120
1423
+ 121
1424
+ 122
1425
+ 123
1426
+ 124
1427
+ 125
1428
+ 126
1429
+ 127
1430
+ 128
1431
+ 129
1432
+ 130
1433
+ 131
1434
+ 132
1435
+ 133</pre>
1295
1436
  </td>
1296
1437
  <td>
1297
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 63</span>
1438
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 108</span>
1298
1439
 
1299
1440
  <span class='kw'>def</span> <span class='id process_request'>process_request</span><span class='lparen'>(</span><span class='id req'>req</span><span class='rparen'>)</span>
1441
+ <span class='id req'>req</span><span class='period'>.</span><span class='id reload'>reload</span>
1442
+ <span class='kw'>if</span> <span class='id req'>req</span><span class='period'>.</span><span class='id processed'>processed</span>
1443
+ <span class='const'>Log</span><span class='period'>.</span><span class='id debug'>debug</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Request '</span><span class='embexpr_beg'>#{</span><span class='id req'>req</span><span class='period'>.</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_content'>' has already been processed, ignoring.</span><span class='tstring_end'>&quot;</span></span>
1444
+ <span class='kw'>return</span>
1445
+ <span class='kw'>elsif</span> <span class='id req'>req</span><span class='period'>.</span><span class='id processing'>processing</span>
1446
+ <span class='const'>Log</span><span class='period'>.</span><span class='id debug'>debug</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Request '</span><span class='embexpr_beg'>#{</span><span class='id req'>req</span><span class='period'>.</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_content'>' is currently in processing, ignoring.</span><span class='tstring_end'>&quot;</span></span>
1447
+ <span class='kw'>return</span>
1448
+ <span class='kw'>end</span>
1449
+
1300
1450
  <span class='kw'>begin</span>
1451
+ <span class='id req'>req</span><span class='period'>.</span><span class='id processing'>processing</span> <span class='op'>=</span> <span class='kw'>true</span>
1452
+ <span class='id req'>req</span><span class='period'>.</span><span class='id save'>save</span>
1301
1453
  <span class='id emit'>emit</span><span class='lparen'>(</span><span class='symbol'>:request</span><span class='comma'>,</span> <span class='id req'>req</span><span class='rparen'>)</span>
1302
1454
  <span class='kw'>rescue</span> <span class='const'>Exception</span> <span class='op'>=&gt;</span> <span class='id e'>e</span>
1303
1455
  <span class='id request_error'>request_error</span><span class='lparen'>(</span><span class='id req'>req</span><span class='comma'>,</span> <span class='id e'>e</span><span class='rparen'>)</span>
1456
+ <span class='kw'>else</span>
1457
+ <span class='id req'>req</span><span class='period'>.</span><span class='id success'>success</span> <span class='op'>=</span> <span class='kw'>true</span>
1304
1458
  <span class='kw'>ensure</span>
1305
- <span class='id req'>req</span><span class='period'>.</span><span class='id processed'>processed</span> <span class='op'>=</span> <span class='kw'>true</span>
1306
- <span class='id req'>req</span><span class='period'>.</span><span class='id save'>save</span>
1307
- <span class='kw'>end</span>
1459
+ <span class='comment'>#if Safubot::mode == :production
1460
+ </span> <span class='id req'>req</span><span class='period'>.</span><span class='id processing'>processing</span> <span class='op'>=</span> <span class='kw'>false</span>
1461
+ <span class='id req'>req</span><span class='period'>.</span><span class='id processed'>processed</span> <span class='op'>=</span> <span class='kw'>true</span>
1462
+ <span class='id req'>req</span><span class='period'>.</span><span class='id save'>save</span>
1463
+ <span class='comment'>#end
1464
+ </span> <span class='kw'>end</span>
1308
1465
  <span class='kw'>end</span></pre>
1309
1466
  </td>
1310
1467
  </tr>
@@ -1337,12 +1494,12 @@ Twitter AJAX API).
1337
1494
  <pre class="lines">
1338
1495
 
1339
1496
 
1340
- 103
1341
- 104
1342
- 105</pre>
1497
+ 182
1498
+ 183
1499
+ 184</pre>
1343
1500
  </td>
1344
1501
  <td>
1345
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 103</span>
1502
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 182</span>
1346
1503
 
1347
1504
  <span class='kw'>def</span> <span class='id pull'>pull</span>
1348
1505
  <span class='ivar'>@twitter</span><span class='period'>.</span><span class='id pull'>pull</span>
@@ -1377,12 +1534,12 @@ Dispatches all undispatched Responses.
1377
1534
  <pre class="lines">
1378
1535
 
1379
1536
 
1380
- 130
1381
- 131
1382
- 132</pre>
1537
+ 203
1538
+ 204
1539
+ 205</pre>
1383
1540
  </td>
1384
1541
  <td>
1385
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 130</span>
1542
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 203</span>
1386
1543
 
1387
1544
  <span class='kw'>def</span> <span class='id push'>push</span>
1388
1545
  <span class='const'>Response</span><span class='period'>.</span><span class='id where'>where</span><span class='lparen'>(</span><span class='symbol'>:dispatched</span> <span class='op'>=&gt;</span> <span class='kw'>false</span><span class='rparen'>)</span><span class='period'>.</span><span class='id each'>each</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id method'>method</span><span class='lparen'>(</span><span class='symbol'>:dispatch</span><span class='rparen'>)</span><span class='rparen'>)</span>
@@ -1402,7 +1559,8 @@ Dispatches all undispatched Responses.
1402
1559
  </p><div class="docstring">
1403
1560
  <div class="discussion">
1404
1561
  <p>
1405
- Records an error and emits a corresponding :request_error event.
1562
+ Records an error in processing and emits a corresponding :request_error
1563
+ event.
1406
1564
  </p>
1407
1565
 
1408
1566
 
@@ -1455,19 +1613,19 @@ The caught Exception.
1455
1613
  <pre class="lines">
1456
1614
 
1457
1615
 
1458
- 53
1459
- 54
1460
- 55
1461
- 56
1462
- 57
1463
- 58</pre>
1616
+ 87
1617
+ 88
1618
+ 89
1619
+ 90
1620
+ 91
1621
+ 92</pre>
1464
1622
  </td>
1465
1623
  <td>
1466
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 53</span>
1624
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 87</span>
1467
1625
 
1468
1626
  <span class='kw'>def</span> <span class='id request_error'>request_error</span><span class='lparen'>(</span><span class='id req'>req</span><span class='comma'>,</span> <span class='id e'>e</span><span class='rparen'>)</span>
1469
- <span class='const'>Log</span><span class='period'>.</span><span class='id error'>error</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Error processing </span><span class='embexpr_beg'>#{</span><span class='id req'>req</span><span class='period'>.</span><span class='id source'>source</span><span class='period'>.</span><span class='id class'>class</span><span class='rbrace'>}</span><span class='tstring_content'> '</span><span class='embexpr_beg'>#{</span><span class='id req'>req</span><span class='period'>.</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_content'>': </span><span class='embexpr_beg'>#{</span><span class='id e'>e</span><span class='rbrace'>}</span><span class='tstring_content'>\n</span><span class='embexpr_beg'>#{</span><span class='id e'>e</span><span class='period'>.</span><span class='id backtrace'>backtrace</span><span class='period'>.</span><span class='id join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n\t</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span>
1470
- <span class='id req'>req</span><span class='period'>.</span><span class='id errors'>errors</span><span class='lbracket'>[</span><span class='const'>Time</span><span class='period'>.</span><span class='id now'>now</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id e'>e</span>
1627
+ <span class='const'>Log</span><span class='period'>.</span><span class='id error'>error</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Error processing </span><span class='embexpr_beg'>#{</span><span class='id req'>req</span><span class='period'>.</span><span class='id source'>source</span><span class='period'>.</span><span class='id class'>class</span><span class='rbrace'>}</span><span class='tstring_content'> '</span><span class='embexpr_beg'>#{</span><span class='id req'>req</span><span class='period'>.</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_content'>': </span><span class='embexpr_beg'>#{</span><span class='id error_report'>error_report</span><span class='lparen'>(</span><span class='id e'>e</span><span class='rparen'>)</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span>
1628
+ <span class='id req'>req</span><span class='period'>.</span><span class='id add_problem'>add_problem</span><span class='lparen'>(</span><span class='id e'>e</span><span class='rparen'>)</span>
1471
1629
  <span class='id req'>req</span><span class='period'>.</span><span class='id save'>save</span>
1472
1630
  <span class='id emit'>emit</span><span class='lparen'>(</span><span class='symbol'>:request_error</span><span class='comma'>,</span> <span class='id req'>req</span><span class='comma'>,</span> <span class='id e'>e</span><span class='rparen'>)</span>
1473
1631
  <span class='kw'>end</span></pre>
@@ -1486,7 +1644,7 @@ The caught Exception.
1486
1644
  </p><div class="docstring">
1487
1645
  <div class="discussion">
1488
1646
  <p>
1489
- Adds a response to the queue.
1647
+ Adds a response to the queue and dispatches it.
1490
1648
  </p>
1491
1649
 
1492
1650
 
@@ -1539,59 +1697,17 @@ Contents of the response.
1539
1697
  <pre class="lines">
1540
1698
 
1541
1699
 
1542
- 118
1543
- 119
1544
- 120
1545
- 121</pre>
1700
+ 197
1701
+ 198
1702
+ 199
1703
+ 200</pre>
1546
1704
  </td>
1547
1705
  <td>
1548
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 118</span>
1706
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 197</span>
1549
1707
 
1550
1708
  <span class='kw'>def</span> <span class='id respond'>respond</span><span class='lparen'>(</span><span class='id req'>req</span><span class='comma'>,</span> <span class='id text'>text</span><span class='rparen'>)</span>
1551
1709
  <span class='const'>Log</span><span class='period'>.</span><span class='id info'>info</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id req'>req</span><span class='period'>.</span><span class='id user'>user</span><span class='period'>.</span><span class='id name'>name</span><span class='rbrace'>}</span><span class='tstring_content'>: </span><span class='embexpr_beg'>#{</span><span class='id req'>req</span><span class='period'>.</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_content'>\nsafubot: </span><span class='embexpr_beg'>#{</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
1552
- <span class='const'>Response</span><span class='period'>.</span><span class='id create'>create</span><span class='lparen'>(</span><span class='symbol'>:request</span> <span class='op'>=&gt;</span> <span class='id req'>req</span><span class='comma'>,</span> <span class='symbol'>:text</span> <span class='op'>=&gt;</span> <span class='id text'>text</span><span class='rparen'>)</span>
1553
- <span class='kw'>end</span></pre>
1554
- </td>
1555
- </tr>
1556
- </table>
1557
- </div>
1558
-
1559
- <div class="method_details ">
1560
- <p class="signature " id="respond_now-instance_method">
1561
-
1562
- - (<tt>Object</tt>) <strong>respond_now</strong>(req, text)
1563
-
1564
-
1565
-
1566
- </p><div class="docstring">
1567
- <div class="discussion">
1568
- <p>
1569
- Respond + push
1570
- </p>
1571
-
1572
-
1573
- </div>
1574
- </div>
1575
- <div class="tags">
1576
-
1577
-
1578
- </div><table class="source_code">
1579
- <tr>
1580
- <td>
1581
- <pre class="lines">
1582
-
1583
-
1584
- 124
1585
- 125
1586
- 126
1587
- 127</pre>
1588
- </td>
1589
- <td>
1590
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 124</span>
1591
-
1592
- <span class='kw'>def</span> <span class='id respond_now'>respond_now</span><span class='lparen'>(</span><span class='id req'>req</span><span class='comma'>,</span> <span class='id text'>text</span><span class='rparen'>)</span>
1593
- <span class='id respond'>respond</span><span class='lparen'>(</span><span class='id req'>req</span><span class='comma'>,</span> <span class='id text'>text</span><span class='rparen'>)</span>
1594
- <span class='id push'>push</span>
1710
+ <span class='id dispatch'>dispatch</span><span class='lparen'>(</span><span class='const'>Response</span><span class='period'>.</span><span class='id create'>create</span><span class='lparen'>(</span><span class='symbol'>:request</span> <span class='op'>=&gt;</span> <span class='id req'>req</span><span class='comma'>,</span> <span class='symbol'>:text</span> <span class='op'>=&gt;</span> <span class='id text'>text</span><span class='rparen'>)</span><span class='rparen'>)</span>
1595
1711
  <span class='kw'>end</span></pre>
1596
1712
  </td>
1597
1713
  </tr>
@@ -1623,17 +1739,17 @@ Calls run_nowait and then waits for all child processes.
1623
1739
  <pre class="lines">
1624
1740
 
1625
1741
 
1626
- 158
1627
- 159
1628
- 160
1629
- 161
1630
- 162
1631
- 163
1632
- 164
1633
- 165</pre>
1742
+ 230
1743
+ 231
1744
+ 232
1745
+ 233
1746
+ 234
1747
+ 235
1748
+ 236
1749
+ 237</pre>
1634
1750
  </td>
1635
1751
  <td>
1636
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 158</span>
1752
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 230</span>
1637
1753
 
1638
1754
  <span class='kw'>def</span> <span class='id run'>run</span>
1639
1755
  <span class='id run_nowait'>run_nowait</span>
@@ -1674,14 +1790,14 @@ processes.
1674
1790
  <pre class="lines">
1675
1791
 
1676
1792
 
1677
- 151
1678
- 152
1679
- 153
1680
- 154
1681
- 155</pre>
1793
+ 223
1794
+ 224
1795
+ 225
1796
+ 226
1797
+ 227</pre>
1682
1798
  </td>
1683
1799
  <td>
1684
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 151</span>
1800
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 223</span>
1685
1801
 
1686
1802
  <span class='kw'>def</span> <span class='id run_nowait'>run_nowait</span>
1687
1803
  <span class='id pull'>pull</span><span class='semicolon'>;</span> <span class='id process'>process</span><span class='semicolon'>;</span> <span class='id push'>push</span>
@@ -1718,13 +1834,13 @@ Shuts down the streaming processes.
1718
1834
  <pre class="lines">
1719
1835
 
1720
1836
 
1721
- 168
1722
- 169
1723
- 170
1724
- 171</pre>
1837
+ 240
1838
+ 241
1839
+ 242
1840
+ 243</pre>
1725
1841
  </td>
1726
1842
  <td>
1727
- <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 168</span>
1843
+ <pre class="code"><span class="info file"># File 'lib/safubot/bot.rb', line 240</span>
1728
1844
 
1729
1845
  <span class='kw'>def</span> <span class='id stop'>stop</span>
1730
1846
  <span class='ivar'>@twitter</span><span class='period'>.</span><span class='id stop'>stop</span> <span class='kw'>if</span> <span class='ivar'>@twitter</span>
@@ -1740,7 +1856,7 @@ Shuts down the streaming processes.
1740
1856
  </div>
1741
1857
 
1742
1858
  <div id="footer">
1743
- Generated on Tue Nov 29 11:44:04 2011 by
1859
+ Generated on Thu Dec 1 18:19:17 2011 by
1744
1860
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1745
1861
  0.7.3 (ruby-1.9.2).
1746
1862
  </div>