mongrel 0.3.13.4 → 1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (256) hide show
  1. data/README +1 -75
  2. data/Rakefile +14 -14
  3. data/bin/mongrel_rails +35 -23
  4. data/doc/rdoc/classes/IO.html +12 -12
  5. data/doc/rdoc/classes/IO.src/{M000001.html → M000003.html} +0 -0
  6. data/doc/rdoc/classes/IO.src/{M000002.html → M000004.html} +0 -0
  7. data/doc/rdoc/classes/Kernel.html +11 -11
  8. data/doc/rdoc/classes/Kernel.src/{M000010.html → M000012.html} +0 -0
  9. data/doc/rdoc/classes/Kernel.src/{M000011.html → M000013.html} +0 -0
  10. data/doc/rdoc/classes/Mongrel.html +3 -3
  11. data/doc/rdoc/classes/Mongrel/CGIWrapper.html +77 -69
  12. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000115.html +12 -19
  13. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000116.html +34 -12
  14. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000117.html +21 -5
  15. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000118.html +19 -5
  16. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000119.html +12 -5
  17. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000120.html +5 -6
  18. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000121.html +18 -0
  19. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000122.html +18 -0
  20. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000123.html +19 -0
  21. data/doc/rdoc/classes/Mongrel/Camping.html +8 -8
  22. data/doc/rdoc/classes/Mongrel/Camping.src/M000041.html +22 -0
  23. data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.html +31 -12
  24. data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.src/M000042.html +20 -0
  25. data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.src/M000043.html +58 -0
  26. data/doc/rdoc/classes/Mongrel/Command/Base.html +75 -73
  27. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000018.html +11 -5
  28. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000019.html +29 -5
  29. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000020.html +5 -5
  30. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000021.html +5 -5
  31. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000022.html +5 -9
  32. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000023.html +5 -5
  33. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000024.html +9 -5
  34. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000025.html +5 -5
  35. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000026.html +5 -11
  36. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000027.html +5 -11
  37. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000028.html +11 -5
  38. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000029.html +24 -0
  39. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000030.html +18 -0
  40. data/doc/rdoc/classes/Mongrel/Command/Registry.html +20 -20
  41. data/doc/rdoc/classes/Mongrel/Command/Registry.src/M000031.html +7 -45
  42. data/doc/rdoc/classes/Mongrel/Command/Registry.src/{M000030.html → M000032.html} +0 -0
  43. data/doc/rdoc/classes/Mongrel/Command/Registry.src/M000033.html +58 -0
  44. data/doc/rdoc/classes/Mongrel/Configurator.html +163 -140
  45. data/doc/rdoc/classes/Mongrel/Configurator.src/M000093.html +14 -8
  46. data/doc/rdoc/classes/Mongrel/Configurator.src/M000094.html +18 -7
  47. data/doc/rdoc/classes/Mongrel/Configurator.src/M000095.html +5 -10
  48. data/doc/rdoc/classes/Mongrel/Configurator.src/M000096.html +8 -5
  49. data/doc/rdoc/classes/Mongrel/Configurator.src/M000097.html +7 -25
  50. data/doc/rdoc/classes/Mongrel/Configurator.src/M000098.html +10 -6
  51. data/doc/rdoc/classes/Mongrel/Configurator.src/M000099.html +5 -26
  52. data/doc/rdoc/classes/Mongrel/Configurator.src/M000100.html +25 -20
  53. data/doc/rdoc/classes/Mongrel/Configurator.src/M000101.html +6 -5
  54. data/doc/rdoc/classes/Mongrel/Configurator.src/M000102.html +26 -11
  55. data/doc/rdoc/classes/Mongrel/Configurator.src/M000103.html +20 -6
  56. data/doc/rdoc/classes/Mongrel/Configurator.src/M000104.html +5 -5
  57. data/doc/rdoc/classes/Mongrel/Configurator.src/M000105.html +11 -9
  58. data/doc/rdoc/classes/Mongrel/Configurator.src/M000106.html +6 -9
  59. data/doc/rdoc/classes/Mongrel/Configurator.src/M000107.html +5 -5
  60. data/doc/rdoc/classes/Mongrel/Configurator.src/M000108.html +9 -21
  61. data/doc/rdoc/classes/Mongrel/Configurator.src/M000109.html +9 -5
  62. data/doc/rdoc/classes/Mongrel/Configurator.src/M000110.html +5 -23
  63. data/doc/rdoc/classes/Mongrel/Configurator.src/M000111.html +21 -5
  64. data/doc/rdoc/classes/Mongrel/Configurator.src/M000112.html +18 -0
  65. data/doc/rdoc/classes/Mongrel/Configurator.src/M000113.html +36 -0
  66. data/doc/rdoc/classes/Mongrel/Configurator.src/M000114.html +18 -0
  67. data/doc/rdoc/classes/Mongrel/Const.html +8 -9
  68. data/doc/rdoc/classes/Mongrel/DeflateFilter.html +19 -12
  69. data/doc/rdoc/classes/Mongrel/DeflateFilter.src/{M000121.html → M000124.html} +5 -5
  70. data/doc/rdoc/classes/Mongrel/DeflateFilter.src/{M000122.html → M000125.html} +9 -14
  71. data/doc/rdoc/classes/Mongrel/DirHandler.html +43 -43
  72. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000051.html +8 -25
  73. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000052.html +29 -50
  74. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000053.html +25 -26
  75. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000054.html +52 -5
  76. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000055.html +39 -0
  77. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000056.html +18 -0
  78. data/doc/rdoc/classes/Mongrel/Error404Handler.html +11 -11
  79. data/doc/rdoc/classes/Mongrel/Error404Handler.src/{M000123.html → M000126.html} +4 -4
  80. data/doc/rdoc/classes/Mongrel/Error404Handler.src/{M000124.html → M000127.html} +4 -4
  81. data/doc/rdoc/classes/Mongrel/HeaderOut.html +15 -10
  82. data/doc/rdoc/classes/Mongrel/HeaderOut.src/M000066.html +21 -0
  83. data/doc/rdoc/classes/Mongrel/HeaderOut.src/M000067.html +21 -0
  84. data/doc/rdoc/classes/Mongrel/HttpHandler.html +25 -23
  85. data/doc/rdoc/classes/Mongrel/HttpHandler.src/M000072.html +4 -4
  86. data/doc/rdoc/classes/Mongrel/HttpHandler.src/{M000071.html → M000073.html} +3 -3
  87. data/doc/rdoc/classes/Mongrel/{HttpHandlerPlugin.src/M000012.html → HttpHandler.src/M000074.html} +4 -4
  88. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.html +22 -21
  89. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/M000014.html +4 -6
  90. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/M000015.html +4 -4
  91. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/M000016.html +19 -0
  92. data/doc/rdoc/classes/Mongrel/{HttpHandler.src/M000070.html → HttpHandlerPlugin.src/M000017.html} +4 -4
  93. data/doc/rdoc/classes/Mongrel/HttpParser.html +44 -42
  94. data/doc/rdoc/classes/Mongrel/HttpParser.src/M000044.html +6 -7
  95. data/doc/rdoc/classes/Mongrel/HttpParser.src/M000045.html +7 -37
  96. data/doc/rdoc/classes/Mongrel/HttpParser.src/M000046.html +7 -5
  97. data/doc/rdoc/classes/Mongrel/HttpParser.src/M000047.html +37 -5
  98. data/doc/rdoc/classes/Mongrel/HttpParser.src/M000048.html +5 -6
  99. data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000042.html → M000049.html} +5 -6
  100. data/doc/rdoc/classes/Mongrel/HttpParser.src/{M000043.html → M000050.html} +6 -7
  101. data/doc/rdoc/classes/Mongrel/HttpRequest.html +37 -40
  102. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000133.html +37 -7
  103. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000134.html +28 -7
  104. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000135.html +16 -19
  105. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000136.html +20 -0
  106. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000137.html +20 -0
  107. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000138.html +32 -0
  108. data/doc/rdoc/classes/Mongrel/HttpResponse.html +95 -85
  109. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000075.html +12 -13
  110. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000076.html +7 -9
  111. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000077.html +13 -9
  112. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000078.html +9 -9
  113. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000079.html +9 -18
  114. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000080.html +9 -8
  115. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000081.html +18 -7
  116. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000082.html +8 -7
  117. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000083.html +7 -7
  118. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000084.html +7 -5
  119. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000085.html +20 -0
  120. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000086.html +18 -0
  121. data/doc/rdoc/classes/Mongrel/HttpServer.html +59 -63
  122. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000057.html +12 -19
  123. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000058.html +87 -8
  124. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000059.html +19 -9
  125. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000060.html +8 -49
  126. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000061.html +16 -21
  127. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000062.html +52 -5
  128. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000063.html +21 -9
  129. data/doc/rdoc/classes/Mongrel/{HeaderOut.src → HttpServer.src}/M000064.html +5 -5
  130. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000065.html +22 -0
  131. data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.html +27 -25
  132. data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.src/M000034.html +24 -13
  133. data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.src/{M000033.html → M000035.html} +11 -11
  134. data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.src/M000036.html +26 -0
  135. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.html +24 -26
  136. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000037.html +10 -8
  137. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000038.html +43 -12
  138. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000039.html +20 -0
  139. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000040.html +25 -0
  140. data/doc/rdoc/classes/Mongrel/RedirectHandler.html +10 -10
  141. data/doc/rdoc/classes/Mongrel/RedirectHandler.src/{M000128.html → M000131.html} +8 -8
  142. data/doc/rdoc/classes/Mongrel/RedirectHandler.src/{M000129.html → M000132.html} +13 -13
  143. data/doc/rdoc/classes/Mongrel/StatisticsFilter.html +20 -20
  144. data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/{M000125.html → M000128.html} +10 -10
  145. data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/{M000126.html → M000129.html} +10 -10
  146. data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/{M000127.html → M000130.html} +4 -4
  147. data/doc/rdoc/classes/Mongrel/Stats.html +43 -42
  148. data/doc/rdoc/classes/Mongrel/Stats.src/M000139.html +6 -5
  149. data/doc/rdoc/classes/Mongrel/Stats.src/M000140.html +10 -5
  150. data/doc/rdoc/classes/Mongrel/Stats.src/M000141.html +13 -5
  151. data/doc/rdoc/classes/Mongrel/Stats.src/M000142.html +5 -10
  152. data/doc/rdoc/classes/Mongrel/Stats.src/M000143.html +5 -7
  153. data/doc/rdoc/classes/Mongrel/Stats.src/{M000136.html → M000144.html} +5 -6
  154. data/doc/rdoc/classes/Mongrel/Stats.src/M000145.html +23 -0
  155. data/doc/rdoc/classes/Mongrel/Stats.src/M000146.html +20 -0
  156. data/doc/rdoc/classes/Mongrel/StatusHandler.html +21 -21
  157. data/doc/rdoc/classes/Mongrel/StatusHandler.src/M000068.html +5 -29
  158. data/doc/rdoc/classes/Mongrel/StatusHandler.src/M000069.html +11 -7
  159. data/doc/rdoc/classes/Mongrel/StatusHandler.src/M000070.html +42 -0
  160. data/doc/rdoc/classes/Mongrel/StatusHandler.src/M000071.html +20 -0
  161. data/doc/rdoc/classes/Mongrel/URIClassifier.html +58 -55
  162. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000087.html +5 -26
  163. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000088.html +5 -38
  164. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000089.html +18 -15
  165. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000090.html +25 -57
  166. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000091.html +36 -0
  167. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000092.html +83 -0
  168. data/doc/rdoc/classes/MongrelDbg.html +25 -25
  169. data/doc/rdoc/classes/MongrelDbg.src/M000007.html +11 -9
  170. data/doc/rdoc/classes/MongrelDbg.src/M000008.html +7 -8
  171. data/doc/rdoc/classes/MongrelDbg.src/M000009.html +9 -5
  172. data/doc/rdoc/classes/MongrelDbg.src/M000010.html +21 -0
  173. data/doc/rdoc/classes/MongrelDbg.src/M000011.html +18 -0
  174. data/doc/rdoc/classes/{Sync.html → Mutex.html} +50 -19
  175. data/doc/rdoc/classes/Mutex.src/M000001.html +24 -0
  176. data/doc/rdoc/classes/Mutex.src/M000002.html +32 -0
  177. data/doc/rdoc/classes/RequestLog/Access.html +5 -5
  178. data/doc/rdoc/classes/RequestLog/Access.src/{M000144.html → M000147.html} +0 -0
  179. data/doc/rdoc/classes/RequestLog/Files.html +5 -5
  180. data/doc/rdoc/classes/RequestLog/Files.src/{M000145.html → M000148.html} +0 -0
  181. data/doc/rdoc/classes/RequestLog/Objects.html +5 -5
  182. data/doc/rdoc/classes/RequestLog/Objects.src/{M000147.html → M000150.html} +0 -0
  183. data/doc/rdoc/classes/RequestLog/Params.html +5 -5
  184. data/doc/rdoc/classes/RequestLog/Params.src/{M000148.html → M000151.html} +0 -0
  185. data/doc/rdoc/classes/RequestLog/Threads.html +5 -5
  186. data/doc/rdoc/classes/RequestLog/Threads.src/{M000146.html → M000149.html} +0 -0
  187. data/doc/rdoc/classes/TCPServer.html +10 -10
  188. data/doc/rdoc/classes/TCPServer.src/{M000003.html → M000005.html} +0 -0
  189. data/doc/rdoc/created.rid +1 -1
  190. data/doc/rdoc/files/COPYING.html +1 -1
  191. data/doc/rdoc/files/LICENSE.html +1 -1
  192. data/doc/rdoc/files/README.html +11 -100
  193. data/doc/rdoc/files/ext/http11/http11_c.html +1 -1
  194. data/doc/rdoc/files/lib/mongrel/camping_rb.html +2 -2
  195. data/doc/rdoc/files/lib/mongrel/cgi_rb.html +2 -2
  196. data/doc/rdoc/files/lib/mongrel/command_rb.html +2 -2
  197. data/doc/rdoc/files/lib/mongrel/configurator_rb.html +1 -1
  198. data/doc/rdoc/files/lib/mongrel/debug_rb.html +2 -2
  199. data/doc/rdoc/files/lib/mongrel/handlers_rb.html +3 -2
  200. data/doc/rdoc/files/lib/mongrel/init_rb.html +2 -2
  201. data/doc/rdoc/files/lib/mongrel/rails_rb.html +2 -3
  202. data/doc/rdoc/files/lib/mongrel/stats_rb.html +2 -2
  203. data/doc/rdoc/files/lib/mongrel/tcphack_rb.html +2 -2
  204. data/doc/rdoc/files/lib/mongrel_rb.html +5 -3
  205. data/doc/rdoc/files/lib/mutex_fix_rb.html +108 -0
  206. data/doc/rdoc/fr_class_index.html +1 -1
  207. data/doc/rdoc/fr_file_index.html +1 -0
  208. data/doc/rdoc/fr_method_index.html +151 -148
  209. data/ext/http11/http11.c +2 -2
  210. data/lib/mongrel.rb +85 -38
  211. data/lib/mongrel/camping.rb +17 -4
  212. data/lib/mongrel/configurator.rb +11 -7
  213. data/lib/mongrel/handlers.rb +30 -27
  214. data/lib/mongrel/mime_types.yml +615 -0
  215. data/lib/mongrel/rails.rb +21 -28
  216. data/lib/mutex_fix.rb +34 -0
  217. data/test/test_handlers.rb +16 -4
  218. data/test/test_http11.rb +8 -0
  219. data/test/test_request_progress.rb +45 -2
  220. data/test/test_response.rb +31 -0
  221. metadata +95 -71
  222. data/bin/mongrel_rails_service +0 -246
  223. data/bin/mongrel_rails_svc +0 -307
  224. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000112.html +0 -25
  225. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000113.html +0 -47
  226. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000114.html +0 -34
  227. data/doc/rdoc/classes/Mongrel/Camping.src/M000039.html +0 -22
  228. data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.src/M000040.html +0 -18
  229. data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.src/M000041.html +0 -51
  230. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000016.html +0 -24
  231. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000017.html +0 -42
  232. data/doc/rdoc/classes/Mongrel/Command/Registry.src/M000029.html +0 -20
  233. data/doc/rdoc/classes/Mongrel/Configurator.src/M000091.html +0 -27
  234. data/doc/rdoc/classes/Mongrel/Configurator.src/M000092.html +0 -31
  235. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000049.html +0 -21
  236. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000050.html +0 -43
  237. data/doc/rdoc/classes/Mongrel/HeaderOut.src/M000065.html +0 -18
  238. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/M000013.html +0 -17
  239. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000130.html +0 -47
  240. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000131.html +0 -37
  241. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000132.html +0 -29
  242. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000073.html +0 -25
  243. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000074.html +0 -20
  244. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000055.html +0 -25
  245. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000056.html +0 -91
  246. data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.src/M000032.html +0 -37
  247. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000035.html +0 -23
  248. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000036.html +0 -54
  249. data/doc/rdoc/classes/Mongrel/Stats.src/M000137.html +0 -23
  250. data/doc/rdoc/classes/Mongrel/Stats.src/M000138.html +0 -26
  251. data/doc/rdoc/classes/Mongrel/StatusHandler.src/M000066.html +0 -18
  252. data/doc/rdoc/classes/Mongrel/StatusHandler.src/M000067.html +0 -24
  253. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000085.html +0 -18
  254. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000086.html +0 -18
  255. data/doc/rdoc/classes/MongrelDbg.src/M000005.html +0 -24
  256. data/doc/rdoc/classes/MongrelDbg.src/M000006.html +0 -20
@@ -5,22 +5,21 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>reset (Mongrel::HttpResponse)</title>
8
+ <title>new (Mongrel::HttpResponse)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
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.rb, line 395</span>
14
- 395: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">reset</span>
15
- 396: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@body_sent</span>
16
- 397: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;You have already sent the request body.&quot;</span>
17
- 398: <span class="ruby-keyword kw">elsif</span> <span class="ruby-ivar">@header_sent</span>
18
- 399: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;You have already sent the request headers.&quot;</span>
19
- 400: <span class="ruby-keyword kw">else</span>
20
- 401: <span class="ruby-ivar">@header</span>.<span class="ruby-identifier">out</span>.<span class="ruby-identifier">truncate</span>(<span class="ruby-value">0</span>)
21
- 402: <span class="ruby-ivar">@body</span>.<span class="ruby-identifier">close</span>
22
- 403: <span class="ruby-ivar">@body</span> = <span class="ruby-constant">StringIO</span>.<span class="ruby-identifier">new</span>
23
- 404: <span class="ruby-keyword kw">end</span>
24
- 405: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line 398</span>
14
+ 398: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">socket</span>)
15
+ 399: <span class="ruby-ivar">@socket</span> = <span class="ruby-identifier">socket</span>
16
+ 400: <span class="ruby-ivar">@body</span> = <span class="ruby-constant">StringIO</span>.<span class="ruby-identifier">new</span>
17
+ 401: <span class="ruby-ivar">@status</span> = <span class="ruby-value">404</span>
18
+ 402: <span class="ruby-ivar">@header</span> = <span class="ruby-constant">HeaderOut</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">StringIO</span>.<span class="ruby-identifier">new</span>)
19
+ 403: <span class="ruby-ivar">@header</span>[<span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">DATE</span>] = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>.<span class="ruby-identifier">httpdate</span>
20
+ 404: <span class="ruby-ivar">@body_sent</span> = <span class="ruby-keyword kw">false</span>
21
+ 405: <span class="ruby-ivar">@header_sent</span> = <span class="ruby-keyword kw">false</span>
22
+ 406: <span class="ruby-ivar">@status_sent</span> = <span class="ruby-keyword kw">false</span>
23
+ 407: <span class="ruby-keyword kw">end</span></pre>
25
24
  </body>
26
25
  </html>
@@ -5,18 +5,16 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>send_status (Mongrel::HttpResponse)</title>
8
+ <title>start (Mongrel::HttpResponse)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
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.rb, line 407</span>
14
- 407: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">send_status</span>(<span class="ruby-identifier">content_length</span>=<span class="ruby-ivar">@body</span>.<span class="ruby-identifier">length</span>)
15
- 408: <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">not</span> <span class="ruby-ivar">@status_sent</span>
16
- 409: <span class="ruby-ivar">@header</span>[<span class="ruby-value str">'Content-Length'</span>] = <span class="ruby-identifier">content_length</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@status</span> <span class="ruby-operator">==</span> <span class="ruby-value">304</span>
17
- 410: <span class="ruby-identifier">write</span>(<span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">STATUS_FORMAT</span> <span class="ruby-operator">%</span> [<span class="ruby-ivar">@status</span>, <span class="ruby-constant">HTTP_STATUS_CODES</span>[<span class="ruby-ivar">@status</span>]])
18
- 411: <span class="ruby-ivar">@status_sent</span> = <span class="ruby-keyword kw">true</span>
19
- 412: <span class="ruby-keyword kw">end</span>
20
- 413: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line 417</span>
14
+ 417: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">start</span>(<span class="ruby-identifier">status</span>=<span class="ruby-value">200</span>, <span class="ruby-identifier">finalize</span>=<span class="ruby-keyword kw">false</span>)
15
+ 418: <span class="ruby-ivar">@status</span> = <span class="ruby-identifier">status</span>.<span class="ruby-identifier">to_i</span>
16
+ 419: <span class="ruby-keyword kw">yield</span> <span class="ruby-ivar">@header</span>, <span class="ruby-ivar">@body</span>
17
+ 420: <span class="ruby-identifier">finished</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">finalize</span>
18
+ 421: <span class="ruby-keyword kw">end</span></pre>
21
19
  </body>
22
20
  </html>
@@ -5,18 +5,22 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>send_header (Mongrel::HttpResponse)</title>
8
+ <title>reset (Mongrel::HttpResponse)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
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.rb, line 415</span>
14
- 415: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">send_header</span>
15
- 416: <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">not</span> <span class="ruby-ivar">@header_sent</span>
16
- 417: <span class="ruby-ivar">@header</span>.<span class="ruby-identifier">out</span>.<span class="ruby-identifier">rewind</span>
17
- 418: <span class="ruby-identifier">write</span>(<span class="ruby-ivar">@header</span>.<span class="ruby-identifier">out</span>.<span class="ruby-identifier">read</span> <span class="ruby-operator">+</span> <span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">LINE_END</span>)
18
- 419: <span class="ruby-ivar">@header_sent</span> = <span class="ruby-keyword kw">true</span>
19
- 420: <span class="ruby-keyword kw">end</span>
20
- 421: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line 426</span>
14
+ 426: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">reset</span>
15
+ 427: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@body_sent</span>
16
+ 428: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;You have already sent the request body.&quot;</span>
17
+ 429: <span class="ruby-keyword kw">elsif</span> <span class="ruby-ivar">@header_sent</span>
18
+ 430: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;You have already sent the request headers.&quot;</span>
19
+ 431: <span class="ruby-keyword kw">else</span>
20
+ 432: <span class="ruby-ivar">@header</span>.<span class="ruby-identifier">out</span>.<span class="ruby-identifier">truncate</span>(<span class="ruby-value">0</span>)
21
+ 433: <span class="ruby-ivar">@body</span>.<span class="ruby-identifier">close</span>
22
+ 434: <span class="ruby-ivar">@body</span> = <span class="ruby-constant">StringIO</span>.<span class="ruby-identifier">new</span>
23
+ 435: <span class="ruby-keyword kw">end</span>
24
+ 436: <span class="ruby-keyword kw">end</span></pre>
21
25
  </body>
22
26
  </html>
@@ -5,18 +5,18 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>send_body (Mongrel::HttpResponse)</title>
8
+ <title>send_status (Mongrel::HttpResponse)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
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.rb, line 423</span>
14
- 423: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">send_body</span>
15
- 424: <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">not</span> <span class="ruby-ivar">@body_sent</span>
16
- 425: <span class="ruby-ivar">@body</span>.<span class="ruby-identifier">rewind</span>
17
- 426: <span class="ruby-identifier">write</span>(<span class="ruby-ivar">@body</span>.<span class="ruby-identifier">read</span>)
18
- 427: <span class="ruby-ivar">@body_sent</span> = <span class="ruby-keyword kw">true</span>
19
- 428: <span class="ruby-keyword kw">end</span>
20
- 429: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line 438</span>
14
+ 438: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">send_status</span>(<span class="ruby-identifier">content_length</span>=<span class="ruby-ivar">@body</span>.<span class="ruby-identifier">length</span>)
15
+ 439: <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">not</span> <span class="ruby-ivar">@status_sent</span>
16
+ 440: <span class="ruby-ivar">@header</span>[<span class="ruby-value str">'Content-Length'</span>] = <span class="ruby-identifier">content_length</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@status</span> <span class="ruby-operator">==</span> <span class="ruby-value">304</span>
17
+ 441: <span class="ruby-identifier">write</span>(<span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">STATUS_FORMAT</span> <span class="ruby-operator">%</span> [<span class="ruby-ivar">@status</span>, <span class="ruby-constant">HTTP_STATUS_CODES</span>[<span class="ruby-ivar">@status</span>]])
18
+ 442: <span class="ruby-ivar">@status_sent</span> = <span class="ruby-keyword kw">true</span>
19
+ 443: <span class="ruby-keyword kw">end</span>
20
+ 444: <span class="ruby-keyword kw">end</span></pre>
21
21
  </body>
22
22
  </html>
@@ -5,27 +5,18 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>send_file (Mongrel::HttpResponse)</title>
8
+ <title>send_header (Mongrel::HttpResponse)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
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.rb, line 435</span>
14
- 435: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">send_file</span>(<span class="ruby-identifier">path</span>, <span class="ruby-identifier">small_file</span> = <span class="ruby-keyword kw">false</span>)
15
- 436: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">small_file</span>
16
- 437: <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">path</span>, <span class="ruby-value str">&quot;rb&quot;</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span> <span class="ruby-ivar">@socket</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">f</span>.<span class="ruby-identifier">read</span> }
17
- 438: <span class="ruby-keyword kw">else</span>
18
- 439: <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">path</span>, <span class="ruby-value str">&quot;rb&quot;</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
19
- 440: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">chunk</span> = <span class="ruby-identifier">f</span>.<span class="ruby-identifier">read</span>(<span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">CHUNK_SIZE</span>) <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">chunk</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
20
- 441: <span class="ruby-keyword kw">begin</span>
21
- 442: <span class="ruby-identifier">write</span>(<span class="ruby-identifier">chunk</span>)
22
- 443: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Object</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">exc</span>
23
- 444: <span class="ruby-keyword kw">break</span>
24
- 445: <span class="ruby-keyword kw">end</span>
25
- 446: <span class="ruby-keyword kw">end</span>
26
- 447: <span class="ruby-keyword kw">end</span>
27
- 448: <span class="ruby-keyword kw">end</span>
28
- 449: <span class="ruby-ivar">@body_sent</span> = <span class="ruby-keyword kw">true</span>
29
- 450: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line 446</span>
14
+ 446: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">send_header</span>
15
+ 447: <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">not</span> <span class="ruby-ivar">@header_sent</span>
16
+ 448: <span class="ruby-ivar">@header</span>.<span class="ruby-identifier">out</span>.<span class="ruby-identifier">rewind</span>
17
+ 449: <span class="ruby-identifier">write</span>(<span class="ruby-ivar">@header</span>.<span class="ruby-identifier">out</span>.<span class="ruby-identifier">read</span> <span class="ruby-operator">+</span> <span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">LINE_END</span>)
18
+ 450: <span class="ruby-ivar">@header_sent</span> = <span class="ruby-keyword kw">true</span>
19
+ 451: <span class="ruby-keyword kw">end</span>
20
+ 452: <span class="ruby-keyword kw">end</span></pre>
30
21
  </body>
31
22
  </html>
@@ -5,17 +5,18 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>socket_error (Mongrel::HttpResponse)</title>
8
+ <title>send_body (Mongrel::HttpResponse)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
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.rb, line 452</span>
14
- 452: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">socket_error</span>(<span class="ruby-identifier">details</span>)
15
- 453: <span class="ruby-comment cmt"># ignore these since it means the client closed off early</span>
16
- 454: <span class="ruby-ivar">@socket</span>.<span class="ruby-identifier">close</span> <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Object</span>
17
- 455: <span class="ruby-identifier">done</span> = <span class="ruby-keyword kw">true</span>
18
- 456: <span class="ruby-identifier">raise</span> <span class="ruby-identifier">details</span>
19
- 457: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line 454</span>
14
+ 454: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">send_body</span>
15
+ 455: <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">not</span> <span class="ruby-ivar">@body_sent</span>
16
+ 456: <span class="ruby-ivar">@body</span>.<span class="ruby-identifier">rewind</span>
17
+ 457: <span class="ruby-identifier">write</span>(<span class="ruby-ivar">@body</span>.<span class="ruby-identifier">read</span>)
18
+ 458: <span class="ruby-ivar">@body_sent</span> = <span class="ruby-keyword kw">true</span>
19
+ 459: <span class="ruby-keyword kw">end</span>
20
+ 460: <span class="ruby-keyword kw">end</span></pre>
20
21
  </body>
21
22
  </html>
@@ -5,16 +5,27 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>write (Mongrel::HttpResponse)</title>
8
+ <title>send_file (Mongrel::HttpResponse)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
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.rb, line 459</span>
14
- 459: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">write</span>(<span class="ruby-identifier">data</span>)
15
- 460: <span class="ruby-ivar">@socket</span>.<span class="ruby-identifier">write</span>(<span class="ruby-identifier">data</span>)
16
- 461: <span class="ruby-keyword kw">rescue</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">details</span>
17
- 462: <span class="ruby-identifier">socket_error</span>(<span class="ruby-identifier">details</span>)
18
- 463: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line 466</span>
14
+ 466: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">send_file</span>(<span class="ruby-identifier">path</span>, <span class="ruby-identifier">small_file</span> = <span class="ruby-keyword kw">false</span>)
15
+ 467: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">small_file</span>
16
+ 468: <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">path</span>, <span class="ruby-value str">&quot;rb&quot;</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span> <span class="ruby-ivar">@socket</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">f</span>.<span class="ruby-identifier">read</span> }
17
+ 469: <span class="ruby-keyword kw">else</span>
18
+ 470: <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">path</span>, <span class="ruby-value str">&quot;rb&quot;</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
19
+ 471: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">chunk</span> = <span class="ruby-identifier">f</span>.<span class="ruby-identifier">read</span>(<span class="ruby-constant">Const</span><span class="ruby-operator">::</span><span class="ruby-constant">CHUNK_SIZE</span>) <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">chunk</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
20
+ 472: <span class="ruby-keyword kw">begin</span>
21
+ 473: <span class="ruby-identifier">write</span>(<span class="ruby-identifier">chunk</span>)
22
+ 474: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Object</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">exc</span>
23
+ 475: <span class="ruby-keyword kw">break</span>
24
+ 476: <span class="ruby-keyword kw">end</span>
25
+ 477: <span class="ruby-keyword kw">end</span>
26
+ 478: <span class="ruby-keyword kw">end</span>
27
+ 479: <span class="ruby-keyword kw">end</span>
28
+ 480: <span class="ruby-ivar">@body_sent</span> = <span class="ruby-keyword kw">true</span>
29
+ 481: <span class="ruby-keyword kw">end</span></pre>
19
30
  </body>
20
31
  </html>
@@ -5,16 +5,17 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>finished (Mongrel::HttpResponse)</title>
8
+ <title>socket_error (Mongrel::HttpResponse)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
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.rb, line 467</span>
14
- 467: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">finished</span>
15
- 468: <span class="ruby-identifier">send_status</span>
16
- 469: <span class="ruby-identifier">send_header</span>
17
- 470: <span class="ruby-identifier">send_body</span>
18
- 471: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line 483</span>
14
+ 483: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">socket_error</span>(<span class="ruby-identifier">details</span>)
15
+ 484: <span class="ruby-comment cmt"># ignore these since it means the client closed off early</span>
16
+ 485: <span class="ruby-ivar">@socket</span>.<span class="ruby-identifier">close</span> <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Object</span>
17
+ 486: <span class="ruby-identifier">done</span> = <span class="ruby-keyword kw">true</span>
18
+ 487: <span class="ruby-identifier">raise</span> <span class="ruby-identifier">details</span>
19
+ 488: <span class="ruby-keyword kw">end</span></pre>
19
20
  </body>
20
21
  </html>
@@ -5,16 +5,16 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>done= (Mongrel::HttpResponse)</title>
8
+ <title>write (Mongrel::HttpResponse)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
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.rb, line 475</span>
14
- 475: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">done=</span>(<span class="ruby-identifier">val</span>)
15
- 476: <span class="ruby-ivar">@status_sent</span> = <span class="ruby-keyword kw">true</span>
16
- 477: <span class="ruby-ivar">@header_sent</span> = <span class="ruby-keyword kw">true</span>
17
- 478: <span class="ruby-ivar">@body_sent</span> = <span class="ruby-keyword kw">true</span>
18
- 479: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line 490</span>
14
+ 490: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">write</span>(<span class="ruby-identifier">data</span>)
15
+ 491: <span class="ruby-ivar">@socket</span>.<span class="ruby-identifier">write</span>(<span class="ruby-identifier">data</span>)
16
+ 492: <span class="ruby-keyword kw">rescue</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">details</span>
17
+ 493: <span class="ruby-identifier">socket_error</span>(<span class="ruby-identifier">details</span>)
18
+ 494: <span class="ruby-keyword kw">end</span></pre>
19
19
  </body>
20
20
  </html>
@@ -5,14 +5,16 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>done (Mongrel::HttpResponse)</title>
8
+ <title>finished (Mongrel::HttpResponse)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
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.rb, line 481</span>
14
- 481: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">done</span>
15
- 482: (<span class="ruby-ivar">@status_sent</span> <span class="ruby-keyword kw">and</span> <span class="ruby-ivar">@header_sent</span> <span class="ruby-keyword kw">and</span> <span class="ruby-ivar">@body_sent</span>)
16
- 483: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/mongrel.rb, line 498</span>
14
+ 498: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">finished</span>
15
+ 499: <span class="ruby-identifier">send_status</span>
16
+ 500: <span class="ruby-identifier">send_header</span>
17
+ 501: <span class="ruby-identifier">send_body</span>
18
+ 502: <span class="ruby-keyword kw">end</span></pre>
17
19
  </body>
18
20
  </html>
@@ -0,0 +1,20 @@
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>done= (Mongrel::HttpResponse)</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.rb, line 506</span>
14
+ 506: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">done=</span>(<span class="ruby-identifier">val</span>)
15
+ 507: <span class="ruby-ivar">@status_sent</span> = <span class="ruby-keyword kw">true</span>
16
+ 508: <span class="ruby-ivar">@header_sent</span> = <span class="ruby-keyword kw">true</span>
17
+ 509: <span class="ruby-ivar">@body_sent</span> = <span class="ruby-keyword kw">true</span>
18
+ 510: <span class="ruby-keyword kw">end</span></pre>
19
+ </body>
20
+ </html>
@@ -0,0 +1,18 @@
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>done (Mongrel::HttpResponse)</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.rb, line 512</span>
14
+ 512: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">done</span>
15
+ 513: (<span class="ruby-ivar">@status_sent</span> <span class="ruby-keyword kw">and</span> <span class="ruby-ivar">@header_sent</span> <span class="ruby-keyword kw">and</span> <span class="ruby-ivar">@body_sent</span>)
16
+ 514: <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -83,9 +83,9 @@
83
83
  This is the main driver of <a href="../Mongrel.html">Mongrel</a>, while the
84
84
  <a href="HttpParser.html">Mongrel::HttpParser</a> and <a
85
85
  href="URIClassifier.html">Mongrel::URIClassifier</a> make up the majority
86
- of how the server functions. It&#8217;s a very simple class that just has a
86
+ of how the server functions. It&#8216;s a very simple class that just has a
87
87
  thread accepting connections and a simple <a
88
- href="HttpServer.html#M000056">HttpServer.process_client</a> function to do
88
+ href="HttpServer.html#M000058">HttpServer.process_client</a> function to do
89
89
  the heavy lifting with the <a href="../IO.html">IO</a> and Ruby.
90
90
  </p>
91
91
  <p>
@@ -97,16 +97,16 @@ You use it by doing the following:
97
97
  server.run.join
98
98
  </pre>
99
99
  <p>
100
- The last line can be just server.run if you don&#8217;t want to join the
101
- thread used. If you don&#8217;t though Ruby will mysteriously just exit on
100
+ The last line can be just server.run if you don&#8216;t want to join the
101
+ thread used. If you don&#8216;t though Ruby will mysteriously just exit on
102
102
  you.
103
103
  </p>
104
104
  <p>
105
- Ruby&#8217;s thread implementation is &quot;interesting&quot; to say the
105
+ Ruby&#8216;s thread implementation is &quot;interesting&quot; to say the
106
106
  least. Experiments with <b>many</b> different types of <a
107
107
  href="../IO.html">IO</a> processing simply cannot make a dent in it. Future
108
108
  releases of <a href="../Mongrel.html">Mongrel</a> will find other creative
109
- ways to make threads faster, but don&#8217;t hold your breath until Ruby
109
+ ways to make threads faster, but don&#8216;t hold your breath until Ruby
110
110
  1.9 is actually finally useful.
111
111
  </p>
112
112
 
@@ -119,15 +119,15 @@ ways to make threads faster, but don&#8217;t hold your breath until Ruby
119
119
  <h3 class="section-bar">Methods</h3>
120
120
 
121
121
  <div class="name-list">
122
- <a href="#M000059">configure_socket_options</a>&nbsp;&nbsp;
123
- <a href="#M000058">graceful_shutdown</a>&nbsp;&nbsp;
124
- <a href="#M000055">new</a>&nbsp;&nbsp;
125
- <a href="#M000056">process_client</a>&nbsp;&nbsp;
126
- <a href="#M000057">reap_dead_workers</a>&nbsp;&nbsp;
127
- <a href="#M000061">register</a>&nbsp;&nbsp;
128
- <a href="#M000060">run</a>&nbsp;&nbsp;
129
- <a href="#M000063">stop</a>&nbsp;&nbsp;
130
- <a href="#M000062">unregister</a>&nbsp;&nbsp;
122
+ <a href="#M000061">configure_socket_options</a>&nbsp;&nbsp;
123
+ <a href="#M000060">graceful_shutdown</a>&nbsp;&nbsp;
124
+ <a href="#M000057">new</a>&nbsp;&nbsp;
125
+ <a href="#M000058">process_client</a>&nbsp;&nbsp;
126
+ <a href="#M000059">reap_dead_workers</a>&nbsp;&nbsp;
127
+ <a href="#M000063">register</a>&nbsp;&nbsp;
128
+ <a href="#M000062">run</a>&nbsp;&nbsp;
129
+ <a href="#M000065">stop</a>&nbsp;&nbsp;
130
+ <a href="#M000064">unregister</a>&nbsp;&nbsp;
131
131
  </div>
132
132
  </div>
133
133
 
@@ -192,12 +192,12 @@ ways to make threads faster, but don&#8217;t hold your breath until Ruby
192
192
  <div id="methods">
193
193
  <h3 class="section-bar">Public Class methods</h3>
194
194
 
195
- <div id="method-M000055" class="method-detail">
196
- <a name="M000055"></a>
195
+ <div id="method-M000057" class="method-detail">
196
+ <a name="M000057"></a>
197
197
 
198
198
  <div class="method-heading">
199
- <a href="HttpServer.src/M000055.html" target="Code" class="method-signature"
200
- onclick="popupCode('HttpServer.src/M000055.html');return false;">
199
+ <a href="HttpServer.src/M000057.html" target="Code" class="method-signature"
200
+ onclick="popupCode('HttpServer.src/M000057.html');return false;">
201
201
  <span class="method-name">new</span><span class="method-args">(host, port, num_processors=(2**30-1), timeout=0)</span>
202
202
  </a>
203
203
  </div>
@@ -205,8 +205,8 @@ ways to make threads faster, but don&#8217;t hold your breath until Ruby
205
205
  <div class="method-description">
206
206
  <p>
207
207
  Creates a working server on host:port (strange things happen if port
208
- isn&#8217;t a Number). Use HttpServer::run to start the server and
209
- HttpServer.acceptor.join to join the thread that&#8217;s processing
208
+ isn&#8216;t a Number). Use HttpServer::run to start the server and
209
+ HttpServer.acceptor.join to join the thread that&#8216;s processing
210
210
  incoming requests on the socket.
211
211
  </p>
212
212
  <p>
@@ -214,7 +214,7 @@ The num_processors optional argument is the maximum number of concurrent
214
214
  processors to accept, anything over this is closed immediately to maintain
215
215
  server processing performance. This may seem mean but it is the most
216
216
  efficient way to deal with overload. Other schemes involve still parsing
217
- the client&#8217;s request which defeats the point of an overload handling
217
+ the client&#8216;s request which defeats the point of an overload handling
218
218
  system.
219
219
  </p>
220
220
  <p>
@@ -222,22 +222,18 @@ The timeout parameter is a sleep timeout (in hundredths of a second) that
222
222
  is placed between socket.accept calls in order to give the server a cheap
223
223
  throttle time. It defaults to 0 and actually if it is 0 then the sleep is
224
224
  not done at all.
225
- </p>
226
- <p>
227
- TODO: Find out if anyone actually uses the timeout option since it seems to
228
- cause problems on FBSD.
229
225
  </p>
230
226
  </div>
231
227
  </div>
232
228
 
233
229
  <h3 class="section-bar">Public Instance methods</h3>
234
230
 
235
- <div id="method-M000059" class="method-detail">
236
- <a name="M000059"></a>
231
+ <div id="method-M000061" class="method-detail">
232
+ <a name="M000061"></a>
237
233
 
238
234
  <div class="method-heading">
239
- <a href="HttpServer.src/M000059.html" target="Code" class="method-signature"
240
- onclick="popupCode('HttpServer.src/M000059.html');return false;">
235
+ <a href="HttpServer.src/M000061.html" target="Code" class="method-signature"
236
+ onclick="popupCode('HttpServer.src/M000061.html');return false;">
241
237
  <span class="method-name">configure_socket_options</span><span class="method-args">()</span>
242
238
  </a>
243
239
  </div>
@@ -246,12 +242,12 @@ cause problems on FBSD.
246
242
  </div>
247
243
  </div>
248
244
 
249
- <div id="method-M000058" class="method-detail">
250
- <a name="M000058"></a>
245
+ <div id="method-M000060" class="method-detail">
246
+ <a name="M000060"></a>
251
247
 
252
248
  <div class="method-heading">
253
- <a href="HttpServer.src/M000058.html" target="Code" class="method-signature"
254
- onclick="popupCode('HttpServer.src/M000058.html');return false;">
249
+ <a href="HttpServer.src/M000060.html" target="Code" class="method-signature"
250
+ onclick="popupCode('HttpServer.src/M000060.html');return false;">
255
251
  <span class="method-name">graceful_shutdown</span><span class="method-args">()</span>
256
252
  </a>
257
253
  </div>
@@ -266,12 +262,12 @@ much longer.
266
262
  </div>
267
263
  </div>
268
264
 
269
- <div id="method-M000056" class="method-detail">
270
- <a name="M000056"></a>
265
+ <div id="method-M000058" class="method-detail">
266
+ <a name="M000058"></a>
271
267
 
272
268
  <div class="method-heading">
273
- <a href="HttpServer.src/M000056.html" target="Code" class="method-signature"
274
- onclick="popupCode('HttpServer.src/M000056.html');return false;">
269
+ <a href="HttpServer.src/M000058.html" target="Code" class="method-signature"
270
+ onclick="popupCode('HttpServer.src/M000058.html');return false;">
275
271
  <span class="method-name">process_client</span><span class="method-args">(client)</span>
276
272
  </a>
277
273
  </div>
@@ -280,7 +276,7 @@ much longer.
280
276
  <p>
281
277
  Does the majority of the <a href="../IO.html">IO</a> processing. It has
282
278
  been written in Ruby using about 7 different <a href="../IO.html">IO</a>
283
- processing strategies and no matter how it&#8217;s done the performance
279
+ processing strategies and no matter how it&#8216;s done the performance
284
280
  just does not improve. It is currently carefully constructed to make sure
285
281
  that it gets the best possible performance, but anyone who thinks they can
286
282
  make it faster is more than welcome to take a crack at it.
@@ -288,12 +284,12 @@ make it faster is more than welcome to take a crack at it.
288
284
  </div>
289
285
  </div>
290
286
 
291
- <div id="method-M000057" class="method-detail">
292
- <a name="M000057"></a>
287
+ <div id="method-M000059" class="method-detail">
288
+ <a name="M000059"></a>
293
289
 
294
290
  <div class="method-heading">
295
- <a href="HttpServer.src/M000057.html" target="Code" class="method-signature"
296
- onclick="popupCode('HttpServer.src/M000057.html');return false;">
291
+ <a href="HttpServer.src/M000059.html" target="Code" class="method-signature"
292
+ onclick="popupCode('HttpServer.src/M000059.html');return false;">
297
293
  <span class="method-name">reap_dead_workers</span><span class="method-args">(reason='unknown')</span>
298
294
  </a>
299
295
  </div>
@@ -308,12 +304,12 @@ done. It only runs if there are workers to reap.
308
304
  </div>
309
305
  </div>
310
306
 
311
- <div id="method-M000061" class="method-detail">
312
- <a name="M000061"></a>
307
+ <div id="method-M000063" class="method-detail">
308
+ <a name="M000063"></a>
313
309
 
314
310
  <div class="method-heading">
315
- <a href="HttpServer.src/M000061.html" target="Code" class="method-signature"
316
- onclick="popupCode('HttpServer.src/M000061.html');return false;">
311
+ <a href="HttpServer.src/M000063.html" target="Code" class="method-signature"
312
+ onclick="popupCode('HttpServer.src/M000063.html');return false;">
317
313
  <span class="method-name">register</span><span class="method-args">(uri, handler, in_front=false)</span>
318
314
  </a>
319
315
  </div>
@@ -322,24 +318,24 @@ done. It only runs if there are workers to reap.
322
318
  <p>
323
319
  Simply registers a handler with the internal <a
324
320
  href="URIClassifier.html">URIClassifier</a>. When the URI is found in the
325
- prefix of a request then your handler&#8217;s HttpHandler::process method
321
+ prefix of a request then your handler&#8216;s HttpHandler::process method
326
322
  is called. See <a
327
- href="URIClassifier.html#M000088">Mongrel::URIClassifier#register</a> for
323
+ href="URIClassifier.html#M000090">Mongrel::URIClassifier#register</a> for
328
324
  more information.
329
325
  </p>
330
326
  <p>
331
327
  If you set in_front=true then the passed in handler will be put in front in
332
- the list. Otherwise it&#8217;s placed at the end of the list.
328
+ the list. Otherwise it&#8216;s placed at the end of the list.
333
329
  </p>
334
330
  </div>
335
331
  </div>
336
332
 
337
- <div id="method-M000060" class="method-detail">
338
- <a name="M000060"></a>
333
+ <div id="method-M000062" class="method-detail">
334
+ <a name="M000062"></a>
339
335
 
340
336
  <div class="method-heading">
341
- <a href="HttpServer.src/M000060.html" target="Code" class="method-signature"
342
- onclick="popupCode('HttpServer.src/M000060.html');return false;">
337
+ <a href="HttpServer.src/M000062.html" target="Code" class="method-signature"
338
+ onclick="popupCode('HttpServer.src/M000062.html');return false;">
343
339
  <span class="method-name">run</span><span class="method-args">()</span>
344
340
  </a>
345
341
  </div>
@@ -353,12 +349,12 @@ later.
353
349
  </div>
354
350
  </div>
355
351
 
356
- <div id="method-M000063" class="method-detail">
357
- <a name="M000063"></a>
352
+ <div id="method-M000065" class="method-detail">
353
+ <a name="M000065"></a>
358
354
 
359
355
  <div class="method-heading">
360
- <a href="HttpServer.src/M000063.html" target="Code" class="method-signature"
361
- onclick="popupCode('HttpServer.src/M000063.html');return false;">
356
+ <a href="HttpServer.src/M000065.html" target="Code" class="method-signature"
357
+ onclick="popupCode('HttpServer.src/M000065.html');return false;">
362
358
  <span class="method-name">stop</span><span class="method-args">()</span>
363
359
  </a>
364
360
  </div>
@@ -371,12 +367,12 @@ the request queue before finally exiting.
371
367
  </div>
372
368
  </div>
373
369
 
374
- <div id="method-M000062" class="method-detail">
375
- <a name="M000062"></a>
370
+ <div id="method-M000064" class="method-detail">
371
+ <a name="M000064"></a>
376
372
 
377
373
  <div class="method-heading">
378
- <a href="HttpServer.src/M000062.html" target="Code" class="method-signature"
379
- onclick="popupCode('HttpServer.src/M000062.html');return false;">
374
+ <a href="HttpServer.src/M000064.html" target="Code" class="method-signature"
375
+ onclick="popupCode('HttpServer.src/M000064.html');return false;">
380
376
  <span class="method-name">unregister</span><span class="method-args">(uri)</span>
381
377
  </a>
382
378
  </div>
@@ -384,7 +380,7 @@ the request queue before finally exiting.
384
380
  <div class="method-description">
385
381
  <p>
386
382
  Removes any handlers registered at the given URI. See <a
387
- href="URIClassifier.html#M000089">Mongrel::URIClassifier#unregister</a> for
383
+ href="URIClassifier.html#M000091">Mongrel::URIClassifier#unregister</a> for
388
384
  more information. Remember this removes them <b>all</b> so the entire
389
385
  processing chain goes away.
390
386
  </p>