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

## org.apache.commons.validator.routines
Class AbstractNumberValidator

    java.lang.Object
      |
      +--org.apache.commons.validator.routines.AbstractFormatValidator
            |
            +--org.apache.commons.validator.routines.AbstractNumberValidator

All Implemented Interfaces:
  java.io.Serializable

Direct Known Subclasses:
  BigDecimalValidator, BigIntegerValidator, ByteValidator, DoubleValidator, FloatValidator, IntegerValidator, LongValidator, ShortValidator

public abstract class AbstractNumberValidator
extends AbstractFormatValidator

Abstract class for Number Validation.

This is a base class for building Number Validators using format parsing.

Since:
  Validator 1.3.0
Version:
  $Revision: 478334 $ $Date: 2006-11-22 21:31:54 +0000 (Wed, 22 Nov 2006) $
See Also:
  Serialized Form

Field Summary
`static int` | `CURRENCY_FORMAT` Currency `NumberFormat` type
`static int` | `PERCENT_FORMAT` Percent `NumberFormat` type
`static int` | `STANDARD_FORMAT` Standard `NumberFormat` type

Constructor Summary
`AbstractNumberValidator(boolean strict, int formatType, boolean allowFractions)` Construct an instance with specified strict and decimal parameters.

Method Summary
`protected int` | `determineScale(java.text.NumberFormat format)` Returns the multiplier of the `NumberFormat`.
`protected java.text.Format` | `getFormat(java.util.Locale locale)` Returns a `NumberFormat` for the specified Locale.
`protected java.text.Format` | `getFormat(java.lang.String pattern, java.util.Locale locale)` Returns a `NumberFormat` for the specified pattern and/or `Locale`.
`int` | `getFormatType()` Indicates the type of `NumberFormat` created by this validator instance.
`boolean` | `isAllowFractions()` Indicates whether the number being validated is a decimal or integer.
`boolean` | `isInRange(java.lang.Number value, java.lang.Number min, java.lang.Number max)` Check if the value is within a specified range.
`boolean` | `isValid(java.lang.String value, java.lang.String pattern, java.util.Locale locale)` Validate using the specified `Locale`.
`boolean` | `maxValue(java.lang.Number value, java.lang.Number max)` Check if the value is less than or equal to a maximum.
`boolean` | `minValue(java.lang.Number value, java.lang.Number min)` Check if the value is greater than or equal to a minimum.
`protected java.lang.Object` | `parse(java.lang.String value, java.lang.String pattern, java.util.Locale locale)` Parse the value using the specified pattern.
`protected abstract java.lang.Object` | `processParsedValue(java.lang.Object value, java.text.Format formatter)` Process the parsed value, performing any further validation and type conversion required.

Methods inherited from class org.apache.commons.validator.routines.AbstractFormatValidator
`format, format, format, format, format, isStrict, isValid, isValid, isValid, parse`

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

Field Detail

### STANDARD_FORMAT

    public static final int STANDARD_FORMAT

  Standard `NumberFormat` type

### CURRENCY_FORMAT

    public static final int CURRENCY_FORMAT

  Currency `NumberFormat` type

### PERCENT_FORMAT

    public static final int PERCENT_FORMAT

  Percent `NumberFormat` type

Constructor Detail

### AbstractNumberValidator

    public AbstractNumberValidator(boolean strict,
                                   int formatType,
                                   boolean allowFractions)

  Construct an instance with specified strict and decimal parameters.
  Parameters:
    `strict` - `true` if strict `Format` parsing should be used.
    `formatType` - The `NumberFormat` type to create for validation, default is STANDARD_FORMAT.
    `allowFractions` - `true` if fractions are allowed or `false` if integers only.

Method Detail

### isAllowFractions

    public boolean isAllowFractions()

  Indicates whether the number being validated is a decimal or integer.

  Returns:
    `true` if decimals are allowed or `false` if the number is an integer.

### getFormatType

    public int getFormatType()

  Indicates the type of `NumberFormat` created by this validator instance.

  Returns:
    the format type created.

### isValid

    public boolean isValid(java.lang.String value,
                           java.lang.String pattern,
                           java.util.Locale locale)

  Validate using the specified `Locale`.

  Overrides:
    `isValid` in class `AbstractFormatValidator`
  Parameters:
    `value` - The value validation is being performed on.
    `pattern` - The pattern used to validate the value against, or the default for the `Locale` if `null`.
    `locale` - The locale to use for the date format, system default if null.
  Returns:
    `true` if the value is valid.

### isInRange

    public boolean isInRange(java.lang.Number value,
                             java.lang.Number min,
                             java.lang.Number max)

  Check if the value is within a specified range.
  Parameters:
    `value` - The value validation is being performed on.
    `min` - The minimum value of the range.
    `max` - The maximum value of the range.
  Returns:
    `true` if the value is within the specified range.

### minValue

    public boolean minValue(java.lang.Number value,
                            java.lang.Number min)

  Check if the value is greater than or equal to a minimum.
  Parameters:
    `value` - The value validation is being performed on.
    `min` - The minimum value.
  Returns:
    `true` if the value is greater than or equal to the minimum.

### maxValue

    public boolean maxValue(java.lang.Number value,
                            java.lang.Number max)

  Check if the value is less than or equal to a maximum.
  Parameters:
    `value` - The value validation is being performed on.
    `max` - The maximum value.
  Returns:
    `true` if the value is less than or equal to the maximum.

### parse

    protected java.lang.Object parse(java.lang.String value,
                                     java.lang.String pattern,
                                     java.util.Locale locale)

  Parse the value using the specified pattern.

  Parameters:
    `value` - The value validation is being performed on.
    `pattern` - The pattern used to validate the value against, or the default for the `Locale` if `null`.
    `locale` - The locale to use for the date format, system default if null.
  Returns:
    The parsed value if valid or `null` if invalid.

### processParsedValue

    protected abstract java.lang.Object processParsedValue(java.lang.Object value,
                                                           java.text.Format formatter)

  Process the parsed value, performing any further validation and type conversion required.

  Overrides:
    `processParsedValue` in class `AbstractFormatValidator`
  Parameters:
    `value` - The parsed object created.
    `formatter` - The Format used to parse the value with.
  Returns:
    The parsed value converted to the appropriate type if valid or `null` if invalid.

### getFormat

    protected java.text.Format getFormat(java.lang.String pattern,
                                         java.util.Locale locale)

  Returns a `NumberFormat` for the specified pattern and/or `Locale`.

  Overrides:
    `getFormat` in class `AbstractFormatValidator`
  Parameters:
    `pattern` - The pattern used to validate the value against or `null` to use the default for the `Locale`.
    `locale` - The locale to use for the currency format, system default if null.
  Returns:
    The `NumberFormat` to created.

### determineScale

    protected int determineScale(java.text.NumberFormat format)

  Returns the multiplier of the `NumberFormat`.

  Parameters:
    `format` - The `NumberFormat` to determine the multiplier of.
  Returns:
    The multiplying factor for the format..

### getFormat

    protected java.text.Format getFormat(java.util.Locale locale)

  Returns a `NumberFormat` for the specified Locale.

  Parameters:
    `locale` - The locale a `NumberFormat` is required for, system default if null.
  Returns:
    The `NumberFormat` to created.

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

Copyright © 2002-2006 The Apache Software Foundation. All Rights Reserved.