Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.beanutils.converters
Class NumberConverter

    java.lang.Object
      org.apache.commons.beanutils.converters.AbstractConverter
          org.apache.commons.beanutils.converters.NumberConverter

All Implemented Interfaces:
  Converter

Direct Known Subclasses:
  BigDecimalConverter, BigIntegerConverter, ByteConverter, DoubleConverter, FloatConverter, IntegerConverter, LongConverter, ShortConverter

    public abstract class NumberConverter

extends AbstractConverter

`Converter` implementaion that handles conversion to and from java.lang.Number objects.

This implementation handles conversion for the following `java.lang.Number` types.

- `java.lang.Byte`
- `java.lang.Short`
- `java.lang.Integer`
- `java.lang.Long`
- `java.lang.Float`
- `java.lang.Double`
- `java.math.BigDecimal`
- `java.math.BigInteger`

### String Conversions (to and from)

This class provides a number of ways in which number conversions to/from Strings can be achieved:

- Using the default format for the default Locale, configure using:

- `setUseLocaleFormat(true)`

- Using the default format for a specified Locale, configure using:

- `setLocale(Locale)`

- Using a specified pattern for the default Locale, configure using:

- `setPattern(String)`

- Using a specified pattern for a specified Locale, configure using:

- `setPattern(String)`
- `setLocale(Locale)`

- If none of the above are configured the `toNumber(String)` method is used to convert from String to Number and the Number's `toString()` method used to convert from Number to String.

N.B.Patterns can only be specified used the standard pattern characters and NOT in localized form (see `java.text.SimpleDateFormat`). For example to cater for number styles used in Germany such as `0.000,00` the pattern is specified in the normal form `0,000.00` and the locale set to `Locale.GERMANY`.

Since:
  1.8.0
Version:
  $Revision: 745081 $ $Date: 2009-02-17 14:05:20 +0000 (Tue, 17 Feb 2009) $

Constructor Summary
`NumberConverter(boolean allowDecimals)` Construct a java.lang.Number Converter that throws a `ConversionException` if a error occurs.
`NumberConverter(boolean allowDecimals, Object defaultValue)` Construct a `java.lang.Number` Converter that returns a default value if an error occurs.

Method Summary
`protected String` | `convertToString(Object value)` Convert an input Number object into a String.
`protected Object` | `convertToType(Class targetType, Object value)` Convert the input object into a Number object of the specified type.
`Locale` | `getLocale()` Return the Locale for the Converter (or `null` if none specified).
`String` | `getPattern()` Return the number format pattern used to convert Numbers to/from a `java.lang.String` (or `null` if none specified).
`boolean` | `isAllowDecimals()` Return whether decimals are allowed in the number.
`void` | `setLocale(Locale locale)` Set the Locale for the Converter.
`void` | `setPattern(String pattern)` Set a number format pattern to use to convert Numbers to/from a `java.lang.String`.
`void` | `setUseLocaleFormat(boolean useLocaleFormat)` Set whether a format should be used to convert the Number.
`String` | `toString()` Provide a String representation of this number converter.

Methods inherited from class org.apache.commons.beanutils.converters.AbstractConverter
`convert, convertArray, getDefault, getDefaultType, handleError, handleMissing, isUseDefault, setDefaultValue`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### NumberConverter

    public NumberConverter(boolean allowDecimals)

  Construct a java.lang.Number Converter that throws a `ConversionException` if a error occurs.

  Parameters:
    `allowDecimals` - Indicates whether decimals are allowed

### NumberConverter

    public NumberConverter(boolean allowDecimals,
                           Object defaultValue)

  Construct a `java.lang.Number` Converter that returns a default value if an error occurs.

  Parameters:
    `allowDecimals` - Indicates whether decimals are allowed
    `defaultValue` - The default value to be returned

Method Detail

### isAllowDecimals

    public boolean isAllowDecimals()

  Return whether decimals are allowed in the number.

  Returns:
    Whether decimals are allowed in the number

### setUseLocaleFormat

    public void setUseLocaleFormat(boolean useLocaleFormat)

  Set whether a format should be used to convert the Number.

  Parameters:
    `useLocaleFormat` - `true` if a number format should be used.

### getPattern

    public String getPattern()

  Return the number format pattern used to convert Numbers to/from a `java.lang.String` (or `null` if none specified).

  See `java.text.SimpleDateFormat` for details of how to specify the pattern.

  Returns:
    The format pattern.

### setPattern

    public void setPattern(String pattern)

  Set a number format pattern to use to convert Numbers to/from a `java.lang.String`.

  See `java.text.SimpleDateFormat` for details of how to specify the pattern.

  Parameters:
    `pattern` - The format pattern.

### getLocale

    public Locale getLocale()

  Return the Locale for the Converter (or `null` if none specified).

  Returns:
    The locale to use for conversion

### setLocale

    public void setLocale(Locale locale)

  Set the Locale for the Converter.

  Parameters:
    `locale` - The locale to use for conversion

### convertToString

    protected String convertToString(Object value)
                              throws Throwable

  Convert an input Number object into a String.

  Overrides:
    `convertToString` in class `AbstractConverter`
  Parameters:
    `value` - The input value to be converted
  Returns:
    the converted String value.
  Throws:
    `Throwable` - if an error occurs converting to a String

### convertToType

    protected Object convertToType(Class targetType,
                                   Object value)
                            throws Throwable

  Convert the input object into a Number object of the specified type.

  Specified by:
    `convertToType` in class `AbstractConverter`
  Parameters:
    `targetType` - Data type to which this value should be converted.
    `value` - The input value to be converted.
  Returns:
    The converted value.
  Throws:
    `Throwable` - if an error occurs converting to the specified type

### toString

    public String toString()

  Provide a String representation of this number converter.

  Overrides:
    `toString` in class `AbstractConverter`
  Returns:
    A String representation of this number converter

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000-2009 The Apache Software Foundation. All Rights Reserved.