org.apache.commons.validator.routines

Class AbstractFormatValidator

public abstract class AbstractFormatValidator extends Object implements Serializable

Abstract class for Format based Validation.

This is a base class for building Date and 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) $

Field Summary
booleanstrict
Constructor Summary
AbstractFormatValidator(boolean strict)
Construct an instance with the specified strict setting.
Method Summary
Stringformat(Object value)

Format an object into a String using the default Locale.

Stringformat(Object value, String pattern)

Format an object into a String using the specified pattern.

Stringformat(Object value, Locale locale)

Format an object into a String using the specified Locale.

Stringformat(Object value, String pattern, Locale locale)

Format an object using the specified pattern and/or Locale.

protected Stringformat(Object value, Format formatter)

Format a value with the specified Format.

protected abstract FormatgetFormat(String pattern, Locale locale)

Returns a Format for the specified pattern and/or Locale.

booleanisStrict()

Indicates whether validated values should adhere strictly to the Format used.

Typically implementations of Format ignore invalid characters at the end of the value and just stop parsing.

booleanisValid(String value)

Validate using the default Locale.

booleanisValid(String value, String pattern)

Validate using the specified pattern.

booleanisValid(String value, Locale locale)

Validate using the specified Locale.

abstract booleanisValid(String value, String pattern, Locale locale)

Validate using the specified pattern and/or Locale.

protected Objectparse(String value, Format formatter)

Parse the value with the specified Format.

protected abstract ObjectprocessParsedValue(Object value, Format formatter)

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

Field Detail

strict

private boolean strict

Constructor Detail

AbstractFormatValidator

public AbstractFormatValidator(boolean strict)
Construct an instance with the specified strict setting.

Parameters: strict true if strict Format parsing should be used.

Method Detail

format

public String format(Object value)

Format an object into a String using the default Locale.

Parameters: value The value validation is being performed on.

Returns: The value formatted as a String.

format

public String format(Object value, String pattern)

Format an object into a String using the specified pattern.

Parameters: value The value validation is being performed on. pattern The pattern used to format the value.

Returns: The value formatted as a String.

format

public String format(Object value, Locale locale)

Format an object into a String using the specified Locale.

Parameters: value The value validation is being performed on. locale The locale to use for the Format.

Returns: The value formatted as a String.

format

public String format(Object value, String pattern, Locale locale)

Format an object using the specified pattern and/or Locale.

Parameters: value The value validation is being performed on. pattern The pattern used to format the value. locale The locale to use for the Format.

Returns: The value formatted as a String.

format

protected String format(Object value, Format formatter)

Format a value with the specified Format.

Parameters: value The value to be formatted. formatter The Format to use.

Returns: The formatted value.

getFormat

protected abstract Format getFormat(String pattern, Locale locale)

Returns a Format for the specified pattern and/or Locale.

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.

isStrict

public boolean isStrict()

Indicates whether validated values should adhere strictly to the Format used.

Typically implementations of Format ignore invalid characters at the end of the value and just stop parsing. For example parsing a date value of 01/01/20x0 using a pattern of dd/MM/yyyy will result in a year of 20 if strict is set to false, whereas setting strict to true will cause this value to fail validation.

Returns: true if strict Format parsing should be used.

isValid

public boolean isValid(String value)

Validate using the default Locale.

Parameters: value The value validation is being performed on.

Returns: true if the value is valid.

isValid

public boolean isValid(String value, String pattern)

Validate using the specified pattern.

Parameters: value The value validation is being performed on. pattern The pattern used to validate the value against.

Returns: true if the value is valid.

isValid

public boolean isValid(String value, Locale locale)

Validate using the specified Locale.

Parameters: value The value validation is being performed on. locale The locale to use for the Format, defaults to the default

Returns: true if the value is valid.

isValid

public abstract boolean isValid(String value, String pattern, Locale locale)

Validate using the specified pattern and/or Locale.

Parameters: value The value validation is being performed on. pattern The pattern used to format the value. locale The locale to use for the Format, defaults to the default

Returns: true if the value is valid.

parse

protected Object parse(String value, Format formatter)

Parse the value with the specified Format.

Parameters: value The value to be parsed. formatter The Format to parse the value with.

Returns: The parsed value if valid or null if invalid.

processParsedValue

protected abstract Object processParsedValue(Object value, Format formatter)

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

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.

Copyright (c) 2001-2004 Apache Software Foundation