mongrel 0.3.13.3 → 0.3.13.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (258) hide show
  1. data/Rakefile +5 -4
  2. data/bin/mongrel_rails +162 -169
  3. data/doc/rdoc/classes/IO.src/M000001.html +5 -5
  4. data/doc/rdoc/classes/IO.src/M000002.html +5 -5
  5. data/doc/rdoc/classes/Kernel.html +10 -10
  6. data/doc/rdoc/classes/Kernel.src/M000010.html +19 -0
  7. data/doc/rdoc/classes/Kernel.src/M000011.html +23 -0
  8. data/doc/rdoc/classes/Mongrel.html +27 -10
  9. data/doc/rdoc/classes/Mongrel/CGIWrapper.html +67 -54
  10. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000101.html → M000112.html} +11 -10
  11. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000102.html → M000113.html} +31 -31
  12. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000103.html → M000114.html} +20 -20
  13. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000115.html +32 -0
  14. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000105.html → M000116.html} +11 -11
  15. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000106.html → M000117.html} +4 -4
  16. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000107.html → M000118.html} +4 -4
  17. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000108.html → M000119.html} +4 -4
  18. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/{M000109.html → M000120.html} +5 -5
  19. data/doc/rdoc/classes/Mongrel/Camping.html +5 -5
  20. data/doc/rdoc/classes/Mongrel/Camping.src/{M000048.html → M000039.html} +0 -0
  21. data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.html +10 -10
  22. data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.src/{M000049.html → M000040.html} +0 -0
  23. data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.src/{M000050.html → M000041.html} +0 -0
  24. data/doc/rdoc/classes/Mongrel/Command/Base.html +65 -65
  25. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000016.html +24 -0
  26. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000017.html +42 -0
  27. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000018.html +18 -0
  28. data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000029.html → M000019.html} +0 -0
  29. data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000030.html → M000020.html} +0 -0
  30. data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000031.html → M000021.html} +0 -0
  31. data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000032.html → M000022.html} +0 -0
  32. data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000033.html → M000023.html} +0 -0
  33. data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000034.html → M000024.html} +0 -0
  34. data/doc/rdoc/classes/Mongrel/Command/Base.src/{M000035.html → M000025.html} +0 -0
  35. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000026.html +11 -11
  36. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000027.html +11 -29
  37. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000028.html +5 -5
  38. data/doc/rdoc/classes/Mongrel/Command/Registry.html +15 -15
  39. data/doc/rdoc/classes/Mongrel/Command/Registry.src/{M000039.html → M000029.html} +0 -0
  40. data/doc/rdoc/classes/Mongrel/Command/Registry.src/{M000040.html → M000030.html} +10 -6
  41. data/doc/rdoc/classes/Mongrel/Command/Registry.src/M000031.html +58 -0
  42. data/doc/rdoc/classes/Mongrel/Configurator.html +115 -115
  43. data/doc/rdoc/classes/Mongrel/Configurator.src/M000091.html +27 -0
  44. data/doc/rdoc/classes/Mongrel/Configurator.src/M000092.html +31 -0
  45. data/doc/rdoc/classes/Mongrel/Configurator.src/M000093.html +21 -0
  46. data/doc/rdoc/classes/Mongrel/Configurator.src/M000094.html +20 -0
  47. data/doc/rdoc/classes/Mongrel/Configurator.src/M000095.html +23 -0
  48. data/doc/rdoc/classes/Mongrel/Configurator.src/{M000115.html → M000096.html} +4 -4
  49. data/doc/rdoc/classes/Mongrel/Configurator.src/{M000116.html → M000097.html} +24 -24
  50. data/doc/rdoc/classes/Mongrel/Configurator.src/{M000117.html → M000098.html} +5 -5
  51. data/doc/rdoc/classes/Mongrel/Configurator.src/M000099.html +39 -0
  52. data/doc/rdoc/classes/Mongrel/Configurator.src/{M000119.html → M000100.html} +19 -19
  53. data/doc/rdoc/classes/Mongrel/Configurator.src/{M000120.html → M000101.html} +4 -4
  54. data/doc/rdoc/classes/Mongrel/Configurator.src/{M000121.html → M000102.html} +10 -10
  55. data/doc/rdoc/classes/Mongrel/Configurator.src/{M000122.html → M000103.html} +5 -5
  56. data/doc/rdoc/classes/Mongrel/Configurator.src/{M000123.html → M000104.html} +4 -4
  57. data/doc/rdoc/classes/Mongrel/Configurator.src/{M000124.html → M000105.html} +8 -8
  58. data/doc/rdoc/classes/Mongrel/Configurator.src/M000106.html +22 -0
  59. data/doc/rdoc/classes/Mongrel/Configurator.src/{M000126.html → M000107.html} +4 -4
  60. data/doc/rdoc/classes/Mongrel/Configurator.src/M000108.html +34 -0
  61. data/doc/rdoc/classes/Mongrel/Configurator.src/M000109.html +18 -0
  62. data/doc/rdoc/classes/Mongrel/Configurator.src/M000110.html +23 -14
  63. data/doc/rdoc/classes/Mongrel/Configurator.src/M000111.html +5 -18
  64. data/doc/rdoc/classes/Mongrel/Const.html +11 -6
  65. data/doc/rdoc/classes/Mongrel/DeflateFilter.html +10 -10
  66. data/doc/rdoc/classes/Mongrel/DeflateFilter.src/{M000099.html → M000121.html} +5 -5
  67. data/doc/rdoc/classes/Mongrel/DeflateFilter.src/{M000100.html → M000122.html} +14 -14
  68. data/doc/rdoc/classes/Mongrel/DirHandler.html +31 -31
  69. data/doc/rdoc/classes/Mongrel/DirHandler.src/{M000058.html → M000049.html} +0 -0
  70. data/doc/rdoc/classes/Mongrel/DirHandler.src/{M000059.html → M000050.html} +0 -0
  71. data/doc/rdoc/classes/Mongrel/DirHandler.src/{M000060.html → M000051.html} +12 -16
  72. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000052.html +63 -0
  73. data/doc/rdoc/classes/Mongrel/DirHandler.src/{M000062.html → M000053.html} +25 -25
  74. data/doc/rdoc/classes/Mongrel/DirHandler.src/{M000063.html → M000054.html} +4 -4
  75. data/doc/rdoc/classes/Mongrel/Error404Handler.html +10 -10
  76. data/doc/rdoc/classes/Mongrel/Error404Handler.src/{M000131.html → M000123.html} +0 -0
  77. data/doc/rdoc/classes/Mongrel/Error404Handler.src/{M000132.html → M000124.html} +0 -0
  78. data/doc/rdoc/classes/Mongrel/HeaderOut.html +10 -10
  79. data/doc/rdoc/classes/Mongrel/HeaderOut.src/{M000072.html → M000064.html} +4 -4
  80. data/doc/rdoc/classes/Mongrel/HeaderOut.src/{M000073.html → M000065.html} +4 -4
  81. data/doc/rdoc/classes/Mongrel/HttpHandler.html +15 -15
  82. data/doc/rdoc/classes/Mongrel/HttpHandler.src/{M000078.html → M000070.html} +0 -0
  83. data/doc/rdoc/classes/Mongrel/HttpHandler.src/{M000079.html → M000071.html} +0 -0
  84. data/doc/rdoc/classes/Mongrel/HttpHandler.src/{M000080.html → M000072.html} +0 -0
  85. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.html +20 -20
  86. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/{M000022.html → M000012.html} +0 -0
  87. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/{M000023.html → M000013.html} +0 -0
  88. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/{M000024.html → M000014.html} +0 -0
  89. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/{M000025.html → M000015.html} +0 -0
  90. data/doc/rdoc/classes/Mongrel/HttpParams.html +131 -0
  91. data/doc/rdoc/classes/Mongrel/HttpParser.html +35 -35
  92. data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000051.html → M000042.html} +1 -1
  93. data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000052.html → M000043.html} +1 -1
  94. data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000053.html → M000044.html} +1 -1
  95. data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000054.html → M000045.html} +3 -3
  96. data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000055.html → M000046.html} +1 -1
  97. data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000056.html → M000047.html} +1 -1
  98. data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000057.html → M000048.html} +1 -1
  99. data/doc/rdoc/classes/Mongrel/HttpRequest.html +63 -24
  100. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000130.html +47 -0
  101. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000131.html +37 -0
  102. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000132.html +29 -0
  103. data/doc/rdoc/classes/Mongrel/HttpRequest.src/{M000139.html → M000133.html} +6 -6
  104. data/doc/rdoc/classes/Mongrel/HttpRequest.src/{M000140.html → M000134.html} +6 -6
  105. data/doc/rdoc/classes/Mongrel/HttpRequest.src/{M000141.html → M000135.html} +18 -18
  106. data/doc/rdoc/classes/Mongrel/HttpResponse.html +66 -72
  107. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000073.html +25 -0
  108. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000074.html +20 -0
  109. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000075.html +26 -0
  110. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000076.html +22 -0
  111. data/doc/rdoc/classes/Mongrel/HttpResponse.src/{M000085.html → M000077.html} +8 -8
  112. data/doc/rdoc/classes/Mongrel/HttpResponse.src/{M000086.html → M000078.html} +8 -8
  113. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000079.html +31 -0
  114. data/doc/rdoc/classes/Mongrel/HttpResponse.src/{M000088.html → M000080.html} +7 -7
  115. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000081.html +7 -12
  116. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000082.html +7 -7
  117. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000083.html +7 -12
  118. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000084.html +5 -9
  119. data/doc/rdoc/classes/Mongrel/HttpServer.html +58 -43
  120. data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000064.html → M000055.html} +11 -11
  121. data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000065.html → M000056.html} +76 -72
  122. data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000066.html → M000057.html} +18 -17
  123. data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000067.html → M000058.html} +7 -7
  124. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000059.html +22 -0
  125. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000060.html +62 -0
  126. data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000069.html → M000061.html} +20 -20
  127. data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000070.html → M000062.html} +4 -4
  128. data/doc/rdoc/classes/Mongrel/HttpServer.src/{M000071.html → M000063.html} +8 -8
  129. data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.html +15 -15
  130. data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.src/{M000042.html → M000032.html} +23 -25
  131. data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.src/{M000043.html → M000033.html} +11 -11
  132. data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.src/{M000044.html → M000034.html} +12 -12
  133. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.html +30 -15
  134. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/{M000045.html → M000035.html} +9 -8
  135. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000036.html +54 -0
  136. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000037.html +21 -0
  137. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000038.html +25 -0
  138. data/doc/rdoc/classes/Mongrel/RedirectHandler.html +10 -10
  139. data/doc/rdoc/classes/Mongrel/RedirectHandler.src/{M000136.html → M000128.html} +8 -8
  140. data/doc/rdoc/classes/Mongrel/RedirectHandler.src/{M000137.html → M000129.html} +13 -13
  141. data/doc/rdoc/classes/Mongrel/StatisticsFilter.html +16 -16
  142. data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/M000125.html +24 -0
  143. data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/{M000134.html → M000126.html} +10 -10
  144. data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/{M000135.html → M000127.html} +4 -4
  145. data/doc/rdoc/classes/{Stats.html → Mongrel/Stats.html} +44 -60
  146. data/doc/rdoc/classes/Mongrel/Stats.src/M000136.html +19 -0
  147. data/doc/rdoc/classes/Mongrel/Stats.src/M000137.html +23 -0
  148. data/doc/rdoc/classes/Mongrel/Stats.src/M000138.html +26 -0
  149. data/doc/rdoc/classes/Mongrel/Stats.src/M000139.html +18 -0
  150. data/doc/rdoc/classes/{Stats.src/M000009.html → Mongrel/Stats.src/M000140.html} +6 -6
  151. data/doc/rdoc/classes/Mongrel/Stats.src/M000141.html +18 -0
  152. data/doc/rdoc/classes/Mongrel/Stats.src/M000142.html +23 -0
  153. data/doc/rdoc/classes/Mongrel/Stats.src/M000143.html +20 -0
  154. data/doc/rdoc/classes/Mongrel/StatusHandler.html +20 -20
  155. data/doc/rdoc/classes/Mongrel/StatusHandler.src/{M000074.html → M000066.html} +4 -4
  156. data/doc/rdoc/classes/Mongrel/StatusHandler.src/{M000075.html → M000067.html} +10 -10
  157. data/doc/rdoc/classes/Mongrel/StatusHandler.src/{M000076.html → M000068.html} +28 -28
  158. data/doc/rdoc/classes/Mongrel/StatusHandler.src/{M000077.html → M000069.html} +6 -6
  159. data/doc/rdoc/classes/Mongrel/URIClassifier.html +30 -30
  160. data/doc/rdoc/classes/Mongrel/URIClassifier.src/{M000093.html → M000085.html} +4 -4
  161. data/doc/rdoc/classes/Mongrel/URIClassifier.src/{M000094.html → M000086.html} +4 -4
  162. data/doc/rdoc/classes/Mongrel/URIClassifier.src/{M000095.html → M000087.html} +0 -0
  163. data/doc/rdoc/classes/Mongrel/URIClassifier.src/{M000096.html → M000088.html} +1 -1
  164. data/doc/rdoc/classes/Mongrel/URIClassifier.src/{M000097.html → M000089.html} +0 -0
  165. data/doc/rdoc/classes/Mongrel/URIClassifier.src/{M000098.html → M000090.html} +1 -1
  166. data/doc/rdoc/classes/MongrelDbg.html +26 -26
  167. data/doc/rdoc/classes/MongrelDbg.src/M000005.html +24 -0
  168. data/doc/rdoc/classes/MongrelDbg.src/{M000016.html → M000006.html} +6 -6
  169. data/doc/rdoc/classes/MongrelDbg.src/{M000017.html → M000007.html} +8 -8
  170. data/doc/rdoc/classes/MongrelDbg.src/{M000018.html → M000008.html} +7 -7
  171. data/doc/rdoc/classes/MongrelDbg.src/{M000019.html → M000009.html} +4 -4
  172. data/doc/rdoc/classes/RequestLog/Access.html +5 -5
  173. data/doc/rdoc/classes/RequestLog/Access.src/{M000142.html → M000144.html} +5 -5
  174. data/doc/rdoc/classes/RequestLog/Files.html +5 -5
  175. data/doc/rdoc/classes/RequestLog/Files.src/{M000143.html → M000145.html} +5 -5
  176. data/doc/rdoc/classes/RequestLog/Objects.html +12 -6
  177. data/doc/rdoc/classes/RequestLog/Objects.src/M000147.html +51 -0
  178. data/doc/rdoc/classes/RequestLog/Params.html +5 -5
  179. data/doc/rdoc/classes/RequestLog/Params.src/{M000146.html → M000148.html} +5 -5
  180. data/doc/rdoc/classes/RequestLog/Threads.html +5 -5
  181. data/doc/rdoc/classes/RequestLog/Threads.src/{M000144.html → M000146.html} +20 -20
  182. data/doc/rdoc/classes/{ObjectTracker.html → Sync.html} +26 -45
  183. data/doc/rdoc/created.rid +1 -1
  184. data/doc/rdoc/files/COPYING.html +1 -1
  185. data/doc/rdoc/files/LICENSE.html +1 -1
  186. data/doc/rdoc/files/README.html +1 -1
  187. data/doc/rdoc/files/ext/http11/http11_c.html +1 -1
  188. data/doc/rdoc/files/lib/mongrel/camping_rb.html +1 -1
  189. data/doc/rdoc/files/lib/mongrel/cgi_rb.html +1 -1
  190. data/doc/rdoc/files/lib/mongrel/command_rb.html +1 -1
  191. data/doc/rdoc/files/lib/mongrel/configurator_rb.html +111 -0
  192. data/doc/rdoc/files/lib/mongrel/debug_rb.html +1 -1
  193. data/doc/rdoc/files/lib/mongrel/handlers_rb.html +1 -1
  194. data/doc/rdoc/files/lib/mongrel/init_rb.html +1 -1
  195. data/doc/rdoc/files/lib/mongrel/rails_rb.html +2 -1
  196. data/doc/rdoc/files/lib/mongrel/stats_rb.html +1 -1
  197. data/doc/rdoc/files/lib/mongrel/tcphack_rb.html +1 -1
  198. data/doc/rdoc/files/lib/mongrel_rb.html +2 -4
  199. data/doc/rdoc/fr_class_index.html +3 -2
  200. data/doc/rdoc/fr_file_index.html +1 -0
  201. data/doc/rdoc/fr_method_index.html +144 -142
  202. data/ext/http11/http11.c +69 -52
  203. data/ext/http11/http11_parser.c +366 -282
  204. data/ext/http11/http11_parser.h +2 -0
  205. data/ext/http11/http11_parser.rl +192 -0
  206. data/lib/mongrel.rb +127 -433
  207. data/lib/mongrel/cgi.rb +19 -6
  208. data/lib/mongrel/command.rb +15 -3
  209. data/lib/mongrel/configurator.rb +374 -0
  210. data/lib/mongrel/debug.rb +47 -56
  211. data/lib/mongrel/handlers.rb +16 -20
  212. data/lib/mongrel/rails.rb +36 -20
  213. data/lib/mongrel/stats.rb +60 -58
  214. data/test/test_conditional.rb +37 -30
  215. data/test/test_http11.rb +14 -14
  216. data/test/test_stats.rb +2 -2
  217. data/test/test_ws.rb +4 -2
  218. data/tools/rakehelp.rb +4 -4
  219. metadata +262 -260
  220. data/doc/rdoc/classes/Kernel.src/M000020.html +0 -19
  221. data/doc/rdoc/classes/Kernel.src/M000021.html +0 -23
  222. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000104.html +0 -27
  223. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000036.html +0 -24
  224. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000037.html +0 -24
  225. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000038.html +0 -18
  226. data/doc/rdoc/classes/Mongrel/Command/Registry.src/M000041.html +0 -50
  227. data/doc/rdoc/classes/Mongrel/Configurator.src/M000112.html +0 -20
  228. data/doc/rdoc/classes/Mongrel/Configurator.src/M000113.html +0 -20
  229. data/doc/rdoc/classes/Mongrel/Configurator.src/M000114.html +0 -23
  230. data/doc/rdoc/classes/Mongrel/Configurator.src/M000118.html +0 -30
  231. data/doc/rdoc/classes/Mongrel/Configurator.src/M000125.html +0 -25
  232. data/doc/rdoc/classes/Mongrel/Configurator.src/M000127.html +0 -35
  233. data/doc/rdoc/classes/Mongrel/Configurator.src/M000128.html +0 -18
  234. data/doc/rdoc/classes/Mongrel/Configurator.src/M000129.html +0 -33
  235. data/doc/rdoc/classes/Mongrel/Configurator.src/M000130.html +0 -18
  236. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000061.html +0 -63
  237. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000138.html +0 -56
  238. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000087.html +0 -31
  239. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000089.html +0 -20
  240. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000090.html +0 -20
  241. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000091.html +0 -20
  242. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000092.html +0 -18
  243. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000068.html +0 -50
  244. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000046.html +0 -51
  245. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000047.html +0 -23
  246. data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/M000133.html +0 -24
  247. data/doc/rdoc/classes/MongrelDbg.src/M000015.html +0 -19
  248. data/doc/rdoc/classes/ObjectTracker.src/M000013.html +0 -27
  249. data/doc/rdoc/classes/ObjectTracker.src/M000014.html +0 -44
  250. data/doc/rdoc/classes/RequestLog/Objects.src/M000145.html +0 -19
  251. data/doc/rdoc/classes/Stats.src/M000005.html +0 -19
  252. data/doc/rdoc/classes/Stats.src/M000006.html +0 -23
  253. data/doc/rdoc/classes/Stats.src/M000007.html +0 -26
  254. data/doc/rdoc/classes/Stats.src/M000008.html +0 -18
  255. data/doc/rdoc/classes/Stats.src/M000010.html +0 -18
  256. data/doc/rdoc/classes/Stats.src/M000011.html +0 -23
  257. data/doc/rdoc/classes/Stats.src/M000012.html +0 -20
  258. data/lib/http11.so +0 -0
@@ -10,13 +10,14 @@
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre> <span class="ruby-comment cmt"># File lib/mongrel/rails.rb, line 37</span>
14
- 37: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">dir</span>, <span class="ruby-identifier">mime_map</span> = {})
15
- 38: <span class="ruby-ivar">@files</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">DirHandler</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">dir</span>,<span class="ruby-keyword kw">false</span>)
16
- 39: <span class="ruby-ivar">@guard</span> = <span class="ruby-constant">Mutex</span>.<span class="ruby-identifier">new</span>
17
- 40:
18
- 41: <span class="ruby-comment cmt"># register the requested mime types</span>
19
- 42: <span class="ruby-identifier">mime_map</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">DirHandler</span><span class="ruby-operator">::</span><span class="ruby-identifier">add_mime_type</span>(<span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span>) }
20
- 43: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel/rails.rb, line 43</span>
14
+ 43: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">dir</span>, <span class="ruby-identifier">mime_map</span> = {})
15
+ 44: <span class="ruby-ivar">@files</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">DirHandler</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">dir</span>,<span class="ruby-keyword kw">false</span>)
16
+ 45: <span class="ruby-ivar">@guard</span> = <span class="ruby-constant">Sync</span>.<span class="ruby-identifier">new</span>
17
+ 46: <span class="ruby-ivar">@tick</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>
18
+ 47:
19
+ 48: <span class="ruby-comment cmt"># register the requested mime types</span>
20
+ 49: <span class="ruby-identifier">mime_map</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">DirHandler</span><span class="ruby-operator">::</span><span class="ruby-identifier">add_mime_type</span>(<span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span>) }
21
+ 50: <span class="ruby-keyword kw">end</span></pre>
21
22
  </body>
22
23
  </html>
@@ -0,0 +1,54 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>process (Mongrel::Rails::RailsHandler)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel/rails.rb, line 58</span>
14
+ 58: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">request</span>, <span class="ruby-identifier">response</span>)
15
+ 59: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">closed?</span>
16
+ 60: <span class="ruby-keyword kw">return</span>
17
+ 61: <span class="ruby-keyword kw">end</span>
18
+ 62:
19
+ 63: <span class="ruby-identifier">path_info</span> = <span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">PATH_INFO</span>]
20
+ 64: <span class="ruby-identifier">page_cached</span> = <span class="ruby-identifier">path_info</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;.html&quot;</span>
21
+ 65: <span class="ruby-identifier">get_or_head</span> = <span class="ruby-ivar">@@file_only_methods</span>.<span class="ruby-identifier">include?</span> <span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">REQUEST_METHOD</span>]
22
+ 66:
23
+ 67: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">get_or_head</span> <span class="ruby-keyword kw">and</span> <span class="ruby-ivar">@files</span>.<span class="ruby-identifier">can_serve</span>(<span class="ruby-identifier">path_info</span>)
24
+ 68: <span class="ruby-comment cmt"># File exists as-is so serve it up</span>
25
+ 69: <span class="ruby-ivar">@files</span>.<span class="ruby-identifier">process</span>(<span class="ruby-identifier">request</span>,<span class="ruby-identifier">response</span>)
26
+ 70: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">get_or_head</span> <span class="ruby-keyword kw">and</span> <span class="ruby-ivar">@files</span>.<span class="ruby-identifier">can_serve</span>(<span class="ruby-identifier">page_cached</span>)
27
+ 71: <span class="ruby-comment cmt"># possible cached page, serve it up</span>
28
+ 72: <span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">PATH_INFO</span>] = <span class="ruby-identifier">page_cached</span>
29
+ 73: <span class="ruby-ivar">@files</span>.<span class="ruby-identifier">process</span>(<span class="ruby-identifier">request</span>,<span class="ruby-identifier">response</span>)
30
+ 74: <span class="ruby-keyword kw">else</span>
31
+ 75: <span class="ruby-keyword kw">begin</span>
32
+ 76: <span class="ruby-identifier">cgi</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">CGIWrapper</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">request</span>, <span class="ruby-identifier">response</span>)
33
+ 77: <span class="ruby-identifier">cgi</span>.<span class="ruby-identifier">handler</span> = <span class="ruby-keyword kw">self</span>
34
+ 78: <span class="ruby-comment cmt"># we don't want the output to be really final until we're out of the lock</span>
35
+ 79: <span class="ruby-identifier">cgi</span>.<span class="ruby-identifier">default_really_final</span> = <span class="ruby-keyword kw">false</span>
36
+ 80:
37
+ 81: <span class="ruby-identifier">log_threads_waiting_for</span>(<span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-value str">&quot;PATH_INFO&quot;</span>]) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$mongrel_debug_client</span>
38
+ 82:
39
+ 83: <span class="ruby-ivar">@guard</span>.<span class="ruby-identifier">synchronize</span>(<span class="ruby-identifier">:EX</span>) {
40
+ 84: <span class="ruby-constant">Dispatcher</span>.<span class="ruby-identifier">dispatch</span>(<span class="ruby-identifier">cgi</span>, <span class="ruby-constant">ActionController</span><span class="ruby-operator">::</span><span class="ruby-constant">CgiRequest</span><span class="ruby-operator">::</span><span class="ruby-constant">DEFAULT_SESSION_OPTIONS</span>, <span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>)
41
+ 85: }
42
+ 86:
43
+ 87: <span class="ruby-comment cmt"># This finalizes the output using the proper HttpResponse way</span>
44
+ 88: <span class="ruby-identifier">cgi</span>.<span class="ruby-identifier">out</span>(<span class="ruby-value str">&quot;text/html&quot;</span>,<span class="ruby-keyword kw">true</span>) {<span class="ruby-value str">&quot;&quot;</span>}
45
+ 89: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Errno</span><span class="ruby-operator">::</span><span class="ruby-constant">EPIPE</span>
46
+ 90: <span class="ruby-identifier">response</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">close</span>
47
+ 91: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Object</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">rails_error</span>
48
+ 92: <span class="ruby-constant">STDERR</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;#{Time.now}: Error calling Dispatcher.dispatch #{rails_error.inspect}&quot;</span>
49
+ 93: <span class="ruby-constant">STDERR</span>.<span class="ruby-identifier">puts</span> <span class="ruby-identifier">rails_error</span>.<span class="ruby-identifier">backtrace</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot;\n&quot;</span>)
50
+ 94: <span class="ruby-keyword kw">end</span>
51
+ 95: <span class="ruby-keyword kw">end</span>
52
+ 96: <span class="ruby-keyword kw">end</span></pre>
53
+ </body>
54
+ </html>
@@ -0,0 +1,21 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>log_threads_waiting_for (Mongrel::Rails::RailsHandler)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel/rails.rb, line 98</span>
14
+ 98: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">log_threads_waiting_for</span>(<span class="ruby-identifier">event</span>)
15
+ 99: <span class="ruby-keyword kw">if</span> <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span> <span class="ruby-operator">-</span> <span class="ruby-ivar">@tick</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">10</span>
16
+ 100: <span class="ruby-constant">STDERR</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;#{Time.now}: #{@guard.sync_waiting.length} threads sync_waiting for #{event}, #{self.listener.workers.list.length} still active in mongrel.&quot;</span>
17
+ 101: <span class="ruby-ivar">@tick</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>
18
+ 102: <span class="ruby-keyword kw">end</span>
19
+ 103: <span class="ruby-keyword kw">end</span></pre>
20
+ </body>
21
+ </html>
@@ -0,0 +1,25 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>reload! (Mongrel::Rails::RailsHandler)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel/rails.rb, line 107</span>
14
+ 107: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">reload!</span>
15
+ 108: <span class="ruby-keyword kw">begin</span>
16
+ 109: <span class="ruby-ivar">@guard</span>.<span class="ruby-identifier">synchronize</span>(<span class="ruby-identifier">:EX</span>) {
17
+ 110: <span class="ruby-identifier">$&quot;</span>.<span class="ruby-identifier">replace</span> <span class="ruby-identifier">$orig_dollar_quote</span>
18
+ 111: <span class="ruby-constant">GC</span>.<span class="ruby-identifier">start</span>
19
+ 112: <span class="ruby-constant">Dispatcher</span>.<span class="ruby-identifier">reset_application!</span>
20
+ 113: <span class="ruby-constant">ActionController</span><span class="ruby-operator">::</span><span class="ruby-constant">Routing</span><span class="ruby-operator">::</span><span class="ruby-constant">Routes</span>.<span class="ruby-identifier">reload</span>
21
+ 114: }
22
+ 115: <span class="ruby-keyword kw">end</span>
23
+ 116: <span class="ruby-keyword kw">end</span></pre>
24
+ </body>
25
+ </html>
@@ -107,8 +107,8 @@ Eg. /test/something?help=true&amp;disclaimer=false
107
107
  <h3 class="section-bar">Methods</h3>
108
108
 
109
109
  <div class="name-list">
110
- <a href="#M000136">new</a>&nbsp;&nbsp;
111
- <a href="#M000137">process</a>&nbsp;&nbsp;
110
+ <a href="#M000128">new</a>&nbsp;&nbsp;
111
+ <a href="#M000129">process</a>&nbsp;&nbsp;
112
112
  </div>
113
113
  </div>
114
114
 
@@ -130,12 +130,12 @@ Eg. /test/something?help=true&amp;disclaimer=false
130
130
  <div id="methods">
131
131
  <h3 class="section-bar">Public Class methods</h3>
132
132
 
133
- <div id="method-M000136" class="method-detail">
134
- <a name="M000136"></a>
133
+ <div id="method-M000128" class="method-detail">
134
+ <a name="M000128"></a>
135
135
 
136
136
  <div class="method-heading">
137
- <a href="RedirectHandler.src/M000136.html" target="Code" class="method-signature"
138
- onclick="popupCode('RedirectHandler.src/M000136.html');return false;">
137
+ <a href="RedirectHandler.src/M000128.html" target="Code" class="method-signature"
138
+ onclick="popupCode('RedirectHandler.src/M000128.html');return false;">
139
139
  <span class="method-name">new</span><span class="method-args">(pattern, replacement = nil, &amp;block)</span>
140
140
  </a>
141
141
  </div>
@@ -155,12 +155,12 @@ replacement, block =&gt; One of them is used to replace the found text
155
155
 
156
156
  <h3 class="section-bar">Public Instance methods</h3>
157
157
 
158
- <div id="method-M000137" class="method-detail">
159
- <a name="M000137"></a>
158
+ <div id="method-M000129" class="method-detail">
159
+ <a name="M000129"></a>
160
160
 
161
161
  <div class="method-heading">
162
- <a href="RedirectHandler.src/M000137.html" target="Code" class="method-signature"
163
- onclick="popupCode('RedirectHandler.src/M000137.html');return false;">
162
+ <a href="RedirectHandler.src/M000129.html" target="Code" class="method-signature"
163
+ onclick="popupCode('RedirectHandler.src/M000129.html');return false;">
164
164
  <span class="method-name">process</span><span class="method-args">(request, response)</span>
165
165
  </a>
166
166
  </div>
@@ -10,13 +10,13 @@
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 433</span>
14
- 433: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">pattern</span>, <span class="ruby-identifier">replacement</span> = <span class="ruby-keyword kw">nil</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
15
- 434: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">replacement</span> <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">block</span>
16
- 435: <span class="ruby-ivar">@replacement</span> = <span class="ruby-identifier">pattern</span>
17
- 436: <span class="ruby-keyword kw">else</span>
18
- 437: <span class="ruby-ivar">@pattern</span>, <span class="ruby-ivar">@replacement</span>, <span class="ruby-ivar">@block</span> = <span class="ruby-identifier">pattern</span>, <span class="ruby-identifier">replacement</span>, <span class="ruby-identifier">block</span>
19
- 438: <span class="ruby-keyword kw">end</span>
20
- 439: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 429</span>
14
+ 429: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">pattern</span>, <span class="ruby-identifier">replacement</span> = <span class="ruby-keyword kw">nil</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
15
+ 430: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">replacement</span> <span class="ruby-keyword kw">or</span> <span class="ruby-identifier">block</span>
16
+ 431: <span class="ruby-ivar">@replacement</span> = <span class="ruby-identifier">pattern</span>
17
+ 432: <span class="ruby-keyword kw">else</span>
18
+ 433: <span class="ruby-ivar">@pattern</span>, <span class="ruby-ivar">@replacement</span>, <span class="ruby-ivar">@block</span> = <span class="ruby-identifier">pattern</span>, <span class="ruby-identifier">replacement</span>, <span class="ruby-identifier">block</span>
19
+ 434: <span class="ruby-keyword kw">end</span>
20
+ 435: <span class="ruby-keyword kw">end</span></pre>
21
21
  </body>
22
22
  </html>
@@ -10,18 +10,18 @@
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 442</span>
14
- 442: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">request</span>, <span class="ruby-identifier">response</span>)
15
- 443: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@pattern</span>
16
- 444: <span class="ruby-identifier">response</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">write</span>(<span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">REDIRECT</span> <span class="ruby-operator">%</span> <span class="ruby-ivar">@replacement</span>)
17
- 445: <span class="ruby-keyword kw">else</span>
18
- 446: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@block</span>
19
- 447: <span class="ruby-identifier">new_path</span> = <span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-value str">'REQUEST_URI'</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-ivar">@pattern</span>, <span class="ruby-operator">&amp;</span><span class="ruby-ivar">@block</span>)
20
- 448: <span class="ruby-keyword kw">else</span>
21
- 449: <span class="ruby-identifier">new_path</span> = <span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-value str">'REQUEST_URI'</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-ivar">@pattern</span>, <span class="ruby-ivar">@replacement</span>)
22
- 450: <span class="ruby-keyword kw">end</span>
23
- 451: <span class="ruby-identifier">response</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">write</span>(<span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">REDIRECT</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">new_path</span>)
24
- 452: <span class="ruby-keyword kw">end</span>
25
- 453: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 438</span>
14
+ 438: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">request</span>, <span class="ruby-identifier">response</span>)
15
+ 439: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@pattern</span>
16
+ 440: <span class="ruby-identifier">response</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">write</span>(<span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">REDIRECT</span> <span class="ruby-operator">%</span> <span class="ruby-ivar">@replacement</span>)
17
+ 441: <span class="ruby-keyword kw">else</span>
18
+ 442: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@block</span>
19
+ 443: <span class="ruby-identifier">new_path</span> = <span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-value str">'REQUEST_URI'</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-ivar">@pattern</span>, <span class="ruby-operator">&amp;</span><span class="ruby-ivar">@block</span>)
20
+ 444: <span class="ruby-keyword kw">else</span>
21
+ 445: <span class="ruby-identifier">new_path</span> = <span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>[<span class="ruby-value str">'REQUEST_URI'</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-ivar">@pattern</span>, <span class="ruby-ivar">@replacement</span>)
22
+ 446: <span class="ruby-keyword kw">end</span>
23
+ 447: <span class="ruby-identifier">response</span>.<span class="ruby-identifier">socket</span>.<span class="ruby-identifier">write</span>(<span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">REDIRECT</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">new_path</span>)
24
+ 448: <span class="ruby-keyword kw">end</span>
25
+ 449: <span class="ruby-keyword kw">end</span></pre>
26
26
  </body>
27
27
  </html>
@@ -90,7 +90,7 @@ in production.
90
90
  <p>
91
91
  You should pass the filter to <a
92
92
  href="StatusHandler.html">StatusHandler</a> as <a
93
- href="StatusHandler.html#M000074">StatusHandler.new</a>(:stats_filter =&gt;
93
+ href="StatusHandler.html#M000066">StatusHandler.new</a>(:stats_filter =&gt;
94
94
  stats). This lets you then hit the status URI you want and get these stats
95
95
  from a browser.
96
96
  </p>
@@ -115,9 +115,9 @@ as a measure of time between requests.
115
115
  <h3 class="section-bar">Methods</h3>
116
116
 
117
117
  <div class="name-list">
118
- <a href="#M000135">dump</a>&nbsp;&nbsp;
119
- <a href="#M000133">new</a>&nbsp;&nbsp;
120
- <a href="#M000134">process</a>&nbsp;&nbsp;
118
+ <a href="#M000127">dump</a>&nbsp;&nbsp;
119
+ <a href="#M000125">new</a>&nbsp;&nbsp;
120
+ <a href="#M000126">process</a>&nbsp;&nbsp;
121
121
  </div>
122
122
  </div>
123
123
 
@@ -152,12 +152,12 @@ as a measure of time between requests.
152
152
  <div id="methods">
153
153
  <h3 class="section-bar">Public Class methods</h3>
154
154
 
155
- <div id="method-M000133" class="method-detail">
156
- <a name="M000133"></a>
155
+ <div id="method-M000125" class="method-detail">
156
+ <a name="M000125"></a>
157
157
 
158
158
  <div class="method-heading">
159
- <a href="StatisticsFilter.src/M000133.html" target="Code" class="method-signature"
160
- onclick="popupCode('StatisticsFilter.src/M000133.html');return false;">
159
+ <a href="StatisticsFilter.src/M000125.html" target="Code" class="method-signature"
160
+ onclick="popupCode('StatisticsFilter.src/M000125.html');return false;">
161
161
  <span class="method-name">new</span><span class="method-args">(ops={})</span>
162
162
  </a>
163
163
  </div>
@@ -168,12 +168,12 @@ as a measure of time between requests.
168
168
 
169
169
  <h3 class="section-bar">Public Instance methods</h3>
170
170
 
171
- <div id="method-M000135" class="method-detail">
172
- <a name="M000135"></a>
171
+ <div id="method-M000127" class="method-detail">
172
+ <a name="M000127"></a>
173
173
 
174
174
  <div class="method-heading">
175
- <a href="StatisticsFilter.src/M000135.html" target="Code" class="method-signature"
176
- onclick="popupCode('StatisticsFilter.src/M000135.html');return false;">
175
+ <a href="StatisticsFilter.src/M000127.html" target="Code" class="method-signature"
176
+ onclick="popupCode('StatisticsFilter.src/M000127.html');return false;">
177
177
  <span class="method-name">dump</span><span class="method-args">()</span>
178
178
  </a>
179
179
  </div>
@@ -182,12 +182,12 @@ as a measure of time between requests.
182
182
  </div>
183
183
  </div>
184
184
 
185
- <div id="method-M000134" class="method-detail">
186
- <a name="M000134"></a>
185
+ <div id="method-M000126" class="method-detail">
186
+ <a name="M000126"></a>
187
187
 
188
188
  <div class="method-heading">
189
- <a href="StatisticsFilter.src/M000134.html" target="Code" class="method-signature"
190
- onclick="popupCode('StatisticsFilter.src/M000134.html');return false;">
189
+ <a href="StatisticsFilter.src/M000126.html" target="Code" class="method-signature"
190
+ onclick="popupCode('StatisticsFilter.src/M000126.html');return false;">
191
191
  <span class="method-name">process</span><span class="method-args">(request, response)</span>
192
192
  </a>
193
193
  </div>
@@ -0,0 +1,24 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>new (Mongrel::StatisticsFilter)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 324</span>
14
+ 324: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">ops</span>={})
15
+ 325: <span class="ruby-ivar">@sample_rate</span> = <span class="ruby-identifier">ops</span>[<span class="ruby-identifier">:sample_rate</span>] <span class="ruby-operator">||</span> <span class="ruby-value">300</span>
16
+ 326:
17
+ 327: <span class="ruby-ivar">@processors</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Stats</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;processors&quot;</span>)
18
+ 328: <span class="ruby-ivar">@reqsize</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Stats</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;request Kb&quot;</span>)
19
+ 329: <span class="ruby-ivar">@headcount</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Stats</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;req param count&quot;</span>)
20
+ 330: <span class="ruby-ivar">@respsize</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Stats</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;response Kb&quot;</span>)
21
+ 331: <span class="ruby-ivar">@interreq</span> = <span class="ruby-constant">Mongrel</span><span class="ruby-operator">::</span><span class="ruby-constant">Stats</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;inter-request time&quot;</span>)
22
+ 332: <span class="ruby-keyword kw">end</span></pre>
23
+ </body>
24
+ </html>
@@ -10,15 +10,15 @@
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 339</span>
14
- 339: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">request</span>, <span class="ruby-identifier">response</span>)
15
- 340: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">rand</span>(<span class="ruby-ivar">@sample_rate</span>)<span class="ruby-operator">+</span><span class="ruby-value">1</span> <span class="ruby-operator">==</span> <span class="ruby-ivar">@sample_rate</span>
16
- 341: <span class="ruby-ivar">@processors</span>.<span class="ruby-identifier">sample</span>(<span class="ruby-identifier">listener</span>.<span class="ruby-identifier">workers</span>.<span class="ruby-identifier">list</span>.<span class="ruby-identifier">length</span>)
17
- 342: <span class="ruby-ivar">@headcount</span>.<span class="ruby-identifier">sample</span>(<span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>.<span class="ruby-identifier">length</span>)
18
- 343: <span class="ruby-ivar">@reqsize</span>.<span class="ruby-identifier">sample</span>(<span class="ruby-identifier">request</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">/</span> <span class="ruby-value">1024.0</span>)
19
- 344: <span class="ruby-ivar">@respsize</span>.<span class="ruby-identifier">sample</span>((<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">header</span>.<span class="ruby-identifier">out</span>.<span class="ruby-identifier">length</span>) <span class="ruby-operator">/</span> <span class="ruby-value">1024.0</span>)
20
- 345: <span class="ruby-keyword kw">end</span>
21
- 346: <span class="ruby-ivar">@interreq</span>.<span class="ruby-identifier">tick</span>
22
- 347: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 335</span>
14
+ 335: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">process</span>(<span class="ruby-identifier">request</span>, <span class="ruby-identifier">response</span>)
15
+ 336: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">rand</span>(<span class="ruby-ivar">@sample_rate</span>)<span class="ruby-operator">+</span><span class="ruby-value">1</span> <span class="ruby-operator">==</span> <span class="ruby-ivar">@sample_rate</span>
16
+ 337: <span class="ruby-ivar">@processors</span>.<span class="ruby-identifier">sample</span>(<span class="ruby-identifier">listener</span>.<span class="ruby-identifier">workers</span>.<span class="ruby-identifier">list</span>.<span class="ruby-identifier">length</span>)
17
+ 338: <span class="ruby-ivar">@headcount</span>.<span class="ruby-identifier">sample</span>(<span class="ruby-identifier">request</span>.<span class="ruby-identifier">params</span>.<span class="ruby-identifier">length</span>)
18
+ 339: <span class="ruby-ivar">@reqsize</span>.<span class="ruby-identifier">sample</span>(<span class="ruby-identifier">request</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">/</span> <span class="ruby-value">1024.0</span>)
19
+ 340: <span class="ruby-ivar">@respsize</span>.<span class="ruby-identifier">sample</span>((<span class="ruby-identifier">response</span>.<span class="ruby-identifier">body</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">header</span>.<span class="ruby-identifier">out</span>.<span class="ruby-identifier">length</span>) <span class="ruby-operator">/</span> <span class="ruby-value">1024.0</span>)
20
+ 341: <span class="ruby-keyword kw">end</span>
21
+ 342: <span class="ruby-ivar">@interreq</span>.<span class="ruby-identifier">tick</span>
22
+ 343: <span class="ruby-keyword kw">end</span></pre>
23
23
  </body>
24
24
  </html>
@@ -10,9 +10,9 @@
10
10
  <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 349</span>
14
- 349: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">dump</span>
15
- 350: <span class="ruby-node">&quot;#{@processors.to_s}\n#{@reqsize.to_s}\n#{@headcount.to_s}\n#{@respsize.to_s}\n#{@interreq.to_s}&quot;</span>
16
- 351: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel/handlers.rb, line 345</span>
14
+ 345: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">dump</span>
15
+ 346: <span class="ruby-node">&quot;#{@processors.to_s}\n#{@reqsize.to_s}\n#{@headcount.to_s}\n#{@respsize.to_s}\n#{@interreq.to_s}&quot;</span>
16
+ 347: <span class="ruby-keyword kw">end</span></pre>
17
17
  </body>
18
18
  </html>
@@ -5,10 +5,10 @@
5
5
 
6
6
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
7
  <head>
8
- <title>Class: Stats</title>
8
+ <title>Class: Mongrel::Stats</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
11
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12
12
  <script type="text/javascript">
13
13
  // <![CDATA[
14
14
 
@@ -50,12 +50,12 @@
50
50
  <table class="header-table">
51
51
  <tr class="top-aligned-row">
52
52
  <td><strong>Class</strong></td>
53
- <td class="class-name-in-header">Stats</td>
53
+ <td class="class-name-in-header">Mongrel::Stats</td>
54
54
  </tr>
55
55
  <tr class="top-aligned-row">
56
56
  <td><strong>In:</strong></td>
57
57
  <td>
58
- <a href="../files/lib/mongrel/stats_rb.html">
58
+ <a href="../../files/lib/mongrel/stats_rb.html">
59
59
  lib/mongrel/stats.rb
60
60
  </a>
61
61
  <br />
@@ -78,22 +78,6 @@
78
78
 
79
79
  <div id="contextContent">
80
80
 
81
- <div id="description">
82
- <p>
83
- A very simple little class for doing some basic fast statistics sampling.
84
- You feed it either samples of numeric data you want measured or you call <a
85
- href="Stats.html#M000012">Stats.tick</a> to get it to add a time delta
86
- between the last time you called it. When you&#8217;re done either call
87
- sum, sumsq, n, min, max, mean or sd to get the information. The other
88
- option is to just call dump and see everything.
89
- </p>
90
- <p>
91
- It does all of this very fast and doesn&#8217;t take up any memory since
92
- the samples are not stored but instead all the values are calculated on the
93
- fly.
94
- </p>
95
-
96
- </div>
97
81
 
98
82
 
99
83
  </div>
@@ -102,14 +86,14 @@ fly.
102
86
  <h3 class="section-bar">Methods</h3>
103
87
 
104
88
  <div class="name-list">
105
- <a href="#M000008">dump</a>&nbsp;&nbsp;
106
- <a href="#M000010">mean</a>&nbsp;&nbsp;
107
- <a href="#M000005">new</a>&nbsp;&nbsp;
108
- <a href="#M000006">reset</a>&nbsp;&nbsp;
109
- <a href="#M000007">sample</a>&nbsp;&nbsp;
110
- <a href="#M000011">sd</a>&nbsp;&nbsp;
111
- <a href="#M000012">tick</a>&nbsp;&nbsp;
112
- <a href="#M000009">to_s</a>&nbsp;&nbsp;
89
+ <a href="#M000139">dump</a>&nbsp;&nbsp;
90
+ <a href="#M000141">mean</a>&nbsp;&nbsp;
91
+ <a href="#M000136">new</a>&nbsp;&nbsp;
92
+ <a href="#M000137">reset</a>&nbsp;&nbsp;
93
+ <a href="#M000138">sample</a>&nbsp;&nbsp;
94
+ <a href="#M000142">sd</a>&nbsp;&nbsp;
95
+ <a href="#M000143">tick</a>&nbsp;&nbsp;
96
+ <a href="#M000140">to_s</a>&nbsp;&nbsp;
113
97
  </div>
114
98
  </div>
115
99
 
@@ -164,12 +148,12 @@ fly.
164
148
  <div id="methods">
165
149
  <h3 class="section-bar">Public Class methods</h3>
166
150
 
167
- <div id="method-M000005" class="method-detail">
168
- <a name="M000005"></a>
151
+ <div id="method-M000136" class="method-detail">
152
+ <a name="M000136"></a>
169
153
 
170
154
  <div class="method-heading">
171
- <a href="Stats.src/M000005.html" target="Code" class="method-signature"
172
- onclick="popupCode('Stats.src/M000005.html');return false;">
155
+ <a href="Stats.src/M000136.html" target="Code" class="method-signature"
156
+ onclick="popupCode('Stats.src/M000136.html');return false;">
173
157
  <span class="method-name">new</span><span class="method-args">(name)</span>
174
158
  </a>
175
159
  </div>
@@ -180,12 +164,12 @@ fly.
180
164
 
181
165
  <h3 class="section-bar">Public Instance methods</h3>
182
166
 
183
- <div id="method-M000008" class="method-detail">
184
- <a name="M000008"></a>
167
+ <div id="method-M000139" class="method-detail">
168
+ <a name="M000139"></a>
185
169
 
186
170
  <div class="method-heading">
187
- <a href="Stats.src/M000008.html" target="Code" class="method-signature"
188
- onclick="popupCode('Stats.src/M000008.html');return false;">
171
+ <a href="Stats.src/M000139.html" target="Code" class="method-signature"
172
+ onclick="popupCode('Stats.src/M000139.html');return false;">
189
173
  <span class="method-name">dump</span><span class="method-args">(msg = &quot;&quot;, out=STDERR)</span>
190
174
  </a>
191
175
  </div>
@@ -198,12 +182,12 @@ message.
198
182
  </div>
199
183
  </div>
200
184
 
201
- <div id="method-M000010" class="method-detail">
202
- <a name="M000010"></a>
185
+ <div id="method-M000141" class="method-detail">
186
+ <a name="M000141"></a>
203
187
 
204
188
  <div class="method-heading">
205
- <a href="Stats.src/M000010.html" target="Code" class="method-signature"
206
- onclick="popupCode('Stats.src/M000010.html');return false;">
189
+ <a href="Stats.src/M000141.html" target="Code" class="method-signature"
190
+ onclick="popupCode('Stats.src/M000141.html');return false;">
207
191
  <span class="method-name">mean</span><span class="method-args">()</span>
208
192
  </a>
209
193
  </div>
@@ -215,12 +199,12 @@ Calculates and returns the mean for the data passed so far.
215
199
  </div>
216
200
  </div>
217
201
 
218
- <div id="method-M000006" class="method-detail">
219
- <a name="M000006"></a>
202
+ <div id="method-M000137" class="method-detail">
203
+ <a name="M000137"></a>
220
204
 
221
205
  <div class="method-heading">
222
- <a href="Stats.src/M000006.html" target="Code" class="method-signature"
223
- onclick="popupCode('Stats.src/M000006.html');return false;">
206
+ <a href="Stats.src/M000137.html" target="Code" class="method-signature"
207
+ onclick="popupCode('Stats.src/M000137.html');return false;">
224
208
  <span class="method-name">reset</span><span class="method-args">()</span>
225
209
  </a>
226
210
  </div>
@@ -232,12 +216,12 @@ Resets the internal counters so you can start sampling again.
232
216
  </div>
233
217
  </div>
234
218
 
235
- <div id="method-M000007" class="method-detail">
236
- <a name="M000007"></a>
219
+ <div id="method-M000138" class="method-detail">
220
+ <a name="M000138"></a>
237
221
 
238
222
  <div class="method-heading">
239
- <a href="Stats.src/M000007.html" target="Code" class="method-signature"
240
- onclick="popupCode('Stats.src/M000007.html');return false;">
223
+ <a href="Stats.src/M000138.html" target="Code" class="method-signature"
224
+ onclick="popupCode('Stats.src/M000138.html');return false;">
241
225
  <span class="method-name">sample</span><span class="method-args">(s)</span>
242
226
  </a>
243
227
  </div>
@@ -249,12 +233,12 @@ Adds a sampling to the calculations.
249
233
  </div>
250
234
  </div>
251
235
 
252
- <div id="method-M000011" class="method-detail">
253
- <a name="M000011"></a>
236
+ <div id="method-M000142" class="method-detail">
237
+ <a name="M000142"></a>
254
238
 
255
239
  <div class="method-heading">
256
- <a href="Stats.src/M000011.html" target="Code" class="method-signature"
257
- onclick="popupCode('Stats.src/M000011.html');return false;">
240
+ <a href="Stats.src/M000142.html" target="Code" class="method-signature"
241
+ onclick="popupCode('Stats.src/M000142.html');return false;">
258
242
  <span class="method-name">sd</span><span class="method-args">()</span>
259
243
  </a>
260
244
  </div>
@@ -266,12 +250,12 @@ Calculates the standard deviation of the data so far.
266
250
  </div>
267
251
  </div>
268
252
 
269
- <div id="method-M000012" class="method-detail">
270
- <a name="M000012"></a>
253
+ <div id="method-M000143" class="method-detail">
254
+ <a name="M000143"></a>
271
255
 
272
256
  <div class="method-heading">
273
- <a href="Stats.src/M000012.html" target="Code" class="method-signature"
274
- onclick="popupCode('Stats.src/M000012.html');return false;">
257
+ <a href="Stats.src/M000143.html" target="Code" class="method-signature"
258
+ onclick="popupCode('Stats.src/M000143.html');return false;">
275
259
  <span class="method-name">tick</span><span class="method-args">()</span>
276
260
  </a>
277
261
  </div>
@@ -292,12 +276,12 @@ An example is:
292
276
  </div>
293
277
  </div>
294
278
 
295
- <div id="method-M000009" class="method-detail">
296
- <a name="M000009"></a>
279
+ <div id="method-M000140" class="method-detail">
280
+ <a name="M000140"></a>
297
281
 
298
282
  <div class="method-heading">
299
- <a href="Stats.src/M000009.html" target="Code" class="method-signature"
300
- onclick="popupCode('Stats.src/M000009.html');return false;">
283
+ <a href="Stats.src/M000140.html" target="Code" class="method-signature"
284
+ onclick="popupCode('Stats.src/M000140.html');return false;">
301
285
  <span class="method-name">to_s</span><span class="method-args">()</span>
302
286
  </a>
303
287
  </div>