mongrel_esi 0.4.0 → 0.4.1
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.
- data/README +8 -8
- data/Rakefile +4 -12
- data/doc/rdoc/classes/ESI.html +169 -0
- data/doc/rdoc/classes/ESI/Cache.html +178 -0
- data/doc/rdoc/classes/ESI/Cache.src/M000060.html +17 -0
- data/doc/rdoc/classes/ESI/Cache.src/M000061.html +20 -0
- data/doc/rdoc/classes/ESI/Config.html +291 -0
- data/doc/rdoc/classes/ESI/Config.src/M000043.html +18 -0
- data/doc/rdoc/classes/ESI/Config.src/M000044.html +18 -0
- data/doc/rdoc/classes/ESI/Config.src/M000045.html +35 -0
- data/doc/rdoc/classes/ESI/Config.src/M000046.html +38 -0
- data/doc/rdoc/classes/ESI/Config.src/M000047.html +23 -0
- data/doc/rdoc/classes/ESI/Config.src/M000048.html +18 -0
- data/doc/rdoc/classes/ESI/Config.src/M000049.html +20 -0
- data/doc/rdoc/classes/ESI/Config.src/M000050.html +18 -0
- data/doc/rdoc/classes/ESI/Config.src/M000051.html +24 -0
- data/doc/rdoc/classes/ESI/Config/CacheConfig.html +212 -0
- data/doc/rdoc/classes/ESI/Config/CacheConfig.src/M000055.html +19 -0
- data/doc/rdoc/classes/ESI/Config/CacheConfig.src/M000056.html +19 -0
- data/doc/rdoc/classes/ESI/Config/CacheConfig.src/M000057.html +18 -0
- data/doc/rdoc/classes/ESI/Config/CacheConfig.src/M000058.html +18 -0
- data/doc/rdoc/classes/ESI/Config/CacheConfig.src/M000059.html +18 -0
- data/doc/rdoc/classes/ESI/Config/ConfigRouter.html +187 -0
- data/doc/rdoc/classes/ESI/Config/ConfigRouter.src/M000052.html +19 -0
- data/doc/rdoc/classes/ESI/Config/ConfigRouter.src/M000053.html +21 -0
- data/doc/rdoc/classes/ESI/Config/ConfigRouter.src/M000054.html +21 -0
- data/doc/rdoc/classes/ESI/Dispatcher.html +172 -0
- data/doc/rdoc/classes/ESI/Dispatcher.src/M000062.html +23 -0
- data/doc/rdoc/classes/ESI/Dispatcher.src/M000063.html +20 -0
- data/doc/rdoc/classes/ESI/Fragment.html +218 -0
- data/doc/rdoc/classes/ESI/Fragment.src/M000076.html +21 -0
- data/doc/rdoc/classes/ESI/Fragment.src/M000077.html +18 -0
- data/doc/rdoc/classes/ESI/Fragment.src/M000078.html +18 -0
- data/doc/rdoc/classes/ESI/Handler.html +236 -0
- data/doc/rdoc/classes/ESI/Handler.src/M000079.html +19 -0
- data/doc/rdoc/classes/ESI/Handler.src/M000080.html +161 -0
- data/doc/rdoc/classes/ESI/Handler.src/M000081.html +24 -0
- data/doc/rdoc/classes/ESI/Handler.src/M000082.html +18 -0
- data/doc/rdoc/classes/ESI/Handler.src/M000083.html +26 -0
- data/doc/rdoc/classes/ESI/Handler.src/M000084.html +30 -0
- data/doc/rdoc/classes/ESI/Invalidator.html +131 -0
- data/doc/rdoc/classes/ESI/Invalidator.src/M000004.html +41 -0
- data/doc/rdoc/classes/ESI/Log.html +251 -0
- data/doc/rdoc/classes/ESI/Log.src/M000005.html +18 -0
- data/doc/rdoc/classes/ESI/Log.src/M000006.html +18 -0
- data/doc/rdoc/classes/ESI/Log.src/M000007.html +18 -0
- data/doc/rdoc/classes/ESI/Log.src/M000008.html +18 -0
- data/doc/rdoc/classes/ESI/Log.src/M000009.html +18 -0
- data/doc/rdoc/classes/ESI/Log.src/M000010.html +18 -0
- data/doc/rdoc/classes/ESI/Log.src/M000011.html +18 -0
- data/doc/rdoc/classes/ESI/Log.src/M000012.html +18 -0
- data/doc/rdoc/classes/ESI/Log.src/M000013.html +18 -0
- data/doc/rdoc/classes/ESI/MemcachedCache.html +314 -0
- data/doc/rdoc/classes/ESI/MemcachedCache.src/M000034.html +24 -0
- data/doc/rdoc/classes/ESI/MemcachedCache.src/M000035.html +22 -0
- data/doc/rdoc/classes/ESI/MemcachedCache.src/M000036.html +19 -0
- data/doc/rdoc/classes/ESI/MemcachedCache.src/M000037.html +23 -0
- data/doc/rdoc/classes/ESI/MemcachedCache.src/M000038.html +18 -0
- data/doc/rdoc/classes/ESI/MemcachedCache.src/M000039.html +19 -0
- data/doc/rdoc/classes/ESI/MemcachedCache.src/M000040.html +18 -0
- data/doc/rdoc/classes/ESI/MemcachedCache.src/M000041.html +18 -0
- data/doc/rdoc/classes/ESI/MemcachedCache.src/M000042.html +17 -0
- data/doc/rdoc/classes/ESI/Router.html +229 -0
- data/doc/rdoc/classes/ESI/Router.src/M000073.html +36 -0
- data/doc/rdoc/classes/ESI/Router.src/M000074.html +25 -0
- data/doc/rdoc/classes/ESI/Router.src/M000075.html +24 -0
- data/doc/rdoc/classes/ESI/RubyCache.html +278 -0
- data/doc/rdoc/classes/ESI/RubyCache.src/M000064.html +20 -0
- data/doc/rdoc/classes/ESI/RubyCache.src/M000065.html +22 -0
- data/doc/rdoc/classes/ESI/RubyCache.src/M000066.html +21 -0
- data/doc/rdoc/classes/ESI/RubyCache.src/M000067.html +22 -0
- data/doc/rdoc/classes/ESI/RubyCache.src/M000068.html +18 -0
- data/doc/rdoc/classes/ESI/RubyCache.src/M000069.html +22 -0
- data/doc/rdoc/classes/ESI/RubyCache.src/M000070.html +18 -0
- data/doc/rdoc/classes/ESI/RubyCache.src/M000071.html +18 -0
- data/doc/rdoc/classes/ESI/RubyCache.src/M000072.html +18 -0
- data/doc/rdoc/classes/ESI/Tag.html +137 -0
- data/doc/rdoc/classes/ESI/Tag/Attempt.html +113 -0
- data/doc/rdoc/classes/ESI/Tag/Base.html +267 -0
- data/doc/rdoc/classes/ESI/Tag/Base.src/M000028.html +26 -0
- data/doc/rdoc/classes/ESI/Tag/Base.src/M000029.html +23 -0
- data/doc/rdoc/classes/ESI/Tag/Base.src/M000030.html +22 -0
- data/doc/rdoc/classes/ESI/Tag/Base.src/M000031.html +18 -0
- data/doc/rdoc/classes/ESI/Tag/Base.src/M000032.html +22 -0
- data/doc/rdoc/classes/ESI/Tag/Base.src/M000033.html +23 -0
- data/doc/rdoc/classes/ESI/Tag/Except.html +184 -0
- data/doc/rdoc/classes/ESI/Tag/Except.src/M000020.html +21 -0
- data/doc/rdoc/classes/ESI/Tag/Except.src/M000021.html +20 -0
- data/doc/rdoc/classes/ESI/Tag/Except.src/M000022.html +18 -0
- data/doc/rdoc/classes/ESI/Tag/Include.html +189 -0
- data/doc/rdoc/classes/ESI/Tag/Include.src/M000017.html +20 -0
- data/doc/rdoc/classes/ESI/Tag/Include.src/M000018.html +18 -0
- data/doc/rdoc/classes/ESI/Tag/Include.src/M000019.html +125 -0
- data/doc/rdoc/classes/ESI/Tag/IncludeRequest.html +199 -0
- data/doc/rdoc/classes/ESI/Tag/IncludeRequest.src/M000014.html +18 -0
- data/doc/rdoc/classes/ESI/Tag/IncludeRequest.src/M000015.html +42 -0
- data/doc/rdoc/classes/ESI/Tag/IncludeRequest/Error.html +155 -0
- data/doc/rdoc/classes/ESI/Tag/IncludeRequest/Error.src/M000016.html +19 -0
- data/doc/rdoc/classes/ESI/Tag/Invalidate.html +171 -0
- data/doc/rdoc/classes/ESI/Tag/Invalidate.src/M000025.html +19 -0
- data/doc/rdoc/classes/ESI/Tag/Invalidate.src/M000026.html +51 -0
- data/doc/rdoc/classes/ESI/Tag/Invalidate.src/M000027.html +19 -0
- data/doc/rdoc/classes/ESI/Tag/Try.html +161 -0
- data/doc/rdoc/classes/ESI/Tag/Try.src/M000023.html +40 -0
- data/doc/rdoc/classes/ESI/Tag/Try.src/M000024.html +18 -0
- data/doc/rdoc/classes/MultiDirHandler.html +198 -0
- data/doc/rdoc/classes/MultiDirHandler.src/M000001.html +20 -0
- data/doc/rdoc/classes/MultiDirHandler.src/M000002.html +28 -0
- data/doc/rdoc/classes/MultiDirHandler.src/M000003.html +22 -0
- data/doc/rdoc/classes/Net.html +119 -0
- data/doc/rdoc/classes/Net/An.html +114 -0
- data/doc/rdoc/classes/Net/An/HTTP.html +137 -0
- data/doc/rdoc/classes/Net/An/HTTP.src/M000087.html +17 -0
- data/doc/rdoc/classes/Net/An/IORequest.html +139 -0
- data/doc/rdoc/classes/Net/An/IORequest.src/M000088.html +17 -0
- data/doc/rdoc/classes/Net/An/IOResponse.html +139 -0
- data/doc/rdoc/classes/Net/An/IOResponse.src/M000085.html +17 -0
- data/doc/rdoc/classes/Net/An/IOSocket.html +137 -0
- data/doc/rdoc/classes/Net/An/IOSocket.src/M000086.html +17 -0
- data/doc/rdoc/created.rid +1 -0
- data/doc/rdoc/files/COPYING.html +168 -0
- data/doc/rdoc/files/LICENSE.html +605 -0
- data/doc/rdoc/files/README.html +361 -0
- data/doc/rdoc/files/lib/esi/cache_rb.html +113 -0
- data/doc/rdoc/files/lib/esi/config_rb.html +108 -0
- data/doc/rdoc/files/lib/esi/dispatcher_rb.html +109 -0
- data/doc/rdoc/files/lib/esi/handler_rb.html +121 -0
- data/doc/rdoc/files/lib/esi/invalidator_rb.html +117 -0
- data/doc/rdoc/files/lib/esi/logger_rb.html +108 -0
- data/doc/rdoc/files/lib/esi/router_rb.html +101 -0
- data/doc/rdoc/files/lib/esi/tag/attempt_rb.html +101 -0
- data/doc/rdoc/files/lib/esi/tag/base_rb.html +108 -0
- data/doc/rdoc/files/lib/esi/tag/except_rb.html +101 -0
- data/doc/rdoc/files/lib/esi/tag/include_rb.html +109 -0
- data/doc/rdoc/files/lib/esi/tag/invalidate_rb.html +109 -0
- data/doc/rdoc/files/lib/esi/tag/try_rb.html +108 -0
- data/doc/rdoc/files/lib/multi_dirhandler_rb.html +109 -0
- data/doc/rdoc/files/lib/net/ahttp_rb.html +109 -0
- data/doc/rdoc/fr_class_index.html +55 -0
- data/doc/rdoc/fr_file_index.html +44 -0
- data/doc/rdoc/fr_method_index.html +114 -0
- data/doc/rdoc/index.html +24 -0
- data/doc/rdoc/rdoc-style.css +208 -0
- data/ext/esi/esi_parser.c +36 -156
- data/ext/esi/test/parser.c +42 -43
- data/ext/esi/test1.rb +2 -2
- data/lib/esi/cache.rb +83 -72
- data/lib/esi/handler.rb +5 -20
- data/lib/multi_dirhandler.rb +13 -0
- data/lib/net/ahttp.rb +36 -0
- data/test/integration/handler_test.rb +1 -1
- metadata +222 -45
- data/test/unit/sample.html +0 -21
data/README
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
=About
|
|
1
|
+
=About
|
|
2
2
|
MongrelESI is meant to make caching easier by distributing the cache logic.
|
|
3
3
|
|
|
4
4
|
The idea is to represent each part of the page as a unique URL.
|
|
@@ -6,7 +6,7 @@ The idea is to represent each part of the page as a unique URL.
|
|
|
6
6
|
The whole page may not be cachable, but most of it probably is. The cache server works by scanning the requested document for
|
|
7
7
|
specific <esi:* tags before servering the response. MongrelESI currently, only supports a few basic instructions
|
|
8
8
|
|
|
9
|
-
=Tags
|
|
9
|
+
=Tags
|
|
10
10
|
|
|
11
11
|
esi:include:
|
|
12
12
|
src - request path, response replaces esi:include tag
|
|
@@ -37,7 +37,7 @@ esi:try/esi:attempt/esi:except
|
|
|
37
37
|
if any tags within the attempt block raise an exception and the onerror attribute is not equal to continue then
|
|
38
38
|
the server will fall back to the markup within the except block
|
|
39
39
|
|
|
40
|
-
=Proxy Config
|
|
40
|
+
=Proxy Config
|
|
41
41
|
|
|
42
42
|
MongrelESI is a proxy server. To configure where requests should be proxied modify the config/routes.yml file.
|
|
43
43
|
|
|
@@ -99,7 +99,7 @@ And finally, MongrelESI will respond to the original client request with the com
|
|
|
99
99
|
</html>
|
|
100
100
|
|
|
101
101
|
|
|
102
|
-
== Integrating with your applications
|
|
102
|
+
== Integrating with your applications
|
|
103
103
|
|
|
104
104
|
MongrelESI was built to support integrating lots of applications together.
|
|
105
105
|
|
|
@@ -117,7 +117,7 @@ It is also sometimes convenient to allow multiple applications to store or house
|
|
|
117
117
|
needs to know in what directories to search for static files. This can be done by using the MultiDirHandler (see rev-config.rb)
|
|
118
118
|
|
|
119
119
|
|
|
120
|
-
== Supported Features of ESI
|
|
120
|
+
== Supported Features of ESI
|
|
121
121
|
|
|
122
122
|
From [http://www.w3.org/TR/esi-lang esi-lang]
|
|
123
123
|
|
|
@@ -137,19 +137,19 @@ Variable or Conditional processing. It does have suppport for COOKIE variables.
|
|
|
137
137
|
|
|
138
138
|
|
|
139
139
|
|
|
140
|
-
== HTTP Readings
|
|
140
|
+
== HTTP Readings
|
|
141
141
|
|
|
142
142
|
* http://www.jmarshall.com/easy/http/
|
|
143
143
|
|
|
144
144
|
|
|
145
|
-
== Adding New Features and Bug Fixing
|
|
145
|
+
== Adding New Features and Bug Fixing
|
|
146
146
|
|
|
147
147
|
Before adding a new feature or bug fix, it's important to add a test to verify the behavior.
|
|
148
148
|
|
|
149
149
|
Also, help out by keeping the Changelog updated with new features and major bug fixes
|
|
150
150
|
|
|
151
151
|
|
|
152
|
-
== Future ideas of improving integration
|
|
152
|
+
== Future ideas of improving integration
|
|
153
153
|
|
|
154
154
|
NOTE: this is a work in progress, below is how I'd like to integrate with rails in the future
|
|
155
155
|
|
data/Rakefile
CHANGED
|
@@ -32,6 +32,7 @@ setup_extension("esi", "esi")
|
|
|
32
32
|
|
|
33
33
|
task :package => [:clean,:compile,:test,:rerdoc]
|
|
34
34
|
|
|
35
|
+
|
|
35
36
|
namespace :ragel do
|
|
36
37
|
desc 'test the ragel version'
|
|
37
38
|
task :verify do
|
|
@@ -93,7 +94,7 @@ namespace :size do
|
|
|
93
94
|
end
|
|
94
95
|
|
|
95
96
|
name="mongrel_esi"
|
|
96
|
-
version="0.4.
|
|
97
|
+
version="0.4.1"
|
|
97
98
|
|
|
98
99
|
setup_gem(name, version) do |spec|
|
|
99
100
|
spec.summary = "A small fast ESI HTTP Server built on top of Mongrel"
|
|
@@ -127,15 +128,6 @@ task :uninstall => [:clean] do
|
|
|
127
128
|
sh %{gem uninstall #{name}}
|
|
128
129
|
end
|
|
129
130
|
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
mkdir_p "pkg/gems"
|
|
133
|
-
|
|
134
|
-
FileList["**/*.gem"].each { |gem| mv gem, "pkg/gems" }
|
|
135
|
-
FileList["pkg/*.tgz"].each {|tgz| rm tgz }
|
|
136
|
-
rm_rf "pkg/#{name}-#{version}"
|
|
137
|
-
|
|
138
|
-
sh %{ index_gem_repository.rb -d pkg }
|
|
139
|
-
# TODO: setup something like this
|
|
140
|
-
#sh %{ scp -r ChangeLog pkg/* rubyforge.org:/var/www/gforge-projects/mongrel/releases/ }
|
|
131
|
+
task :website => [:rcov, :rdoc] do
|
|
132
|
+
sh %{ scp -r pkg/#{name}-#{version}/doc/rdoc doc/index.html Changelog test/coverage mongrel-esi.rubyforge.org:/var/www/gforge-projects/mongrel-esi/ }
|
|
141
133
|
end
|
|
@@ -0,0 +1,169 @@
|
|
|
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>Module: ESI</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>Module</strong></td>
|
|
53
|
+
<td class="class-name-in-header">ESI</td>
|
|
54
|
+
</tr>
|
|
55
|
+
<tr class="top-aligned-row">
|
|
56
|
+
<td><strong>In:</strong></td>
|
|
57
|
+
<td>
|
|
58
|
+
<a href="../files/lib/esi/dispatcher_rb.html">
|
|
59
|
+
lib/esi/dispatcher.rb
|
|
60
|
+
</a>
|
|
61
|
+
<br />
|
|
62
|
+
<a href="../files/lib/esi/handler_rb.html">
|
|
63
|
+
lib/esi/handler.rb
|
|
64
|
+
</a>
|
|
65
|
+
<br />
|
|
66
|
+
<a href="../files/lib/esi/config_rb.html">
|
|
67
|
+
lib/esi/config.rb
|
|
68
|
+
</a>
|
|
69
|
+
<br />
|
|
70
|
+
<a href="../files/lib/esi/tag/include_rb.html">
|
|
71
|
+
lib/esi/tag/include.rb
|
|
72
|
+
</a>
|
|
73
|
+
<br />
|
|
74
|
+
<a href="../files/lib/esi/tag/attempt_rb.html">
|
|
75
|
+
lib/esi/tag/attempt.rb
|
|
76
|
+
</a>
|
|
77
|
+
<br />
|
|
78
|
+
<a href="../files/lib/esi/tag/invalidate_rb.html">
|
|
79
|
+
lib/esi/tag/invalidate.rb
|
|
80
|
+
</a>
|
|
81
|
+
<br />
|
|
82
|
+
<a href="../files/lib/esi/tag/try_rb.html">
|
|
83
|
+
lib/esi/tag/try.rb
|
|
84
|
+
</a>
|
|
85
|
+
<br />
|
|
86
|
+
<a href="../files/lib/esi/tag/base_rb.html">
|
|
87
|
+
lib/esi/tag/base.rb
|
|
88
|
+
</a>
|
|
89
|
+
<br />
|
|
90
|
+
<a href="../files/lib/esi/tag/except_rb.html">
|
|
91
|
+
lib/esi/tag/except.rb
|
|
92
|
+
</a>
|
|
93
|
+
<br />
|
|
94
|
+
<a href="../files/lib/esi/cache_rb.html">
|
|
95
|
+
lib/esi/cache.rb
|
|
96
|
+
</a>
|
|
97
|
+
<br />
|
|
98
|
+
<a href="../files/lib/esi/router_rb.html">
|
|
99
|
+
lib/esi/router.rb
|
|
100
|
+
</a>
|
|
101
|
+
<br />
|
|
102
|
+
<a href="../files/lib/esi/logger_rb.html">
|
|
103
|
+
lib/esi/logger.rb
|
|
104
|
+
</a>
|
|
105
|
+
<br />
|
|
106
|
+
<a href="../files/lib/esi/invalidator_rb.html">
|
|
107
|
+
lib/esi/invalidator.rb
|
|
108
|
+
</a>
|
|
109
|
+
<br />
|
|
110
|
+
</td>
|
|
111
|
+
</tr>
|
|
112
|
+
|
|
113
|
+
</table>
|
|
114
|
+
</div>
|
|
115
|
+
<!-- banner header -->
|
|
116
|
+
|
|
117
|
+
<div id="bodyContent">
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
<div id="contextContent">
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
</div>
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
</div>
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
<!-- if includes -->
|
|
132
|
+
|
|
133
|
+
<div id="section">
|
|
134
|
+
|
|
135
|
+
<div id="class-list">
|
|
136
|
+
<h3 class="section-bar">Classes and Modules</h3>
|
|
137
|
+
|
|
138
|
+
Module <a href="ESI/Invalidator.html" class="link">ESI::Invalidator</a><br />
|
|
139
|
+
Module <a href="ESI/Log.html" class="link">ESI::Log</a><br />
|
|
140
|
+
Module <a href="ESI/Tag.html" class="link">ESI::Tag</a><br />
|
|
141
|
+
Class <a href="ESI/Cache.html" class="link">ESI::Cache</a><br />
|
|
142
|
+
Class <a href="ESI/Config.html" class="link">ESI::Config</a><br />
|
|
143
|
+
Class <a href="ESI/Dispatcher.html" class="link">ESI::Dispatcher</a><br />
|
|
144
|
+
Class <a href="ESI/Fragment.html" class="link">ESI::Fragment</a><br />
|
|
145
|
+
Class <a href="ESI/Handler.html" class="link">ESI::Handler</a><br />
|
|
146
|
+
Class <a href="ESI/MemcachedCache.html" class="link">ESI::MemcachedCache</a><br />
|
|
147
|
+
Class <a href="ESI/Router.html" class="link">ESI::Router</a><br />
|
|
148
|
+
Class <a href="ESI/RubyCache.html" class="link">ESI::RubyCache</a><br />
|
|
149
|
+
|
|
150
|
+
</div>
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
<!-- if method_list -->
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
</div>
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
<div id="validator-badges">
|
|
165
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
166
|
+
</div>
|
|
167
|
+
|
|
168
|
+
</body>
|
|
169
|
+
</html>
|
|
@@ -0,0 +1,178 @@
|
|
|
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::Cache</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::Cache</td>
|
|
54
|
+
</tr>
|
|
55
|
+
<tr class="top-aligned-row">
|
|
56
|
+
<td><strong>In:</strong></td>
|
|
57
|
+
<td>
|
|
58
|
+
<a href="../../files/lib/esi/cache_rb.html">
|
|
59
|
+
lib/esi/cache.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
|
+
cache interface
|
|
84
|
+
</p>
|
|
85
|
+
<pre>
|
|
86
|
+
all caches store Fragments
|
|
87
|
+
|
|
88
|
+
get - uri,params => Fragment
|
|
89
|
+
|
|
90
|
+
cached? - uri,params => boolean
|
|
91
|
+
|
|
92
|
+
put - uri,params, max_age, body => nil
|
|
93
|
+
|
|
94
|
+
sweep! - tells the cache to expire anything that needs expiring
|
|
95
|
+
|
|
96
|
+
keys - is an optional method for iterating over all keys, may not be exposed by all cache backends
|
|
97
|
+
|
|
98
|
+
delete - key remove the key from the cache
|
|
99
|
+
</pre>
|
|
100
|
+
<p>
|
|
101
|
+
Base <a href="Cache.html">Cache</a> object
|
|
102
|
+
</p>
|
|
103
|
+
|
|
104
|
+
</div>
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
</div>
|
|
108
|
+
|
|
109
|
+
<div id="method-list">
|
|
110
|
+
<h3 class="section-bar">Methods</h3>
|
|
111
|
+
|
|
112
|
+
<div class="name-list">
|
|
113
|
+
<a href="#M000061">cache_key</a>
|
|
114
|
+
<a href="#M000060">new</a>
|
|
115
|
+
</div>
|
|
116
|
+
</div>
|
|
117
|
+
|
|
118
|
+
</div>
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
<!-- if includes -->
|
|
122
|
+
|
|
123
|
+
<div id="section">
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
<!-- if method_list -->
|
|
133
|
+
<div id="methods">
|
|
134
|
+
<h3 class="section-bar">Public Class methods</h3>
|
|
135
|
+
|
|
136
|
+
<div id="method-M000060" class="method-detail">
|
|
137
|
+
<a name="M000060"></a>
|
|
138
|
+
|
|
139
|
+
<div class="method-heading">
|
|
140
|
+
<a href="Cache.src/M000060.html" target="Code" class="method-signature"
|
|
141
|
+
onclick="popupCode('Cache.src/M000060.html');return false;">
|
|
142
|
+
<span class="method-name">new</span><span class="method-args">()</span>
|
|
143
|
+
</a>
|
|
144
|
+
</div>
|
|
145
|
+
|
|
146
|
+
<div class="method-description">
|
|
147
|
+
</div>
|
|
148
|
+
</div>
|
|
149
|
+
|
|
150
|
+
<h3 class="section-bar">Protected Instance methods</h3>
|
|
151
|
+
|
|
152
|
+
<div id="method-M000061" class="method-detail">
|
|
153
|
+
<a name="M000061"></a>
|
|
154
|
+
|
|
155
|
+
<div class="method-heading">
|
|
156
|
+
<a href="Cache.src/M000061.html" target="Code" class="method-signature"
|
|
157
|
+
onclick="popupCode('Cache.src/M000061.html');return false;">
|
|
158
|
+
<span class="method-name">cache_key</span><span class="method-args">( uri, params )</span>
|
|
159
|
+
</a>
|
|
160
|
+
</div>
|
|
161
|
+
|
|
162
|
+
<div class="method-description">
|
|
163
|
+
</div>
|
|
164
|
+
</div>
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
</div>
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
</div>
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
<div id="validator-badges">
|
|
174
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
175
|
+
</div>
|
|
176
|
+
|
|
177
|
+
</body>
|
|
178
|
+
</html>
|
|
@@ -0,0 +1,17 @@
|
|
|
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::Cache)</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/cache.rb, line 52</span>
|
|
14
|
+
52: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>
|
|
15
|
+
53: <span class="ruby-keyword kw">end</span></pre>
|
|
16
|
+
</body>
|
|
17
|
+
</html>
|