mongrel 1.0.1 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (263) hide show
  1. data.tar.gz.sig +2 -0
  2. data/CHANGELOG +2 -0
  3. data/Manifest +68 -0
  4. data/bin/mongrel_rails +55 -22
  5. data/examples/camping/README +3 -0
  6. data/examples/httpd.conf +474 -0
  7. data/examples/mime.yaml +3 -0
  8. data/examples/mongrel.conf +9 -0
  9. data/examples/monitrc +57 -0
  10. data/ext/http11/http11.c +25 -12
  11. data/ext/http11/http11_parser.c +456 -331
  12. data/ext/http11/http11_parser.h +1 -0
  13. data/ext/http11/http11_parser.java.rl +170 -0
  14. data/ext/http11/http11_parser.rl +8 -48
  15. data/ext/http11/http11_parser_common.rl +54 -0
  16. data/ext/http11/tst.h +2 -2
  17. data/ext/http11/tst_cleanup.c +0 -1
  18. data/ext/http11/tst_insert.c +29 -3
  19. data/ext/http11/tst_search.c +60 -55
  20. data/lib/mongrel.rb +68 -53
  21. data/lib/mongrel/cgi.rb +3 -3
  22. data/lib/mongrel/command.rb +1 -1
  23. data/lib/mongrel/configurator.rb +41 -31
  24. data/lib/mongrel/debug.rb +2 -5
  25. data/lib/mongrel/handlers.rb +23 -9
  26. data/lib/mongrel/mime_types.yml +2 -1
  27. data/lib/mongrel/rails.rb +7 -15
  28. data/mongrel-public_cert.pem +20 -0
  29. data/mongrel.gemspec +211 -0
  30. data/test/jruby_socket.rb +39 -0
  31. data/test/test_cgi_wrapper.rb +26 -0
  32. data/test/test_command.rb +1 -4
  33. data/test/test_conditional.rb +6 -18
  34. data/test/test_configurator.rb +5 -8
  35. data/test/test_debug.rb +3 -11
  36. data/test/test_handlers.rb +8 -10
  37. data/test/test_http11.rb +24 -5
  38. data/test/test_redirect_handler.rb +2 -6
  39. data/test/test_request_progress.rb +5 -9
  40. data/test/test_response.rb +24 -3
  41. data/test/test_stats.rb +1 -3
  42. data/test/test_uriclassifier.rb +170 -81
  43. data/test/test_ws.rb +25 -24
  44. data/test/testhelp.rb +26 -3
  45. data/tools/trickletest.rb +2 -2
  46. metadata +138 -333
  47. metadata.gz.sig +0 -0
  48. data/Rakefile +0 -117
  49. data/doc/rdoc/classes/IO.html +0 -170
  50. data/doc/rdoc/classes/IO.src/M000003.html +0 -19
  51. data/doc/rdoc/classes/IO.src/M000004.html +0 -19
  52. data/doc/rdoc/classes/Kernel.html +0 -159
  53. data/doc/rdoc/classes/Kernel.src/M000012.html +0 -19
  54. data/doc/rdoc/classes/Kernel.src/M000013.html +0 -23
  55. data/doc/rdoc/classes/Mongrel.html +0 -204
  56. data/doc/rdoc/classes/Mongrel/CGIWrapper.html +0 -404
  57. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000115.html +0 -25
  58. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000116.html +0 -47
  59. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000117.html +0 -34
  60. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000118.html +0 -32
  61. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000119.html +0 -25
  62. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000120.html +0 -18
  63. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000121.html +0 -18
  64. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000122.html +0 -18
  65. data/doc/rdoc/classes/Mongrel/CGIWrapper.src/M000123.html +0 -19
  66. data/doc/rdoc/classes/Mongrel/Camping.html +0 -177
  67. data/doc/rdoc/classes/Mongrel/Camping.src/M000041.html +0 -22
  68. data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.html +0 -184
  69. data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.src/M000042.html +0 -20
  70. data/doc/rdoc/classes/Mongrel/Camping/CampingHandler.src/M000043.html +0 -58
  71. data/doc/rdoc/classes/Mongrel/Command.html +0 -132
  72. data/doc/rdoc/classes/Mongrel/Command/Base.html +0 -384
  73. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000018.html +0 -24
  74. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000019.html +0 -42
  75. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000020.html +0 -18
  76. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000021.html +0 -18
  77. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000022.html +0 -18
  78. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000023.html +0 -18
  79. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000024.html +0 -22
  80. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000025.html +0 -18
  81. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000026.html +0 -18
  82. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000027.html +0 -18
  83. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000028.html +0 -24
  84. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000029.html +0 -24
  85. data/doc/rdoc/classes/Mongrel/Command/Base.src/M000030.html +0 -18
  86. data/doc/rdoc/classes/Mongrel/Command/Registry.html +0 -192
  87. data/doc/rdoc/classes/Mongrel/Command/Registry.src/M000031.html +0 -20
  88. data/doc/rdoc/classes/Mongrel/Command/Registry.src/M000032.html +0 -29
  89. data/doc/rdoc/classes/Mongrel/Command/Registry.src/M000033.html +0 -58
  90. data/doc/rdoc/classes/Mongrel/Configurator.html +0 -716
  91. data/doc/rdoc/classes/Mongrel/Configurator.src/M000093.html +0 -27
  92. data/doc/rdoc/classes/Mongrel/Configurator.src/M000094.html +0 -31
  93. data/doc/rdoc/classes/Mongrel/Configurator.src/M000095.html +0 -18
  94. data/doc/rdoc/classes/Mongrel/Configurator.src/M000096.html +0 -21
  95. data/doc/rdoc/classes/Mongrel/Configurator.src/M000097.html +0 -20
  96. data/doc/rdoc/classes/Mongrel/Configurator.src/M000098.html +0 -23
  97. data/doc/rdoc/classes/Mongrel/Configurator.src/M000099.html +0 -18
  98. data/doc/rdoc/classes/Mongrel/Configurator.src/M000100.html +0 -38
  99. data/doc/rdoc/classes/Mongrel/Configurator.src/M000101.html +0 -19
  100. data/doc/rdoc/classes/Mongrel/Configurator.src/M000102.html +0 -39
  101. data/doc/rdoc/classes/Mongrel/Configurator.src/M000103.html +0 -33
  102. data/doc/rdoc/classes/Mongrel/Configurator.src/M000104.html +0 -18
  103. data/doc/rdoc/classes/Mongrel/Configurator.src/M000105.html +0 -24
  104. data/doc/rdoc/classes/Mongrel/Configurator.src/M000106.html +0 -19
  105. data/doc/rdoc/classes/Mongrel/Configurator.src/M000107.html +0 -18
  106. data/doc/rdoc/classes/Mongrel/Configurator.src/M000108.html +0 -22
  107. data/doc/rdoc/classes/Mongrel/Configurator.src/M000109.html +0 -22
  108. data/doc/rdoc/classes/Mongrel/Configurator.src/M000110.html +0 -18
  109. data/doc/rdoc/classes/Mongrel/Configurator.src/M000111.html +0 -34
  110. data/doc/rdoc/classes/Mongrel/Configurator.src/M000112.html +0 -18
  111. data/doc/rdoc/classes/Mongrel/Configurator.src/M000113.html +0 -36
  112. data/doc/rdoc/classes/Mongrel/Configurator.src/M000114.html +0 -18
  113. data/doc/rdoc/classes/Mongrel/Const.html +0 -337
  114. data/doc/rdoc/classes/Mongrel/DeflateFilter.html +0 -188
  115. data/doc/rdoc/classes/Mongrel/DeflateFilter.src/M000124.html +0 -19
  116. data/doc/rdoc/classes/Mongrel/DeflateFilter.src/M000125.html +0 -23
  117. data/doc/rdoc/classes/Mongrel/DirHandler.html +0 -303
  118. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000051.html +0 -21
  119. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000052.html +0 -42
  120. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000053.html +0 -38
  121. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000054.html +0 -65
  122. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000055.html +0 -39
  123. data/doc/rdoc/classes/Mongrel/DirHandler.src/M000056.html +0 -18
  124. data/doc/rdoc/classes/Mongrel/Error404Handler.html +0 -171
  125. data/doc/rdoc/classes/Mongrel/Error404Handler.src/M000126.html +0 -18
  126. data/doc/rdoc/classes/Mongrel/Error404Handler.src/M000127.html +0 -18
  127. data/doc/rdoc/classes/Mongrel/HeaderOut.html +0 -190
  128. data/doc/rdoc/classes/Mongrel/HeaderOut.src/M000066.html +0 -21
  129. data/doc/rdoc/classes/Mongrel/HeaderOut.src/M000067.html +0 -21
  130. data/doc/rdoc/classes/Mongrel/HttpHandler.html +0 -215
  131. data/doc/rdoc/classes/Mongrel/HttpHandler.src/M000072.html +0 -17
  132. data/doc/rdoc/classes/Mongrel/HttpHandler.src/M000073.html +0 -17
  133. data/doc/rdoc/classes/Mongrel/HttpHandler.src/M000074.html +0 -17
  134. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.html +0 -210
  135. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/M000014.html +0 -17
  136. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/M000015.html +0 -17
  137. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/M000016.html +0 -19
  138. data/doc/rdoc/classes/Mongrel/HttpHandlerPlugin.src/M000017.html +0 -17
  139. data/doc/rdoc/classes/Mongrel/HttpParams.html +0 -131
  140. data/doc/rdoc/classes/Mongrel/HttpParser.html +0 -278
  141. data/doc/rdoc/classes/Mongrel/HttpParser.src/M000044.html +0 -28
  142. data/doc/rdoc/classes/Mongrel/HttpParser.src/M000045.html +0 -29
  143. data/doc/rdoc/classes/Mongrel/HttpParser.src/M000046.html +0 -29
  144. data/doc/rdoc/classes/Mongrel/HttpParser.src/M000047.html +0 -59
  145. data/doc/rdoc/classes/Mongrel/HttpParser.src/M000048.html +0 -27
  146. data/doc/rdoc/classes/Mongrel/HttpParser.src/M000049.html +0 -27
  147. data/doc/rdoc/classes/Mongrel/HttpParser.src/M000050.html +0 -28
  148. data/doc/rdoc/classes/Mongrel/HttpParserError.html +0 -111
  149. data/doc/rdoc/classes/Mongrel/HttpRequest.html +0 -284
  150. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000133.html +0 -50
  151. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000134.html +0 -41
  152. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000135.html +0 -29
  153. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000136.html +0 -20
  154. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000137.html +0 -20
  155. data/doc/rdoc/classes/Mongrel/HttpRequest.src/M000138.html +0 -32
  156. data/doc/rdoc/classes/Mongrel/HttpResponse.html +0 -443
  157. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000075.html +0 -25
  158. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000076.html +0 -20
  159. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000077.html +0 -26
  160. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000078.html +0 -22
  161. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000079.html +0 -22
  162. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000080.html +0 -22
  163. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000081.html +0 -31
  164. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000082.html +0 -21
  165. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000083.html +0 -20
  166. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000084.html +0 -20
  167. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000085.html +0 -20
  168. data/doc/rdoc/classes/Mongrel/HttpResponse.src/M000086.html +0 -18
  169. data/doc/rdoc/classes/Mongrel/HttpServer.html +0 -402
  170. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000057.html +0 -25
  171. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000058.html +0 -100
  172. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000059.html +0 -32
  173. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000060.html +0 -21
  174. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000061.html +0 -29
  175. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000062.html +0 -65
  176. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000063.html +0 -34
  177. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000064.html +0 -18
  178. data/doc/rdoc/classes/Mongrel/HttpServer.src/M000065.html +0 -22
  179. data/doc/rdoc/classes/Mongrel/Rails.html +0 -112
  180. data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.html +0 -225
  181. data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.src/M000034.html +0 -37
  182. data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.src/M000035.html +0 -25
  183. data/doc/rdoc/classes/Mongrel/Rails/RailsConfigurator.src/M000036.html +0 -26
  184. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.html +0 -263
  185. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000037.html +0 -23
  186. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000038.html +0 -56
  187. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000039.html +0 -20
  188. data/doc/rdoc/classes/Mongrel/Rails/RailsHandler.src/M000040.html +0 -25
  189. data/doc/rdoc/classes/Mongrel/RedirectHandler.html +0 -187
  190. data/doc/rdoc/classes/Mongrel/RedirectHandler.src/M000131.html +0 -22
  191. data/doc/rdoc/classes/Mongrel/RedirectHandler.src/M000132.html +0 -27
  192. data/doc/rdoc/classes/Mongrel/StatisticsFilter.html +0 -211
  193. data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/M000128.html +0 -24
  194. data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/M000129.html +0 -24
  195. data/doc/rdoc/classes/Mongrel/StatisticsFilter.src/M000130.html +0 -18
  196. data/doc/rdoc/classes/Mongrel/Stats.html +0 -309
  197. data/doc/rdoc/classes/Mongrel/Stats.src/M000139.html +0 -19
  198. data/doc/rdoc/classes/Mongrel/Stats.src/M000140.html +0 -23
  199. data/doc/rdoc/classes/Mongrel/Stats.src/M000141.html +0 -26
  200. data/doc/rdoc/classes/Mongrel/Stats.src/M000142.html +0 -18
  201. data/doc/rdoc/classes/Mongrel/Stats.src/M000143.html +0 -18
  202. data/doc/rdoc/classes/Mongrel/Stats.src/M000144.html +0 -18
  203. data/doc/rdoc/classes/Mongrel/Stats.src/M000145.html +0 -23
  204. data/doc/rdoc/classes/Mongrel/Stats.src/M000146.html +0 -20
  205. data/doc/rdoc/classes/Mongrel/StatusHandler.html +0 -194
  206. data/doc/rdoc/classes/Mongrel/StatusHandler.src/M000068.html +0 -18
  207. data/doc/rdoc/classes/Mongrel/StatusHandler.src/M000069.html +0 -24
  208. data/doc/rdoc/classes/Mongrel/StatusHandler.src/M000070.html +0 -42
  209. data/doc/rdoc/classes/Mongrel/StatusHandler.src/M000071.html +0 -20
  210. data/doc/rdoc/classes/Mongrel/StopServer.html +0 -117
  211. data/doc/rdoc/classes/Mongrel/TimeoutError.html +0 -117
  212. data/doc/rdoc/classes/Mongrel/URIClassifier.html +0 -317
  213. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000087.html +0 -18
  214. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000088.html +0 -18
  215. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000089.html +0 -39
  216. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000090.html +0 -51
  217. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000091.html +0 -36
  218. data/doc/rdoc/classes/Mongrel/URIClassifier.src/M000092.html +0 -83
  219. data/doc/rdoc/classes/MongrelDbg.html +0 -209
  220. data/doc/rdoc/classes/MongrelDbg.src/M000007.html +0 -24
  221. data/doc/rdoc/classes/MongrelDbg.src/M000008.html +0 -20
  222. data/doc/rdoc/classes/MongrelDbg.src/M000009.html +0 -22
  223. data/doc/rdoc/classes/MongrelDbg.src/M000010.html +0 -21
  224. data/doc/rdoc/classes/MongrelDbg.src/M000011.html +0 -18
  225. data/doc/rdoc/classes/Mutex.html +0 -158
  226. data/doc/rdoc/classes/Mutex.src/M000001.html +0 -24
  227. data/doc/rdoc/classes/Mutex.src/M000002.html +0 -32
  228. data/doc/rdoc/classes/RequestLog.html +0 -115
  229. data/doc/rdoc/classes/RequestLog/Access.html +0 -151
  230. data/doc/rdoc/classes/RequestLog/Access.src/M000147.html +0 -19
  231. data/doc/rdoc/classes/RequestLog/Files.html +0 -144
  232. data/doc/rdoc/classes/RequestLog/Files.src/M000148.html +0 -19
  233. data/doc/rdoc/classes/RequestLog/Objects.html +0 -150
  234. data/doc/rdoc/classes/RequestLog/Objects.src/M000150.html +0 -51
  235. data/doc/rdoc/classes/RequestLog/Params.html +0 -144
  236. data/doc/rdoc/classes/RequestLog/Params.src/M000151.html +0 -19
  237. data/doc/rdoc/classes/RequestLog/Threads.html +0 -144
  238. data/doc/rdoc/classes/RequestLog/Threads.src/M000149.html +0 -34
  239. data/doc/rdoc/classes/TCPServer.html +0 -173
  240. data/doc/rdoc/classes/TCPServer.src/M000005.html +0 -19
  241. data/doc/rdoc/created.rid +0 -1
  242. data/doc/rdoc/files/COPYING.html +0 -168
  243. data/doc/rdoc/files/LICENSE.html +0 -168
  244. data/doc/rdoc/files/README.html +0 -213
  245. data/doc/rdoc/files/ext/http11/http11_c.html +0 -101
  246. data/doc/rdoc/files/lib/mongrel/camping_rb.html +0 -120
  247. data/doc/rdoc/files/lib/mongrel/cgi_rb.html +0 -120
  248. data/doc/rdoc/files/lib/mongrel/command_rb.html +0 -123
  249. data/doc/rdoc/files/lib/mongrel/configurator_rb.html +0 -111
  250. data/doc/rdoc/files/lib/mongrel/debug_rb.html +0 -122
  251. data/doc/rdoc/files/lib/mongrel/handlers_rb.html +0 -122
  252. data/doc/rdoc/files/lib/mongrel/init_rb.html +0 -121
  253. data/doc/rdoc/files/lib/mongrel/rails_rb.html +0 -123
  254. data/doc/rdoc/files/lib/mongrel/stats_rb.html +0 -113
  255. data/doc/rdoc/files/lib/mongrel/tcphack_rb.html +0 -113
  256. data/doc/rdoc/files/lib/mongrel_rb.html +0 -135
  257. data/doc/rdoc/files/lib/mutex_fix_rb.html +0 -108
  258. data/doc/rdoc/fr_class_index.html +0 -68
  259. data/doc/rdoc/fr_file_index.html +0 -42
  260. data/doc/rdoc/fr_method_index.html +0 -177
  261. data/doc/rdoc/index.html +0 -24
  262. data/doc/rdoc/rdoc-style.css +0 -208
  263. data/tools/rakehelp.rb +0 -117
@@ -1,225 +0,0 @@
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 xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Class: Mongrel::Rails::RailsConfigurator</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Class</strong></td>
53
- <td class="class-name-in-header">Mongrel::Rails::RailsConfigurator</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../../../files/lib/mongrel/rails_rb.html">
59
- lib/mongrel/rails.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- <tr class="top-aligned-row">
66
- <td><strong>Parent:</strong></td>
67
- <td>
68
- <a href="../Configurator.html">
69
- Mongrel::Configurator
70
- </a>
71
- </td>
72
- </tr>
73
- </table>
74
- </div>
75
- <!-- banner header -->
76
-
77
- <div id="bodyContent">
78
-
79
-
80
-
81
- <div id="contextContent">
82
-
83
- <div id="description">
84
- <p>
85
- Creates <a href="../Rails.html">Rails</a> specific configuration options
86
- for people to use instead of the base <a
87
- href="../Configurator.html">Configurator</a>.
88
- </p>
89
-
90
- </div>
91
-
92
-
93
- </div>
94
-
95
- <div id="method-list">
96
- <h3 class="section-bar">Methods</h3>
97
-
98
- <div class="name-list">
99
- <a href="#M000034">rails</a>&nbsp;&nbsp;
100
- <a href="#M000035">reload!</a>&nbsp;&nbsp;
101
- <a href="#M000036">setup_rails_signals</a>&nbsp;&nbsp;
102
- </div>
103
- </div>
104
-
105
- </div>
106
-
107
-
108
- <!-- if includes -->
109
-
110
- <div id="section">
111
-
112
-
113
-
114
-
115
-
116
-
117
-
118
-
119
- <!-- if method_list -->
120
- <div id="methods">
121
- <h3 class="section-bar">Public Instance methods</h3>
122
-
123
- <div id="method-M000034" class="method-detail">
124
- <a name="M000034"></a>
125
-
126
- <div class="method-heading">
127
- <a href="RailsConfigurator.src/M000034.html" target="Code" class="method-signature"
128
- onclick="popupCode('RailsConfigurator.src/M000034.html');return false;">
129
- <span class="method-name">rails</span><span class="method-args">(options={})</span>
130
- </a>
131
- </div>
132
-
133
- <div class="method-description">
134
- <p>
135
- Creates a single <a href="RailsConfigurator.html#M000034">rails</a> handler
136
- and returns it so you can add it to a URI. You can actually attach it to as
137
- many URIs as you want, but this returns the same <a
138
- href="RailsHandler.html">RailsHandler</a> for each call.
139
- </p>
140
- <p>
141
- Requires the following options:
142
- </p>
143
- <ul>
144
- <li>:docroot =&gt; The public dir to serve from.
145
-
146
- </li>
147
- <li>:environment =&gt; <a href="../Rails.html">Rails</a> environment to use.
148
-
149
- </li>
150
- <li>:cwd =&gt; The change to working directory
151
-
152
- </li>
153
- </ul>
154
- <p>
155
- And understands the following optional settings:
156
- </p>
157
- <ul>
158
- <li>:mime =&gt; A map of mime types.
159
-
160
- </li>
161
- </ul>
162
- <p>
163
- Because of how <a href="../Rails.html">Rails</a> is designed you can only
164
- have one installed per Ruby interpreter (talk to them about thread safety).
165
- Because of this the first time you call this function it does all the
166
- config needed to get your <a href="../Rails.html">Rails</a> working. After
167
- that it returns the one handler you&#8216;ve configured. This lets you
168
- attach <a href="../Rails.html">Rails</a> to any URI(s) you want, but it
169
- still protects you from threads destroying your handler.
170
- </p>
171
- </div>
172
- </div>
173
-
174
- <div id="method-M000035" class="method-detail">
175
- <a name="M000035"></a>
176
-
177
- <div class="method-heading">
178
- <a href="RailsConfigurator.src/M000035.html" target="Code" class="method-signature"
179
- onclick="popupCode('RailsConfigurator.src/M000035.html');return false;">
180
- <span class="method-name">reload!</span><span class="method-args">()</span>
181
- </a>
182
- </div>
183
-
184
- <div class="method-description">
185
- <p>
186
- Reloads <a href="../Rails.html">Rails</a>. This isn&#8216;t too reliable
187
- really, but it should work for most minimal reload purposes. The only
188
- reliable way to reload properly is to stop and then start the process.
189
- </p>
190
- </div>
191
- </div>
192
-
193
- <div id="method-M000036" class="method-detail">
194
- <a name="M000036"></a>
195
-
196
- <div class="method-heading">
197
- <a href="RailsConfigurator.src/M000036.html" target="Code" class="method-signature"
198
- onclick="popupCode('RailsConfigurator.src/M000036.html');return false;">
199
- <span class="method-name">setup_rails_signals</span><span class="method-args">(options={})</span>
200
- </a>
201
- </div>
202
-
203
- <div class="method-description">
204
- <p>
205
- Takes the exact same configuration as <a
206
- href="../Configurator.html">Mongrel::Configurator</a> (and actually calls
207
- that) but sets up the additional HUP handler to call <a
208
- href="RailsConfigurator.html#M000035">reload!</a>.
209
- </p>
210
- </div>
211
- </div>
212
-
213
-
214
- </div>
215
-
216
-
217
- </div>
218
-
219
-
220
- <div id="validator-badges">
221
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
222
- </div>
223
-
224
- </body>
225
- </html>
@@ -1,37 +0,0 @@
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>rails (Mongrel::Rails::RailsConfigurator)</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 141</span>
14
- 141: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">rails</span>(<span class="ruby-identifier">options</span>={})
15
- 142:
16
- 143: <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@rails_handler</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@rails_handler</span>
17
- 144:
18
- 145: <span class="ruby-identifier">ops</span> = <span class="ruby-identifier">resolve_defaults</span>(<span class="ruby-identifier">options</span>)
19
- 146:
20
- 147: <span class="ruby-comment cmt"># fix up some defaults</span>
21
- 148: <span class="ruby-identifier">ops</span>[<span class="ruby-identifier">:environment</span>] <span class="ruby-operator">||=</span> <span class="ruby-value str">&quot;development&quot;</span>
22
- 149: <span class="ruby-identifier">ops</span>[<span class="ruby-identifier">:docroot</span>] <span class="ruby-operator">||=</span> <span class="ruby-value str">&quot;public&quot;</span>
23
- 150: <span class="ruby-identifier">ops</span>[<span class="ruby-identifier">:mime</span>] <span class="ruby-operator">||=</span> {}
24
- 151:
25
- 152: <span class="ruby-identifier">$orig_dollar_quote</span> = <span class="ruby-identifier">$&quot;</span>.<span class="ruby-identifier">clone</span>
26
- 153: <span class="ruby-constant">ENV</span>[<span class="ruby-value str">'RAILS_ENV'</span>] = <span class="ruby-identifier">ops</span>[<span class="ruby-identifier">:environment</span>]
27
- 154: <span class="ruby-identifier">env_location</span> = <span class="ruby-node">&quot;#{ops[:cwd]}/config/environment&quot;</span>
28
- 155: <span class="ruby-identifier">require</span> <span class="ruby-identifier">env_location</span>
29
- 156: <span class="ruby-identifier">require</span> <span class="ruby-value str">'dispatcher'</span>
30
- 157: <span class="ruby-identifier">require</span> <span class="ruby-value str">'mongrel/rails'</span>
31
- 158:
32
- 159: <span class="ruby-constant">ActionController</span><span class="ruby-operator">::</span><span class="ruby-constant">AbstractRequest</span>.<span class="ruby-identifier">relative_url_root</span> = <span class="ruby-identifier">ops</span>[<span class="ruby-identifier">:prefix</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">ops</span>[<span class="ruby-identifier">:prefix</span>]
33
- 160:
34
- 161: <span class="ruby-ivar">@rails_handler</span> = <span class="ruby-constant">RailsHandler</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">ops</span>[<span class="ruby-identifier">:docroot</span>], <span class="ruby-identifier">ops</span>[<span class="ruby-identifier">:mime</span>])
35
- 162: <span class="ruby-keyword kw">end</span></pre>
36
- </body>
37
- </html>
@@ -1,25 +0,0 @@
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::RailsConfigurator)</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 167</span>
14
- 167: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">reload!</span>
15
- 168: <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">not</span> <span class="ruby-ivar">@rails_handler</span>
16
- 169: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Rails was not configured. Read the docs for RailsConfigurator.&quot;</span>
17
- 170: <span class="ruby-keyword kw">end</span>
18
- 171:
19
- 172: <span class="ruby-identifier">log</span> <span class="ruby-value str">&quot;Reloading Rails...&quot;</span>
20
- 173: <span class="ruby-ivar">@rails_handler</span>.<span class="ruby-identifier">reload!</span>
21
- 174: <span class="ruby-identifier">log</span> <span class="ruby-value str">&quot;Done reloading Rails.&quot;</span>
22
- 175:
23
- 176: <span class="ruby-keyword kw">end</span></pre>
24
- </body>
25
- </html>
@@ -1,26 +0,0 @@
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>setup_rails_signals (Mongrel::Rails::RailsConfigurator)</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 180</span>
14
- 180: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setup_rails_signals</span>(<span class="ruby-identifier">options</span>={})
15
- 181: <span class="ruby-identifier">ops</span> = <span class="ruby-identifier">resolve_defaults</span>(<span class="ruby-identifier">options</span>)
16
- 182: <span class="ruby-identifier">setup_signals</span>(<span class="ruby-identifier">options</span>)
17
- 183:
18
- 184: <span class="ruby-keyword kw">if</span> <span class="ruby-constant">RUBY_PLATFORM</span> <span class="ruby-operator">!~</span> <span class="ruby-regexp re">/mswin/</span>
19
- 185: <span class="ruby-comment cmt"># rails reload</span>
20
- 186: <span class="ruby-identifier">trap</span>(<span class="ruby-value str">&quot;HUP&quot;</span>) { <span class="ruby-identifier">log</span> <span class="ruby-value str">&quot;HUP signal received.&quot;</span>; <span class="ruby-identifier">reload!</span> }
21
- 187:
22
- 188: <span class="ruby-identifier">log</span> <span class="ruby-value str">&quot;Rails signals registered. HUP =&gt; reload (without restart). It might not work well.&quot;</span>
23
- 189: <span class="ruby-keyword kw">end</span>
24
- 190: <span class="ruby-keyword kw">end</span></pre>
25
- </body>
26
- </html>
@@ -1,263 +0,0 @@
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 xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Class: Mongrel::Rails::RailsHandler</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Class</strong></td>
53
- <td class="class-name-in-header">Mongrel::Rails::RailsHandler</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../../../files/lib/mongrel/rails_rb.html">
59
- lib/mongrel/rails.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- <tr class="top-aligned-row">
66
- <td><strong>Parent:</strong></td>
67
- <td>
68
- <a href="../HttpHandler.html">
69
- Mongrel::HttpHandler
70
- </a>
71
- </td>
72
- </tr>
73
- </table>
74
- </div>
75
- <!-- banner header -->
76
-
77
- <div id="bodyContent">
78
-
79
-
80
-
81
- <div id="contextContent">
82
-
83
- <div id="description">
84
- <p>
85
- Implements a handler that can run <a href="../Rails.html">Rails</a> and
86
- serve files out of the <a href="../Rails.html">Rails</a>
87
- application&#8216;s public directory. This lets you run your <a
88
- href="../Rails.html">Rails</a> application with <a
89
- href="../../Mongrel.html">Mongrel</a> during development and testing, then
90
- use it also in production behind a server that&#8216;s better at serving
91
- the static files.
92
- </p>
93
- <p>
94
- The <a href="RailsHandler.html">RailsHandler</a> takes a mime_map parameter
95
- which is a simple suffix=mimetype mapping that it should add to the list of
96
- valid mime types.
97
- </p>
98
- <p>
99
- It also supports page caching directly and will try to resolve a request in
100
- the following order:
101
- </p>
102
- <ul>
103
- <li>If the requested exact PATH_INFO exists as a file then serve it.
104
-
105
- </li>
106
- <li>If it exists at PATH_INFO+&quot;.html&quot; exists then serve that.
107
-
108
- </li>
109
- <li>Finally, construct a <a href="../CGIWrapper.html">Mongrel::CGIWrapper</a>
110
- and run Dispatcher.dispatch to have <a href="../Rails.html">Rails</a> go.
111
-
112
- </li>
113
- </ul>
114
- <p>
115
- This means that if you are using page caching it will actually work with <a
116
- href="../../Mongrel.html">Mongrel</a> and you should see a decent speed
117
- boost (but not as fast as if you use a static server like Apache or
118
- Litespeed).
119
- </p>
120
-
121
- </div>
122
-
123
-
124
- </div>
125
-
126
- <div id="method-list">
127
- <h3 class="section-bar">Methods</h3>
128
-
129
- <div class="name-list">
130
- <a href="#M000039">log_threads_waiting_for</a>&nbsp;&nbsp;
131
- <a href="#M000037">new</a>&nbsp;&nbsp;
132
- <a href="#M000038">process</a>&nbsp;&nbsp;
133
- <a href="#M000040">reload!</a>&nbsp;&nbsp;
134
- </div>
135
- </div>
136
-
137
- </div>
138
-
139
-
140
- <!-- if includes -->
141
-
142
- <div id="section">
143
-
144
-
145
-
146
-
147
-
148
- <div id="attribute-list">
149
- <h3 class="section-bar">Attributes</h3>
150
-
151
- <div class="name-list">
152
- <table>
153
- <tr class="top-aligned-row context-row">
154
- <td class="context-item-name">files</td>
155
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
156
- <td class="context-item-desc"></td>
157
- </tr>
158
- <tr class="top-aligned-row context-row">
159
- <td class="context-item-name">guard</td>
160
- <td class="context-item-value">&nbsp;[R]&nbsp;</td>
161
- <td class="context-item-desc"></td>
162
- </tr>
163
- </table>
164
- </div>
165
- </div>
166
-
167
-
168
-
169
- <!-- if method_list -->
170
- <div id="methods">
171
- <h3 class="section-bar">Public Class methods</h3>
172
-
173
- <div id="method-M000037" class="method-detail">
174
- <a name="M000037"></a>
175
-
176
- <div class="method-heading">
177
- <a href="RailsHandler.src/M000037.html" target="Code" class="method-signature"
178
- onclick="popupCode('RailsHandler.src/M000037.html');return false;">
179
- <span class="method-name">new</span><span class="method-args">(dir, mime_map = {})</span>
180
- </a>
181
- </div>
182
-
183
- <div class="method-description">
184
- </div>
185
- </div>
186
-
187
- <h3 class="section-bar">Public Instance methods</h3>
188
-
189
- <div id="method-M000039" class="method-detail">
190
- <a name="M000039"></a>
191
-
192
- <div class="method-heading">
193
- <a href="RailsHandler.src/M000039.html" target="Code" class="method-signature"
194
- onclick="popupCode('RailsHandler.src/M000039.html');return false;">
195
- <span class="method-name">log_threads_waiting_for</span><span class="method-args">(event)</span>
196
- </a>
197
- </div>
198
-
199
- <div class="method-description">
200
- </div>
201
- </div>
202
-
203
- <div id="method-M000038" class="method-detail">
204
- <a name="M000038"></a>
205
-
206
- <div class="method-heading">
207
- <a href="RailsHandler.src/M000038.html" target="Code" class="method-signature"
208
- onclick="popupCode('RailsHandler.src/M000038.html');return false;">
209
- <span class="method-name">process</span><span class="method-args">(request, response)</span>
210
- </a>
211
- </div>
212
-
213
- <div class="method-description">
214
- <p>
215
- Attempts to resolve the request as follows:
216
- </p>
217
- <ul>
218
- <li>If the requested exact PATH_INFO exists as a file then serve it.
219
-
220
- </li>
221
- <li>If it exists at PATH_INFO+&quot;.html&quot; exists then serve that.
222
-
223
- </li>
224
- <li>Finally, construct a <a href="../CGIWrapper.html">Mongrel::CGIWrapper</a>
225
- and run Dispatcher.dispatch to have <a href="../Rails.html">Rails</a> go.
226
-
227
- </li>
228
- </ul>
229
- </div>
230
- </div>
231
-
232
- <div id="method-M000040" class="method-detail">
233
- <a name="M000040"></a>
234
-
235
- <div class="method-heading">
236
- <a href="RailsHandler.src/M000040.html" target="Code" class="method-signature"
237
- onclick="popupCode('RailsHandler.src/M000040.html');return false;">
238
- <span class="method-name">reload!</span><span class="method-args">()</span>
239
- </a>
240
- </div>
241
-
242
- <div class="method-description">
243
- <p>
244
- Does the internal reload for <a href="../Rails.html">Rails</a>. It might
245
- work for most cases, but sometimes you get exceptions. In that case just do
246
- a real restart.
247
- </p>
248
- </div>
249
- </div>
250
-
251
-
252
- </div>
253
-
254
-
255
- </div>
256
-
257
-
258
- <div id="validator-badges">
259
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
260
- </div>
261
-
262
- </body>
263
- </html>