org.apache.cocoon.acting
Class HttpCacheAction
java.lang.Object
org.apache.cocoon.util.AbstractLogEnabled
org.apache.cocoon.acting.AbstractAction
org.apache.cocoon.acting.AbstractConfigurableAction
org.apache.cocoon.acting.HttpCacheAction
- All Implemented Interfaces:
- org.apache.cocoon.acting.Action, Configurable, ThreadSafe
- public class HttpCacheAction
- extends org.apache.cocoon.acting.AbstractConfigurableAction
- implements ThreadSafe
This action adds the Last-Modified, Expires and
Cache-Control HTTP headers to the response.
This action will add the Last-Modified header to the response
with the time in which the request was executed, and an Expires
header at a specified time difference. Additionally, it will provide an
extra Cache-Control indicating the maximum age of the request
as a delta between the expiration and last modification dates.
This is useful (for example) when Cocoon is proxyied by a Web Server such
as Apache HTTPD running mod_cache, to indicate for each request how long
the output should be cached for.
To configure the difference between Last-Modified and
Expires this Action can be configured specifying
days, hours, minutes, and seconds in this way:
<map:action>s
<map:action name="xyz" src="org.apache.cocoon.acting.HttpCacheAction>"
<days>1</day>s
<hours>2</hour>s
<minutes>3</minute>s
<seconds>4</second>s
</map:actio>n
</map:action>s
Using this example configuration, the Expires header will
specify a date one day, two hours, three minutes and four seconds after
the time of the request (which will be in Last-Modified).
Note that if any of the parameters mentioned above is zero or
less than zero this action will modify the behaviour of the
resulting Cache-Control header to emit the keyword
no-cache.
This action will also return the three headers it added as sitemap
parameters called last-modified, expires and
cache-control (all lowercase).
- Version:
- $Id: HttpCacheAction.java 607378 2007-12-29 05:36:16Z vgritsenko $
| Fields inherited from class org.apache.cocoon.acting.AbstractConfigurableAction |
settings |
| Fields inherited from class org.apache.cocoon.acting.AbstractAction |
EMPTY_MAP |
| Fields inherited from interface org.apache.cocoon.acting.Action |
ROLE |
| Methods inherited from class org.apache.cocoon.util.AbstractLogEnabled |
getLogger, setLogger |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
HttpCacheAction
public HttpCacheAction()
configure
public void configure(Configuration configuration)
throws ConfigurationException
- Specified by:
configure in interface Configurable
- Throws:
ConfigurationException
act
public Map act(org.apache.cocoon.environment.Redirector redirector,
org.apache.cocoon.environment.SourceResolver resolver,
Map objectModel,
String source,
Parameters parameters)
throws Exception
- Specified by:
act in interface org.apache.cocoon.acting.Action
- Throws:
Exception
Copyright © 1999-2008 The Apache Software Foundation. All Rights Reserved.