sunlabs.brazil.template
Class ModifiedTemplate

java.lang.Object
  extended by sunlabs.brazil.template.Template
      extended by sunlabs.brazil.template.ModifiedTemplate (view source)
All Implemented Interfaces:
Serializable, TemplateInterface

public class ModifiedTemplate
extends Template
implements Serializable

Template class for computing last-modified times for content that is processed through templates.

For traditional web content that is stored in a file, it is easy to keep track of the last time the content changed, simply by looking at the modify-time attribute of the file. Many browsers (and caches) use this information, obtained from the last-modified http header to determine whether to use an existing copy of the document, or a cached copy.

When the content is dynamically transformed, however, the last modified time is more complex: a combination of the original file modification time combined with the last change made to the transformation parameters.

A new HTML tag, <modified> is defined, and is intended to be used in conjunction with the BSLTemplate. When present in a page, the last-modified time of the transformation is set to the server's current time. When the content is delivered to the client, the last-modified header is set to the more recent of the origin last-modified time and the transformation modified time.

Properties:

debug
If this configuration parameter is present, modified tag is replaced by a comment. Otherwise it is removed from the document.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class sunlabs.brazil.template.Template
debug
 
Constructor Summary
ModifiedTemplate()
           
 
Method Summary
 boolean done(RewriteContext hr)
          Compute the http last modified value by comparing the origin last-modified value (if any) with the transform value
 void tag_modified(RewriteContext hr)
          Set the content transformation modifiy time to NOW
 
Methods inherited from class sunlabs.brazil.template.Template
init
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ModifiedTemplate

public ModifiedTemplate()
Method Detail

tag_modified

public void tag_modified(RewriteContext hr)
Set the content transformation modifiy time to NOW


done

public boolean done(RewriteContext hr)
Compute the http last modified value by comparing the origin last-modified value (if any) with the transform value

Specified by:
done in interface TemplateInterface
Overrides:
done in class Template

Version Kenai-svn-r24, Generated 08/18/09
Copyright (c) 2001-2009, Sun Microsystems.