mongrel_esi 0.5.1 → 0.5.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 (179) hide show
  1. data/README +10 -9
  2. data/doc/rdoc/classes/ESI/Cache.html +10 -10
  3. data/doc/rdoc/classes/ESI/Cache.src/{M000085.html → M000087.html} +0 -0
  4. data/doc/rdoc/classes/ESI/Cache.src/{M000086.html → M000088.html} +0 -0
  5. data/doc/rdoc/classes/ESI/Config.html +43 -62
  6. data/doc/rdoc/classes/ESI/Config.src/M000049.html +18 -0
  7. data/doc/rdoc/classes/ESI/Config.src/{M000059.html → M000050.html} +5 -5
  8. data/doc/rdoc/classes/ESI/Config.src/M000051.html +35 -0
  9. data/doc/rdoc/classes/ESI/Config.src/M000052.html +27 -5
  10. data/doc/rdoc/classes/ESI/Config.src/M000053.html +10 -5
  11. data/doc/rdoc/classes/ESI/Config.src/M000054.html +5 -22
  12. data/doc/rdoc/classes/ESI/Config.src/M000055.html +7 -25
  13. data/doc/rdoc/classes/ESI/Config.src/M000056.html +11 -10
  14. data/doc/rdoc/classes/ESI/Config/CacheConfig.html +25 -25
  15. data/doc/rdoc/classes/ESI/Config/CacheConfig.src/{M000068.html → M000060.html} +6 -5
  16. data/doc/rdoc/classes/ESI/Config/CacheConfig.src/{M000065.html → M000061.html} +5 -5
  17. data/doc/rdoc/classes/ESI/Config/CacheConfig.src/{M000066.html → M000062.html} +4 -4
  18. data/doc/rdoc/classes/ESI/Config/CacheConfig.src/{M000067.html → M000063.html} +4 -4
  19. data/doc/rdoc/classes/ESI/Config/CacheConfig.src/M000064.html +5 -6
  20. data/doc/rdoc/classes/ESI/Config/ConfigRouter.html +15 -15
  21. data/doc/rdoc/classes/ESI/Config/ConfigRouter.src/{M000061.html → M000057.html} +5 -5
  22. data/doc/rdoc/classes/ESI/Config/ConfigRouter.src/{M000062.html → M000058.html} +7 -7
  23. data/doc/rdoc/classes/ESI/Config/ConfigRouter.src/{M000063.html → M000059.html} +7 -7
  24. data/doc/rdoc/classes/ESI/Dispatcher.html +17 -15
  25. data/doc/rdoc/classes/ESI/Dispatcher.src/{M000087.html → M000092.html} +4 -7
  26. data/doc/rdoc/classes/ESI/Dispatcher.src/M000093.html +27 -0
  27. data/doc/rdoc/classes/ESI/Fragment.html +15 -15
  28. data/doc/rdoc/classes/ESI/Fragment.src/{M000100.html → M000111.html} +0 -0
  29. data/doc/rdoc/classes/ESI/Fragment.src/{M000101.html → M000112.html} +0 -0
  30. data/doc/rdoc/classes/ESI/Fragment.src/{M000102.html → M000113.html} +0 -0
  31. data/doc/rdoc/classes/ESI/MemcachedCache.html +46 -46
  32. data/doc/rdoc/classes/ESI/MemcachedCache.src/M000037.html +24 -0
  33. data/doc/rdoc/classes/ESI/MemcachedCache.src/M000038.html +22 -0
  34. data/doc/rdoc/classes/ESI/MemcachedCache.src/M000039.html +19 -0
  35. data/doc/rdoc/classes/ESI/MemcachedCache.src/M000040.html +10 -11
  36. data/doc/rdoc/classes/ESI/MemcachedCache.src/M000041.html +5 -9
  37. data/doc/rdoc/classes/ESI/MemcachedCache.src/M000042.html +6 -6
  38. data/doc/rdoc/classes/ESI/MemcachedCache.src/M000043.html +5 -10
  39. data/doc/rdoc/classes/ESI/MemcachedCache.src/M000044.html +5 -5
  40. data/doc/rdoc/classes/ESI/MemcachedCache.src/M000045.html +4 -6
  41. data/doc/rdoc/classes/ESI/OutputAdapter.html +204 -0
  42. data/doc/rdoc/classes/ESI/OutputAdapter.src/M000094.html +37 -0
  43. data/doc/rdoc/classes/ESI/OutputAdapter.src/M000095.html +18 -0
  44. data/doc/rdoc/classes/ESI/OutputAdapter.src/M000096.html +18 -0
  45. data/doc/rdoc/classes/ESI/OutputAdapter.src/M000097.html +18 -0
  46. data/doc/rdoc/classes/ESI/Parser.html +15 -15
  47. data/doc/rdoc/classes/ESI/Parser.src/{M000049.html → M000065.html} +0 -0
  48. data/doc/rdoc/classes/ESI/Parser.src/{M000050.html → M000066.html} +0 -0
  49. data/doc/rdoc/classes/ESI/Parser.src/{M000051.html → M000067.html} +0 -0
  50. data/doc/rdoc/classes/ESI/Processor.html +15 -15
  51. data/doc/rdoc/classes/ESI/Processor.src/{M000037.html → M000046.html} +0 -0
  52. data/doc/rdoc/classes/ESI/Processor.src/{M000038.html → M000047.html} +1 -1
  53. data/doc/rdoc/classes/ESI/Processor.src/{M000039.html → M000048.html} +0 -0
  54. data/doc/rdoc/classes/ESI/Proxy.html +48 -48
  55. data/doc/rdoc/classes/ESI/Proxy.src/M000071.html +7 -40
  56. data/doc/rdoc/classes/ESI/Proxy.src/M000072.html +50 -12
  57. data/doc/rdoc/classes/ESI/Proxy.src/M000073.html +49 -6
  58. data/doc/rdoc/classes/ESI/Proxy.src/M000074.html +11 -14
  59. data/doc/rdoc/classes/ESI/Proxy.src/M000075.html +6 -5
  60. data/doc/rdoc/classes/ESI/Proxy.src/M000076.html +9 -15
  61. data/doc/rdoc/classes/ESI/Proxy.src/M000077.html +5 -16
  62. data/doc/rdoc/classes/ESI/Proxy.src/M000078.html +28 -0
  63. data/doc/rdoc/classes/ESI/Proxy.src/M000079.html +29 -0
  64. data/doc/rdoc/classes/ESI/RackAdapter.html +214 -0
  65. data/doc/rdoc/classes/ESI/RackAdapter.src/M000068.html +18 -0
  66. data/doc/rdoc/classes/ESI/RackAdapter.src/M000069.html +34 -0
  67. data/doc/rdoc/classes/ESI/{MemcachedCache.src/M000048.html → RackAdapter.src/M000070.html} +4 -4
  68. data/doc/rdoc/classes/ESI/RackConfig.html +173 -0
  69. data/doc/rdoc/classes/ESI/RackConfig.src/M000089.html +28 -0
  70. data/doc/rdoc/classes/ESI/RackConfig.src/M000090.html +18 -0
  71. data/doc/rdoc/classes/ESI/RackConfig.src/M000091.html +20 -0
  72. data/doc/rdoc/classes/ESI/Request.html +158 -0
  73. data/doc/rdoc/classes/ESI/{MemcachedCache.src/M000046.html → Request.src/M000098.html} +5 -5
  74. data/doc/rdoc/classes/ESI/Request.src/M000099.html +18 -0
  75. data/doc/rdoc/classes/ESI/Response.html +36 -36
  76. data/doc/rdoc/classes/ESI/Response.src/M000080.html +10 -8
  77. data/doc/rdoc/classes/ESI/Response.src/M000081.html +5 -7
  78. data/doc/rdoc/classes/ESI/Response.src/M000082.html +8 -12
  79. data/doc/rdoc/classes/ESI/Response.src/M000083.html +7 -5
  80. data/doc/rdoc/classes/ESI/Response.src/M000084.html +12 -20
  81. data/doc/rdoc/classes/ESI/Response.src/{M000079.html → M000085.html} +5 -5
  82. data/doc/rdoc/classes/ESI/Response.src/M000086.html +33 -0
  83. data/doc/rdoc/classes/ESI/Router.html +10 -10
  84. data/doc/rdoc/classes/ESI/Router.src/{M000098.html → M000109.html} +0 -0
  85. data/doc/rdoc/classes/ESI/Router.src/{M000099.html → M000110.html} +0 -0
  86. data/doc/rdoc/classes/ESI/RubyCache.html +45 -45
  87. data/doc/rdoc/classes/ESI/RubyCache.src/{M000089.html → M000100.html} +6 -6
  88. data/doc/rdoc/classes/ESI/RubyCache.src/{M000090.html → M000101.html} +6 -6
  89. data/doc/rdoc/classes/ESI/RubyCache.src/{M000091.html → M000102.html} +6 -6
  90. data/doc/rdoc/classes/ESI/RubyCache.src/{M000092.html → M000103.html} +8 -8
  91. data/doc/rdoc/classes/ESI/RubyCache.src/{M000093.html → M000104.html} +4 -4
  92. data/doc/rdoc/classes/ESI/RubyCache.src/{M000094.html → M000105.html} +8 -8
  93. data/doc/rdoc/classes/ESI/RubyCache.src/{M000095.html → M000106.html} +4 -4
  94. data/doc/rdoc/classes/ESI/RubyCache.src/{M000096.html → M000107.html} +4 -4
  95. data/doc/rdoc/classes/ESI/RubyCache.src/{M000097.html → M000108.html} +4 -4
  96. data/doc/rdoc/classes/ESI/Tag.html +8 -8
  97. data/doc/rdoc/created.rid +1 -1
  98. data/doc/rdoc/files/COPYING.html +1 -1
  99. data/doc/rdoc/files/LICENSE.html +1 -1
  100. data/doc/rdoc/files/README.html +12 -10
  101. data/doc/rdoc/files/ext/esi/common_rl.html +1 -1
  102. data/doc/rdoc/files/ext/esi/esi_parser_c.html +1 -1
  103. data/doc/rdoc/files/ext/esi/parser_c.html +1 -1
  104. data/doc/rdoc/files/ext/esi/parser_h.html +1 -1
  105. data/doc/rdoc/files/ext/esi/parser_rl.html +122 -82
  106. data/doc/rdoc/files/ext/esi/test/test_c.html +1 -1
  107. data/doc/rdoc/files/lib/esi/cache_rb.html +2 -1
  108. data/doc/rdoc/files/lib/esi/config_rb.html +2 -1
  109. data/doc/rdoc/files/lib/esi/dispatcher_rb.html +3 -1
  110. data/doc/rdoc/files/lib/esi/invalidator_rb.html +1 -1
  111. data/doc/rdoc/files/lib/esi/logger_rb.html +1 -1
  112. data/doc/rdoc/files/lib/esi/parser_rb.html +1 -1
  113. data/doc/rdoc/files/lib/esi/processor_rb.html +1 -1
  114. data/doc/rdoc/files/lib/esi/proxy_rb.html +2 -2
  115. data/doc/rdoc/files/{ext/esi/test/parser_c.html → lib/esi/rack_adapter_rb.html} +21 -5
  116. data/doc/rdoc/files/lib/esi/response_rb.html +1 -1
  117. data/doc/rdoc/files/lib/esi/router_rb.html +1 -1
  118. data/doc/rdoc/files/lib/esi/tag/attempt_rb.html +1 -1
  119. data/doc/rdoc/files/lib/esi/tag/base_rb.html +1 -1
  120. data/doc/rdoc/files/lib/esi/tag/container_rb.html +1 -1
  121. data/doc/rdoc/files/lib/esi/tag/except_rb.html +1 -1
  122. data/doc/rdoc/files/lib/esi/tag/include_rb.html +1 -1
  123. data/doc/rdoc/files/lib/esi/tag/invalidate_rb.html +1 -1
  124. data/doc/rdoc/files/lib/esi/tag/try_rb.html +1 -1
  125. data/doc/rdoc/files/lib/esi/version_rb.html +1 -1
  126. data/doc/rdoc/files/lib/multi_dirhandler_rb.html +1 -1
  127. data/doc/rdoc/fr_class_index.html +4 -0
  128. data/doc/rdoc/fr_file_index.html +1 -5
  129. data/doc/rdoc/fr_method_index.html +87 -76
  130. data/ext/esi/esi_parser.c +2 -2
  131. data/ext/esi/parser.c +133 -107
  132. data/ext/esi/parser.h +9 -4
  133. data/ext/esi/parser.rl +99 -73
  134. data/ext/esi/test/test.c +11 -6
  135. data/lib/esi/cache.rb +7 -3
  136. data/lib/esi/config.rb +4 -8
  137. data/lib/esi/dispatcher.rb +14 -5
  138. data/lib/esi/processor.rb +1 -1
  139. data/lib/esi/proxy.rb +58 -48
  140. data/lib/esi/rack_adapter.rb +97 -0
  141. data/lib/esi/response.rb +30 -1
  142. data/lib/esi/version.rb +1 -1
  143. data/test/bench-plot.rb +31 -0
  144. data/test/benchmarks/csv-perf-serial0.4 +101 -0
  145. data/test/benchmarks/csv-perf-trunk +101 -0
  146. data/test/benchmarks/perf-serial0.4-n1000-c1.csv +101 -0
  147. data/test/benchmarks/perf-serial0.4-n1000-c2.csv +101 -0
  148. data/test/benchmarks/perf-serial0.4-n1000-c3.csv +101 -0
  149. data/test/benchmarks/perf-serial0.4-n1000-c4.csv +101 -0
  150. data/test/benchmarks/perf-serial0.4-n1000-c5.csv +101 -0
  151. data/test/benchmarks/perf-serial0.4-n1000-c6.csv +101 -0
  152. data/test/benchmarks/perf-serial0.4-n1000-c7.csv +101 -0
  153. data/test/benchmarks/perf-trunk-n1000-c1.csv +101 -0
  154. data/test/benchmarks/perf-trunk-n1000-c2.csv +101 -0
  155. data/test/benchmarks/perf-trunk-n1000-c3.csv +101 -0
  156. data/test/benchmarks/perf-trunk-n1000-c4.csv +101 -0
  157. data/test/benchmarks/perf-trunk-n1000-c5.csv +101 -0
  158. data/test/benchmarks/perf-trunk-n1000-c6.csv +101 -0
  159. data/test/benchmarks/perf-trunk-n1000-c7.csv +101 -0
  160. data/test/load_test.rb +5 -2
  161. data/test/load_test_ab.rb +9 -4
  162. metadata +261 -227
  163. data/doc/rdoc/classes/ESI/Config.src/M000057.html +0 -18
  164. data/doc/rdoc/classes/ESI/Config.src/M000058.html +0 -20
  165. data/doc/rdoc/classes/ESI/Config.src/M000060.html +0 -24
  166. data/doc/rdoc/classes/ESI/Dispatcher.src/M000088.html +0 -18
  167. data/doc/rdoc/classes/ESI/MemcachedCache.src/M000047.html +0 -18
  168. data/doc/rdoc/classes/ESI/Proxy.src/M000069.html +0 -20
  169. data/doc/rdoc/classes/ESI/Proxy.src/M000070.html +0 -55
  170. data/doc/rdoc/classes/ESI/Response.src/M000078.html +0 -23
  171. data/doc/rdoc/files/ext/esi/test/common_rl.html +0 -160
  172. data/doc/rdoc/files/ext/esi/test/parser_h.html +0 -101
  173. data/doc/rdoc/files/ext/esi/test/parser_rl.html +0 -827
  174. data/doc/rdoc/files/ext/esi/test/sp_c.html +0 -101
  175. data/ext/esi/test/common.rl +0 -46
  176. data/ext/esi/test/parser.c +0 -1875
  177. data/ext/esi/test/parser.h +0 -120
  178. data/ext/esi/test/parser.rl +0 -585
  179. data/ext/esi/test/sp.c +0 -125
@@ -5,19 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>put (ESI::MemcachedCache)</title>
8
+ <title>delete (ESI::MemcachedCache)</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/esi/cache.rb, line 122</span>
14
- 122: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">put</span>( <span class="ruby-identifier">uri</span>, <span class="ruby-identifier">params</span>, <span class="ruby-identifier">max_age</span>, <span class="ruby-identifier">body</span> )
15
- 123: <span class="ruby-identifier">fragment</span> = <span class="ruby-constant">Fragment</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">uri</span>,<span class="ruby-identifier">max_age</span>,<span class="ruby-identifier">body</span>)
16
- 124: <span class="ruby-identifier">key</span> = <span class="ruby-identifier">cache_key</span>(<span class="ruby-identifier">uri</span>,<span class="ruby-identifier">params</span>)
17
- 125: <span class="ruby-ivar">@cache</span>.<span class="ruby-identifier">add</span>( <span class="ruby-identifier">key</span>, <span class="ruby-identifier">fragment</span>, <span class="ruby-identifier">fragment</span>.<span class="ruby-identifier">max_age</span> )
18
- 126: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">Object</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">e</span>
19
- 127: <span class="ruby-constant">STDERR</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;error in #{__FILE__}:#{__LINE__}&quot;</span>
20
- 128: <span class="ruby-identifier">log_error</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">message</span>
21
- 129: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/esi/cache.rb, line 145</span>
14
+ 145: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">delete</span>( <span class="ruby-identifier">key</span> )
15
+ 146: <span class="ruby-identifier">delete_unlocked</span>
16
+ 147: <span class="ruby-keyword kw">end</span></pre>
22
17
  </body>
23
18
  </html>
@@ -5,14 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>sweep! (ESI::MemcachedCache)</title>
8
+ <title>delete_unlocked (ESI::MemcachedCache)</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/esi/cache.rb, line 132</span>
14
- 132: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sweep!</span>
15
- 133: <span class="ruby-comment cmt"># TODO: not really a memcached equivalent??</span>
16
- 134: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/esi/cache.rb, line 149</span>
14
+ 149: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">delete_unlocked</span>( <span class="ruby-identifier">key</span> )
15
+ 150: <span class="ruby-ivar">@cache</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">key</span>)
16
+ 151: <span class="ruby-keyword kw">end</span></pre>
17
17
  </body>
18
18
  </html>
@@ -5,15 +5,13 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>keys (ESI::MemcachedCache)</title>
8
+ <title>sweep_unlocked! (ESI::MemcachedCache)</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/esi/cache.rb, line 136</span>
14
- 136: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">keys</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
15
- 137: <span class="ruby-comment cmt"># TODO: can't implement this method directly with memcached, unless we introduce another key</span>
16
- 138: <span class="ruby-comment cmt"># and increase the data, but it is possible...</span>
17
- 139: <span class="ruby-keyword kw">end</span></pre>
13
+ <pre> <span class="ruby-comment cmt"># File lib/esi/cache.rb, line 153</span>
14
+ 153: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sweep_unlocked!</span>
15
+ 154: <span class="ruby-keyword kw">end</span></pre>
18
16
  </body>
19
17
  </html>
@@ -0,0 +1,204 @@
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: ESI::OutputAdapter</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">ESI::OutputAdapter</td>
54
+ </tr>
55
+ <tr class="top-aligned-row">
56
+ <td><strong>In:</strong></td>
57
+ <td>
58
+ <a href="../../files/lib/esi/response_rb.html">
59
+ lib/esi/response.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
+ Object
69
+ </td>
70
+ </tr>
71
+ </table>
72
+ </div>
73
+ <!-- banner header -->
74
+
75
+ <div id="bodyContent">
76
+
77
+
78
+
79
+ <div id="contextContent">
80
+
81
+ <div id="description">
82
+ <p>
83
+ this class allows me to write, &lt;&lt;, or call an object to send it
84
+ bytes, priority being &lt;&lt;, then write, then call
85
+ </p>
86
+
87
+ </div>
88
+
89
+
90
+ </div>
91
+
92
+ <div id="method-list">
93
+ <h3 class="section-bar">Methods</h3>
94
+
95
+ <div class="name-list">
96
+ <a href="#M000097">&lt;&lt;</a>&nbsp;&nbsp;
97
+ <a href="#M000095">&lt;&lt;</a>&nbsp;&nbsp;
98
+ <a href="#M000096">&lt;&lt;</a>&nbsp;&nbsp;
99
+ <a href="#M000094">new</a>&nbsp;&nbsp;
100
+ </div>
101
+ </div>
102
+
103
+ </div>
104
+
105
+
106
+ <!-- if includes -->
107
+
108
+ <div id="section">
109
+
110
+
111
+
112
+
113
+
114
+ <div id="attribute-list">
115
+ <h3 class="section-bar">Attributes</h3>
116
+
117
+ <div class="name-list">
118
+ <table>
119
+ <tr class="top-aligned-row context-row">
120
+ <td class="context-item-name">device</td>
121
+ <td class="context-item-value">&nbsp;[R]&nbsp;</td>
122
+ <td class="context-item-desc"></td>
123
+ </tr>
124
+ </table>
125
+ </div>
126
+ </div>
127
+
128
+
129
+
130
+ <!-- if method_list -->
131
+ <div id="methods">
132
+ <h3 class="section-bar">Public Class methods</h3>
133
+
134
+ <div id="method-M000094" class="method-detail">
135
+ <a name="M000094"></a>
136
+
137
+ <div class="method-heading">
138
+ <a href="OutputAdapter.src/M000094.html" target="Code" class="method-signature"
139
+ onclick="popupCode('OutputAdapter.src/M000094.html');return false;">
140
+ <span class="method-name">new</span><span class="method-args">(output_device)</span>
141
+ </a>
142
+ </div>
143
+
144
+ <div class="method-description">
145
+ </div>
146
+ </div>
147
+
148
+ <h3 class="section-bar">Public Instance methods</h3>
149
+
150
+ <div id="method-M000097" class="method-detail">
151
+ <a name="M000097"></a>
152
+
153
+ <div class="method-heading">
154
+ <a href="OutputAdapter.src/M000097.html" target="Code" class="method-signature"
155
+ onclick="popupCode('OutputAdapter.src/M000097.html');return false;">
156
+ <span class="method-name">&lt;&lt;</span><span class="method-args">(msg)</span>
157
+ </a>
158
+ </div>
159
+
160
+ <div class="method-description">
161
+ </div>
162
+ </div>
163
+
164
+ <div id="method-M000095" class="method-detail">
165
+ <a name="M000095"></a>
166
+
167
+ <div class="method-heading">
168
+ <a href="OutputAdapter.src/M000095.html" target="Code" class="method-signature"
169
+ onclick="popupCode('OutputAdapter.src/M000095.html');return false;">
170
+ <span class="method-name">&lt;&lt;</span><span class="method-args">(msg)</span>
171
+ </a>
172
+ </div>
173
+
174
+ <div class="method-description">
175
+ </div>
176
+ </div>
177
+
178
+ <div id="method-M000096" class="method-detail">
179
+ <a name="M000096"></a>
180
+
181
+ <div class="method-heading">
182
+ <a href="OutputAdapter.src/M000096.html" target="Code" class="method-signature"
183
+ onclick="popupCode('OutputAdapter.src/M000096.html');return false;">
184
+ <span class="method-name">&lt;&lt;</span><span class="method-args">(msg)</span>
185
+ </a>
186
+ </div>
187
+
188
+ <div class="method-description">
189
+ </div>
190
+ </div>
191
+
192
+
193
+ </div>
194
+
195
+
196
+ </div>
197
+
198
+
199
+ <div id="validator-badges">
200
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
201
+ </div>
202
+
203
+ </body>
204
+ </html>
@@ -0,0 +1,37 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>new (ESI::OutputAdapter)</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/esi/response.rb, line 12</span>
14
+ 12: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">output_device</span>)
15
+ 13: <span class="ruby-ivar">@device</span> = <span class="ruby-identifier">output_device</span>
16
+ 14: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@device</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">:&lt;&lt;</span>)
17
+ 15: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">instance_eval</span> <span class="ruby-keyword kw">do</span>
18
+ 16: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">msg</span>)
19
+ 17: <span class="ruby-ivar">@device</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">msg</span>
20
+ 18: <span class="ruby-keyword kw">end</span>
21
+ 19: <span class="ruby-keyword kw">end</span>
22
+ 20: <span class="ruby-keyword kw">elsif</span> <span class="ruby-ivar">@device</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">:write</span>)
23
+ 21: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">instance_eval</span> <span class="ruby-keyword kw">do</span>
24
+ 22: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">msg</span>)
25
+ 23: <span class="ruby-ivar">@device</span>.<span class="ruby-identifier">write</span> <span class="ruby-identifier">msg</span>
26
+ 24: <span class="ruby-keyword kw">end</span>
27
+ 25: <span class="ruby-keyword kw">end</span>
28
+ 26: <span class="ruby-keyword kw">elsif</span> <span class="ruby-ivar">@device</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">:call</span>)
29
+ 27: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">instance_eval</span> <span class="ruby-keyword kw">do</span>
30
+ 28: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">msg</span>)
31
+ 29: <span class="ruby-ivar">@device</span>.<span class="ruby-identifier">call</span> <span class="ruby-identifier">msg</span>
32
+ 30: <span class="ruby-keyword kw">end</span>
33
+ 31: <span class="ruby-keyword kw">end</span>
34
+ 32: <span class="ruby-keyword kw">end</span>
35
+ 33: <span class="ruby-keyword kw">end</span></pre>
36
+ </body>
37
+ </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>&lt;&lt; (ESI::OutputAdapter)</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/esi/response.rb, line 16</span>
14
+ 16: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">msg</span>)
15
+ 17: <span class="ruby-ivar">@device</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">msg</span>
16
+ 18: <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </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>&lt;&lt; (ESI::OutputAdapter)</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/esi/response.rb, line 22</span>
14
+ 22: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">msg</span>)
15
+ 23: <span class="ruby-ivar">@device</span>.<span class="ruby-identifier">write</span> <span class="ruby-identifier">msg</span>
16
+ 24: <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </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>&lt;&lt; (ESI::OutputAdapter)</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/esi/response.rb, line 28</span>
14
+ 28: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">msg</span>)
15
+ 29: <span class="ruby-ivar">@device</span>.<span class="ruby-identifier">call</span> <span class="ruby-identifier">msg</span>
16
+ 30: <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
+ </html>
@@ -88,9 +88,9 @@
88
88
  <h3 class="section-bar">Methods</h3>
89
89
 
90
90
  <div class="name-list">
91
- <a href="#M000051">finish</a>&nbsp;&nbsp;
92
- <a href="#M000049">new</a>&nbsp;&nbsp;
93
- <a href="#M000050">prepare</a>&nbsp;&nbsp;
91
+ <a href="#M000067">finish</a>&nbsp;&nbsp;
92
+ <a href="#M000065">new</a>&nbsp;&nbsp;
93
+ <a href="#M000066">prepare</a>&nbsp;&nbsp;
94
94
  </div>
95
95
  </div>
96
96
 
@@ -125,12 +125,12 @@
125
125
  <div id="methods">
126
126
  <h3 class="section-bar">Public Class methods</h3>
127
127
 
128
- <div id="method-M000049" class="method-detail">
129
- <a name="M000049"></a>
128
+ <div id="method-M000065" class="method-detail">
129
+ <a name="M000065"></a>
130
130
 
131
131
  <div class="method-heading">
132
- <a href="Parser.src/M000049.html" target="Code" class="method-signature"
133
- onclick="popupCode('Parser.src/M000049.html');return false;">
132
+ <a href="Parser.src/M000065.html" target="Code" class="method-signature"
133
+ onclick="popupCode('Parser.src/M000065.html');return false;">
134
134
  <span class="method-name">new</span><span class="method-args">( output, router, cache, max_depth )</span>
135
135
  </a>
136
136
  </div>
@@ -141,12 +141,12 @@
141
141
 
142
142
  <h3 class="section-bar">Public Instance methods</h3>
143
143
 
144
- <div id="method-M000051" class="method-detail">
145
- <a name="M000051"></a>
144
+ <div id="method-M000067" class="method-detail">
145
+ <a name="M000067"></a>
146
146
 
147
147
  <div class="method-heading">
148
- <a href="Parser.src/M000051.html" target="Code" class="method-signature"
149
- onclick="popupCode('Parser.src/M000051.html');return false;">
148
+ <a href="Parser.src/M000067.html" target="Code" class="method-signature"
149
+ onclick="popupCode('Parser.src/M000067.html');return false;">
150
150
  <span class="method-name">finish</span><span class="method-args">()</span>
151
151
  </a>
152
152
  </div>
@@ -155,12 +155,12 @@
155
155
  </div>
156
156
  </div>
157
157
 
158
- <div id="method-M000050" class="method-detail">
159
- <a name="M000050"></a>
158
+ <div id="method-M000066" class="method-detail">
159
+ <a name="M000066"></a>
160
160
 
161
161
  <div class="method-heading">
162
- <a href="Parser.src/M000050.html" target="Code" class="method-signature"
163
- onclick="popupCode('Parser.src/M000050.html');return false;">
162
+ <a href="Parser.src/M000066.html" target="Code" class="method-signature"
163
+ onclick="popupCode('Parser.src/M000066.html');return false;">
164
164
  <span class="method-name">prepare</span><span class="method-args">( request_params, http_params )</span>
165
165
  </a>
166
166
  </div>
@@ -86,9 +86,9 @@
86
86
  <h3 class="section-bar">Methods</h3>
87
87
 
88
88
  <div class="name-list">
89
- <a href="#M000037">new</a>&nbsp;&nbsp;
90
- <a href="#M000038">send_body</a>&nbsp;&nbsp;
91
- <a href="#M000039">send_chunk</a>&nbsp;&nbsp;
89
+ <a href="#M000046">new</a>&nbsp;&nbsp;
90
+ <a href="#M000047">send_body</a>&nbsp;&nbsp;
91
+ <a href="#M000048">send_chunk</a>&nbsp;&nbsp;
92
92
  </div>
93
93
  </div>
94
94
 
@@ -135,12 +135,12 @@
135
135
  <div id="methods">
136
136
  <h3 class="section-bar">Public Class methods</h3>
137
137
 
138
- <div id="method-M000037" class="method-detail">
139
- <a name="M000037"></a>
138
+ <div id="method-M000046" class="method-detail">
139
+ <a name="M000046"></a>
140
140
 
141
141
  <div class="method-heading">
142
- <a href="Processor.src/M000037.html" target="Code" class="method-signature"
143
- onclick="popupCode('Processor.src/M000037.html');return false;">
142
+ <a href="Processor.src/M000046.html" target="Code" class="method-signature"
143
+ onclick="popupCode('Processor.src/M000046.html');return false;">
144
144
  <span class="method-name">new</span><span class="method-args">( config, router, cache_buffer = nil )</span>
145
145
  </a>
146
146
  </div>
@@ -151,12 +151,12 @@
151
151
 
152
152
  <h3 class="section-bar">Public Instance methods</h3>
153
153
 
154
- <div id="method-M000038" class="method-detail">
155
- <a name="M000038"></a>
154
+ <div id="method-M000047" class="method-detail">
155
+ <a name="M000047"></a>
156
156
 
157
157
  <div class="method-heading">
158
- <a href="Processor.src/M000038.html" target="Code" class="method-signature"
159
- onclick="popupCode('Processor.src/M000038.html');return false;">
158
+ <a href="Processor.src/M000047.html" target="Code" class="method-signature"
159
+ onclick="popupCode('Processor.src/M000047.html');return false;">
160
160
  <span class="method-name">send_body</span><span class="method-args">( http_request, params, http_response, proxy_response )</span>
161
161
  </a>
162
162
  </div>
@@ -165,12 +165,12 @@
165
165
  </div>
166
166
  </div>
167
167
 
168
- <div id="method-M000039" class="method-detail">
169
- <a name="M000039"></a>
168
+ <div id="method-M000048" class="method-detail">
169
+ <a name="M000048"></a>
170
170
 
171
171
  <div class="method-heading">
172
- <a href="Processor.src/M000039.html" target="Code" class="method-signature"
173
- onclick="popupCode('Processor.src/M000039.html');return false;">
172
+ <a href="Processor.src/M000048.html" target="Code" class="method-signature"
173
+ onclick="popupCode('Processor.src/M000048.html');return false;">
174
174
  <span class="method-name">send_chunk</span><span class="method-args">()</span>
175
175
  </a>
176
176
  </div>