freemarker.template.utility

Class StandardCompress

Implemented Interfaces:
TemplateModel, TemplateTransformModel

public class StandardCompress
extends java.lang.Object
implements TemplateTransformModel

A filter that compresses each sequence of consecutive whitespace to a single line break (if the sequence contains a line break) or a single space. In addition, leading and trailing whitespace is completely removed.

Specify the transform parameter single_line = true to always compress to a single space instead of a line break.

The default buffer size can be overridden by specifying a buffer_size transform parameter (in bytes).

Note: The compress tag is implemented using this filter

Usage:
From java:

 SimpleHash root = new SimpleHash();

 root.put( "standardCompress", new freemarker.template.utility.StandardCompress() );

 ...
 

From your FreeMarker template:

 <transform standardCompress>
   <p>This    paragraph will have
       extraneous

 whitespace removed.</p>
 </transform>
 

Output:

 <p>This paragraph will have
 extraneous
 whitespace removed.</p>
 
Version:
$Id: StandardCompress.java,v 1.14 2004/01/06 17:06:43 szegedia Exp $

Field Summary

static StandardCompress
INSTANCE

Fields inherited from interface freemarker.template.TemplateModel

NOTHING

Constructor Summary

StandardCompress()
StandardCompress(int defaultBufferSize)

Method Summary

Writer
getWriter(Writer out, Map args)

Field Details

INSTANCE

public static final StandardCompress INSTANCE

Constructor Details

StandardCompress

public StandardCompress()

StandardCompress

public StandardCompress(int defaultBufferSize)
Parameters:
defaultBufferSize - the default amount of characters to buffer

Method Details

getWriter

public Writer getWriter(Writer out,
                        Map args)
            throws TemplateModelException
Specified by:
getWriter in interface TemplateTransformModel