freemarker.ext.misc
Class CompressWhitespace

java.lang.Object
  extended by freemarker.ext.misc.CompressWhitespace
All Implemented Interfaces:
TemplateModel, TemplateTransformModel2, java.io.Serializable

public final class CompressWhitespace
extends java.lang.Object
implements TemplateTransformModel2, java.io.Serializable

A transform model that compresses each occurrence of consecutive whitespace down to a single space character. Leading and trailing whitespace is also removed.

Usage:
From java:

 TemplateModelRoot root = new SimpleHash();

 root.put( "compressWhitespace", freemarker.ext.misc.CompressWhitespace.getInstance() );

 ...
 

From your FM-Classic template:

 The following is compressed:
 <transform compressWhitespace>
   <p>This paragraph has all whitespace reduced to a single
   space character.</p>
 </transform>

 ...
 

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

Version:
$Id: CompressWhitespace.java 1105 2013-04-09 10:52:59Z run2000 $
See Also:
LegacyCompress, CompressLines, Serialized Form

Method Summary
static CompressWhitespace getInstance()
          Retrieve a singleton instance of this class.
 boolean isEmpty()
          Is the object empty?
 void transform(java.io.Reader source, java.io.Writer output)
          Compresses whitespace within the marked portion of a FreeMarker template.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getInstance

public static CompressWhitespace 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 CompressWhitespace class

transform

public void transform(java.io.Reader source,
                      java.io.Writer output)
               throws java.io.IOException,
                      TemplateModelException
Compresses whitespace within the marked portion of a FreeMarker template.

Specified by:
transform in interface TemplateTransformModel2
Parameters:
source - the input to be transformed
output - the destination of the transformation
Throws:
java.io.IOException
TemplateModelException

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
Throws:
TemplateModelException