freemarker.ext.misc
Class HtmlEscape

java.lang.Object
  |
  +--freemarker.ext.misc.HtmlEscape
All Implemented Interfaces:
TemplateModel, TemplateTransformModel2

public final class HtmlEscape
extends java.lang.Object
implements TemplateTransformModel2

Performs an HTML escape of a given template fragment. Specifically, < > " and & are all turned into entities.

Usage:
From java:

 TemplateModelRoot root = new SimpleHash();

 root.put( "htmlEscape", freemarker.ext.misc.HtmlEscape.getInstance() );

 ...
 

From your FM-Classic template:

 The following is HTML-escaped:
 <transform htmlEscape>
   <p>This paragraph has all HTML special characters escaped.</p>
 </transform>

 ...
 

Note:
HtmlEscape is a singleton instance. Use the getInstance() method to retrieve instances of this model.

Version:
$Id: HtmlEscape.java,v 1.11 2003/11/17 13:06:24 run2000 Exp $
See Also:
XmlEscape

Constructor Summary
HtmlEscape()
          Deprecated. use the getInstance() method to avoid excessive object creation
 
Method Summary
static HtmlEscape getInstance()
          Retrieve a singleton instance of this class.
 boolean isEmpty()
          Is the object empty?
 void transform(java.io.Reader source, java.io.Writer output)
          Transforms an HTML-unescaped stream into HTML-escaped form.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HtmlEscape

public HtmlEscape()
Deprecated. use the getInstance() method to avoid excessive object creation

Creates new HtmlEscape.
Method Detail

getInstance

public static HtmlEscape getInstance()
Retrieve a singleton instance of this class. Since there is no state information held between calls, there is only a need for one instance.
Returns:
an instance of this HtmlEscape class

transform

public void transform(java.io.Reader source,
                      java.io.Writer output)
               throws java.io.IOException,
                      TemplateModelException
Transforms an HTML-unescaped stream into HTML-escaped form. This means: < > & and " are all escaped into their equivalent entities.
Specified by:
transform in interface TemplateTransformModel2
Parameters:
source - the input to be transformed
output - the destination of the transformation

isEmpty

public boolean isEmpty()
                throws TemplateModelException
Is the object empty?
Specified by:
isEmpty in interface TemplateModel
Returns:
false, to indicate this object is not empty