Class DateStringValidator
java.lang.Object
org.apache.fulcrum.intake.validator.DefaultValidator<Date>
org.apache.fulcrum.intake.validator.DateStringValidator
- All Implemented Interfaces:
org.apache.avalon.framework.logger.LogEnabled
,InitableByConstraintMap
,Validator<Date>
- Direct Known Subclasses:
DateRangeValidator
Validates numbers with the following constraints in addition to those
listed in DefaultValidator.
Name | Valid Values | Default Value |
---|---|---|
format | see SimpleDateFormat javadoc | |
formatx | see SimpleDateFormat javadoc | |
where x is >= 1 to specify multiple date formats. Only one format rule should have a message | ||
flexible | true, as long as DateFormat can parse the date, allow it, and false | false |
- Version:
- $Id$
- Author:
- John McNally, Quinton McCombs, Colin Chalmers, Jürgen Hoffmann, Scott Eade
-
Field Summary
Fields inherited from class org.apache.fulcrum.intake.validator.DefaultValidator
errorMessage, log, maxLength, maxLengthMessage, minLength, minLengthMessage, required, requiredMessage
Fields inherited from interface org.apache.fulcrum.intake.validator.Validator
FLEXIBLE_RULE_NAME, FORMAT_RULE_NAME, INVALID_NUMBER_RULE_NAME, MASK_RULE_NAME, MAX_LENGTH_RULE_NAME, MAX_VALUE_RULE_NAME, MIN_LENGTH_RULE_NAME, MIN_VALUE_RULE_NAME, REQUIRED_RULE_NAME
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
assertValidity
(String testValue) Determine whether a testValue meets the criteria specified in the constraints defined for this validatorFormats a date into a String.Get the value of minLengthMessage.Get the value of dateFormats.void
init
(Map<String, ? extends Constraint> paramMap) Constructor to use when initializing Objectboolean
Get the value of flexible.Parses the String s according to the rules/formats for this validator.void
setDateFormatMessage
(String message) Only sets the message if the new message has some information.void
setDateFormats
(List<String> formats) Set the value of dateFormats.void
setFlexible
(boolean flexible) Set the value of flexible.Methods inherited from class org.apache.fulcrum.intake.validator.DefaultValidator
assertValidity, enableLogging, getMaxLength, getMaxLengthMessage, getMessage, getMinLength, getMinLengthMessage, getRequiredMessage, isRequired, isValid, isValid, setMaxLength, setMaxLengthMessage, setMinLength, setMinLengthMessage, setRequired, setRequiredMessage
-
Constructor Details
-
DateStringValidator
public DateStringValidator()Default Constructor
-
-
Method Details
-
init
Constructor to use when initializing Object- Specified by:
init
in interfaceInitableByConstraintMap
- Overrides:
init
in classDefaultValidator<Date>
- Parameters:
paramMap
- a map of parameters- Throws:
InvalidMaskException
- one of the mask rules is invalid
-
assertValidity
Determine whether a testValue meets the criteria specified in the constraints defined for this validator- Specified by:
assertValidity
in interfaceValidator<Date>
- Overrides:
assertValidity
in classDefaultValidator<Date>
- Parameters:
testValue
- aString
to be tested- Throws:
ValidationException
- containing an error message if the testValue did not pass the validation tests.
-
parse
Parses the String s according to the rules/formats for this validator. The formats provided by the "formatx" rules (where x is >= 1) are used before the "format" rules to allow for a display format that includes a 4 digit year, but that will parse the date using a format that accepts 2 digit years.- Parameters:
s
- possibly a date string- Returns:
- the date parsed
- Throws:
ParseException
- indicates that the string could not be parsed into a date.
-
format
Formats a date into a String. The format used is from the first format rule found for the field.- Parameters:
date
- the Date object to convert into a string.- Returns:
- formatted date
-
getDateFormatMessage
Get the value of minLengthMessage.- Returns:
- value of minLengthMessage.
-
setDateFormatMessage
Only sets the message if the new message has some information. So the last setMessage call with valid data wins. But later calls with null or empty string will not affect a previous valid setting.- Parameters:
message
- Value to assign to minLengthMessage.
-
getDateFormats
Get the value of dateFormats.- Returns:
- value of dateFormats.
-
setDateFormats
Set the value of dateFormats.- Parameters:
formats
- Value to assign to dateFormats.
-
isFlexible
public boolean isFlexible()Get the value of flexible.- Returns:
- value of flexible.
-
setFlexible
public void setFlexible(boolean flexible) Set the value of flexible.- Parameters:
flexible
- Value to assign to flexible.
-