Class FormattingDecimalConvertor

  extended by org.apache.cocoon.woody.datatype.convertor.FormattingDecimalConvertor
All Implemented Interfaces:
Direct Known Subclasses:
FormattingIntegerConvertor, FormattingLongConvertor

public class FormattingDecimalConvertor
extends Object
implements Convertor

A Convertor for BigDecimals backed by the DecimalFormat class.

It can be configured to use one of these variants: integer, number, currency or percent.

Alternatively, a formatting pattern can be used. This can either be a locale-dependent or locale-independent formatting pattern. When looking up a formatting pattern, a mechansim similar to resource bundle lookup is used. Suppose the locale is nl-BE, then first a formatting pattern for nl-BE will be sought, then one for nl, and if that is not found, finally the locale-independent formatting pattern will be used.

Note: the earlier statement about the fact that this class uses java.text.DecimalFormat is not entirely correct. In fact, it uses a small wrapper class that will either delegate to java.text.DecimalFormat or The version will automatically be used if it is present on the classpath, otherwise the java.text version will be used.

CVS $Id: FormattingDecimalConvertor.html 1304258 2012-03-23 10:09:27Z ilgrosso $

Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.cocoon.woody.datatype.convertor.Convertor
Field Summary
static int CURRENCY
static int INTEGER
static int NUMBER
static int PERCENT
Constructor Summary
Method Summary
 void addFormattingPattern(Locale locale, String pattern)
 Object convertFromString(String value, Locale locale, Convertor.FormatCache formatCache)
          Converts string representation into the object of convertor's type.
 String convertToString(Object value, Locale locale, Convertor.FormatCache formatCache)
protected  DecimalFormat getDecimalFormat(Locale locale, Convertor.FormatCache formatCache)
protected  int getDefaultVariant()
 Class getTypeClass()
 void setNonLocalizedPattern(String pattern)
 void setVariant(int variant)
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Detail


public static final int INTEGER
See Also:
Constant Field Values


public static final int NUMBER
See Also:
Constant Field Values


public static final int CURRENCY
See Also:
Constant Field Values


public static final int PERCENT
See Also:
Constant Field Values
Constructor Detail


public FormattingDecimalConvertor()
Method Detail


protected int getDefaultVariant()


public Object convertFromString(String value,
                                Locale locale,
                                Convertor.FormatCache formatCache)
Description copied from interface: Convertor
Converts string representation into the object of convertor's type. Returns null if conversion fails.

Specified by:
convertFromString in interface Convertor
formatCache - can be null if not needed


public String convertToString(Object value,
                              Locale locale,
                              Convertor.FormatCache formatCache)
Specified by:
convertToString in interface Convertor


protected final DecimalFormat getDecimalFormat(Locale locale,
                                               Convertor.FormatCache formatCache)


public void setVariant(int variant)


public void addFormattingPattern(Locale locale,
                                 String pattern)


public void setNonLocalizedPattern(String pattern)


public Class getTypeClass()
Specified by:
getTypeClass in interface Convertor

Copyright © 1999-2010 The Apache Software Foundation. All Rights Reserved.