org.apache.velocity.app.tools

Class VelocityFormatter

public class VelocityFormatter extends Object

Formatting tool for inserting into the Velocity WebContext. Can format dates or lists of objects.

Here's an example of some uses:

 $formatter.formatShortDate($object.Date)
 $formatter.formatLongDate($db.getRecord(232).getDate())
 $formatter.formatArray($array)
 $formatter.limitLen(30, $object.Description)
 

Version: $Id: VelocityFormatter.java,v 1.9 2003/05/04 17:06:11 geirm Exp $

Author: Sean Legassick Daniel Rall

Nested Class Summary
classVelocityFormatter.VelocityAlternator
Class that returns alternating values in a template.
classVelocityFormatter.VelocityAutoAlternator
As VelocityAlternator, but calls alternate() automatically on rendering in a template.
Field Summary
Contextcontext
NumberFormatnf
Constructor Summary
VelocityFormatter(Context context)
Constructor needs a backpointer to the context.
Method Summary
StringformatArray(Object array)
Formats an array into the form "A, B and C".
StringformatArray(Object array, String delim)
Formats an array into the form "A<delim>B<delim>C".
StringformatArray(Object array, String delim, String finaldelim)
Formats an array into the form "A<delim>B<finaldelim>C".
StringformatLongDate(Date date)
Formats a date in DateFormat.LONG style.
StringformatLongDateTime(Date date)
Formats a date/time in 'long' style.
StringformatShortDate(Date date)
Formats a date in DateFormat.SHORT style.
StringformatShortDateTime(Date date)
Formats a date/time in 'short' style.
StringformatVector(List list)
Formats a vector into the form "A, B and C".
StringformatVector(List list, String delim)
Formats a vector into the form "A<delim>B<delim>C".
StringformatVector(List list, String delim, String finaldelim)
Formats a list into the form "Adelim>B<finaldelim>C".
ObjectisNull(Object o, Object dflt)
Returns a default value if the object passed is null.
StringlimitLen(int maxlen, String string)
Limits 'string' to 'maxlen' characters.
StringlimitLen(int maxlen, String string, String suffix)
Limits 'string' to 'maxlen' character.
StringmakeAlternator(String name, String alt1, String alt2)
Makes an alternator object that alternates between two values.
StringmakeAlternator(String name, String alt1, String alt2, String alt3)
Makes an alternator object that alternates between three values.
StringmakeAlternator(String name, String alt1, String alt2, String alt3, String alt4)
Makes an alternator object that alternates between four values.
StringmakeAutoAlternator(String name, String alt1, String alt2)
Makes an alternator object that alternates between two values automatically.

Field Detail

context

Context context

nf

NumberFormat nf

Constructor Detail

VelocityFormatter

public VelocityFormatter(Context context)
Constructor needs a backpointer to the context.

Parameters: context A Context.

Method Detail

formatArray

public String formatArray(Object array)
Formats an array into the form "A, B and C".

Parameters: array An Object.

Returns: A String.

formatArray

public String formatArray(Object array, String delim)
Formats an array into the form "A<delim>B<delim>C".

Parameters: array An Object. delim A String.

Returns: A String.

formatArray

public String formatArray(Object array, String delim, String finaldelim)
Formats an array into the form "A<delim>B<finaldelim>C".

Parameters: array An Object. delim A String. finalDelim A String.

Returns: A String.

formatLongDate

public String formatLongDate(Date date)
Formats a date in DateFormat.LONG style.

Parameters: date The date to format.

Returns: The formatted date as text.

formatLongDateTime

public String formatLongDateTime(Date date)
Formats a date/time in 'long' style.

Parameters: date The date to format.

Returns: The formatted date as text.

formatShortDate

public String formatShortDate(Date date)
Formats a date in DateFormat.SHORT style.

Parameters: date The date to format.

Returns: The formatted date as text.

formatShortDateTime

public String formatShortDateTime(Date date)
Formats a date/time in 'short' style.

Parameters: date The date to format.

Returns: The formatted date as text.

formatVector

public String formatVector(List list)
Formats a vector into the form "A, B and C".

Parameters: list The list of elements to format.

Returns: A String.

formatVector

public String formatVector(List list, String delim)
Formats a vector into the form "A<delim>B<delim>C".

Parameters: list The list of elements to format. delim A String.

Returns: A String.

formatVector

public String formatVector(List list, String delim, String finaldelim)
Formats a list into the form "Adelim>B<finaldelim>C".

Parameters: list The list of elements to format. delim A String. finalDelim A String.

Returns: A String.

isNull

public Object isNull(Object o, Object dflt)
Returns a default value if the object passed is null.

limitLen

public String limitLen(int maxlen, String string)
Limits 'string' to 'maxlen' characters. If the string gets curtailed, "..." is appended to it.

Parameters: maxlen An int with the maximum length. string A String.

Returns: A String.

limitLen

public String limitLen(int maxlen, String string, String suffix)
Limits 'string' to 'maxlen' character. If the string gets curtailed, 'suffix' is appended to it.

Parameters: maxlen An int with the maximum length. string A String. suffix A String.

Returns: A String.

makeAlternator

public String makeAlternator(String name, String alt1, String alt2)
Makes an alternator object that alternates between two values.

Example usage in a Velocity template:

 <table>
 $formatter.makeAlternator("rowcolor", "#c0c0c0", "#e0e0e0")
 #foreach $item in $items
 #begin
 <tr><td bgcolor="$rowcolor">$item.Name</td></tr>
 $rowcolor.alternate()
 #end
 </table>
 

Parameters: name The name for the alternator int the context. alt1 The first alternate. alt2 The second alternate.

Returns: The newly created instance.

makeAlternator

public String makeAlternator(String name, String alt1, String alt2, String alt3)
Makes an alternator object that alternates between three values.

See Also: VelocityFormatter

makeAlternator

public String makeAlternator(String name, String alt1, String alt2, String alt3, String alt4)
Makes an alternator object that alternates between four values.

See Also: VelocityFormatter

makeAutoAlternator

public String makeAutoAlternator(String name, String alt1, String alt2)
Makes an alternator object that alternates between two values automatically.

See Also: VelocityFormatter

Copyright B) 2002 Apache Software Foundation. All Rights Reserved.