Class DateValidator
- All Implemented Interfaces:
Serializable
Date Validation and Conversion routines (java.util.Date).
This validator provides a number of methods for validating/converting
a String date value to a java.util.Date using
java.text.DateFormat to parse either:
- using the default format for the default
Locale - using a specified pattern with the default
Locale - using the default format for a specified
Locale - using a specified pattern with a specified
Locale
For each of the above mechanisms, conversion method (i.e the
validate methods) implementations are provided which
either use the default TimeZone or allow the
TimeZone to be specified.
Use one of the isValid() methods to just validate or
one of the validate() methods to validate and receive a
converted Date value.
Implementations of the validate() method are provided
to create Date objects for different time zones
if the system default is not appropriate.
Once a value has been successfully converted the following methods can be used to perform various date comparison checks:
compareDates()compares the day, month and year of two dates, returning 0, -1 or +1 indicating whether the first date is equal, before or after the second.compareWeeks()compares the week and year of two dates, returning 0, -1 or +1 indicating whether the first week is equal, before or after the second.compareMonths()compares the month and year of two dates, returning 0, -1 or +1 indicating whether the first month is equal, before or after the second.compareQuarters()compares the quarter and year of two dates, returning 0, -1 or +1 indicating whether the first quarter is equal, before or after the second.compareYears()compares the year of two dates, returning 0, -1 or +1 indicating whether the first year is equal, before or after the second.
So that the same mechanism used for parsing an input value
for validation can be used to format output, corresponding
format() methods are also provided. That is you can
format either:
- using a specified pattern
- using the format for a specified
Locale - using the format for the default
Locale
- Since:
- 1.3.0
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionConstructs a strict instance with short date style.DateValidator(boolean strict, int dateStyle) Constructs an instance with the specified strict and date style parameters. -
Method Summary
Modifier and TypeMethodDescriptionintcompareDates(Date value, Date compare, TimeZone timeZone) Compare Dates (day, month and year - not time).intcompareMonths(Date value, Date compare, TimeZone timeZone) Compare Months (month and year).intcompareQuarters(Date value, Date compare, TimeZone timeZone) Compare Quarters (quarter and year).intcompareQuarters(Date value, Date compare, TimeZone timeZone, int monthOfFirstQuarter) Compare Quarters (quarter and year).intcompareWeeks(Date value, Date compare, TimeZone timeZone) Compare Weeks (week and year).intcompareYears(Date value, Date compare, TimeZone timeZone) Compare Years.static DateValidatorGets the singleton instance of this validator.protected ObjectprocessParsedValue(Object value, Format formatter) Returns the parsedDateunchanged.Validate/convert aDateusing the defaultLocaleandTimeZone.Validate/convert aDateusing the specified pattern and defaultTimeZone.Validate/convert aDateusing the specified pattern andLocaleand the defaultTimeZone.Validate/convert aDateusing the specified pattern, andLocaleandTimeZone.Validate/convert aDateusing the specified pattern andTimeZone.Validate/convert aDateusing the specifiedLocaleand defaultTimeZone.Validate/convert aDateusing the specifiedLocaleandTimeZone.Validate/convert aDateusing the specifiedTimeZoneand defaultLocale.Methods inherited from class org.apache.commons.validator.routines.AbstractCalendarValidator
compare, compareQuarters, compareTime, format, format, format, format, format, format, getFormat, getFormat, isValid, parse
-
Constructor Details
-
DateValidator
public DateValidator()Constructs a strict instance with short date style. -
DateValidator
Constructs an instance with the specified strict and date style parameters.- Parameters:
strict-trueif strictFormatparsing should be used.dateStyle- the date style to use for Locale validation.
-
-
Method Details
-
getInstance
Gets the singleton instance of this validator.- Returns:
- A singleton instance of the DateValidator.
-
compareDates
Compare Dates (day, month and year - not time).
- Parameters:
value- TheCalendarvalue to check.compare- TheCalendarto compare the value to.timeZone- The Time Zone used to compare the dates, system default if null.- Returns:
- Zero if the dates are equal, -1 if first date is less than the seconds and +1 if the first date is greater than.
-
compareMonths
Compare Months (month and year).
- Parameters:
value- TheDatevalue to check.compare- TheDateto compare the value to.timeZone- The Time Zone used to compare the dates, system default if null.- Returns:
- Zero if the months are equal, -1 if first parameter's month is less than the seconds and +1 if the first parameter's month is greater than.
-
compareQuarters
Compare Quarters (quarter and year).
- Parameters:
value- TheDatevalue to check.compare- TheDateto compare the value to.timeZone- The Time Zone used to compare the dates, system default if null.- Returns:
- Zero if the months are equal, -1 if first parameter's quarter is less than the seconds and +1 if the first parameter's quarter is greater than.
-
compareQuarters
Compare Quarters (quarter and year).
- Parameters:
value- TheDatevalue to check.compare- TheDateto compare the value to.timeZone- The Time Zone used to compare the dates, system default if null.monthOfFirstQuarter- The month that the first quarter starts.- Returns:
- Zero if the quarters are equal, -1 if first parameter's quarter is less than the seconds and +1 if the first parameter's quarter is greater than.
-
compareWeeks
Compare Weeks (week and year).
- Parameters:
value- TheDatevalue to check.compare- TheDateto compare the value to.timeZone- The Time Zone used to compare the dates, system default if null.- Returns:
- Zero if the weeks are equal, -1 if first parameter's week is less than the seconds and +1 if the first parameter's week is greater than.
-
compareYears
Compare Years.
- Parameters:
value- TheDatevalue to check.compare- TheDateto compare the value to.timeZone- The Time Zone used to compare the dates, system default if null.- Returns:
- Zero if the years are equal, -1 if first parameter's year is less than the seconds and +1 if the first parameter's year is greater than.
-
processParsedValue
Returns the parsed
Dateunchanged.- Specified by:
processParsedValuein classAbstractCalendarValidator- Parameters:
value- The parsedDateobject created.formatter- The Format used to parse the value with.- Returns:
- The parsed value converted to a
Calendar.
-
validate
Validate/convert a
Dateusing the defaultLocaleandTimeZone.- Parameters:
value- The value validation is being performed on.- Returns:
- The parsed
Dateif valid ornullif invalid.
-
validate
Validate/convert a
Dateusing the specifiedLocaleand defaultTimeZone.- Parameters:
value- The value validation is being performed on.locale- The locale to use for the date format, system default if null.- Returns:
- The parsed
Dateif valid ornullif invalid.
-
validate
Validate/convert a
Dateusing the specifiedLocaleandTimeZone.- Parameters:
value- The value validation is being performed on.locale- The locale to use for the date format, system default if null.timeZone- The Time Zone used to parse the date, system default if null.- Returns:
- The parsed
Dateif valid ornullif invalid.
-
validate
Validate/convert a
Dateusing the specified pattern and defaultTimeZone.- Parameters:
value- The value validation is being performed on.pattern- The pattern used to validate the value against, or the default for theLocaleifnull.- Returns:
- The parsed
Dateif valid ornullif invalid.
-
validate
Validate/convert a
Dateusing the specified pattern andLocaleand the defaultTimeZone.- Parameters:
value- The value validation is being performed on.pattern- The pattern used to validate the value against, or the default for theLocaleifnull.locale- The locale to use for the date format, system default if null.- Returns:
- The parsed
Dateif valid ornullif invalid.
-
validate
Validate/convert a
Dateusing the specified pattern, andLocaleandTimeZone.- Parameters:
value- The value validation is being performed on.pattern- The pattern used to validate the value against, or the default for theLocaleifnull.locale- The locale to use for the date format, system default if null.timeZone- The Time Zone used to parse the date, system default if null.- Returns:
- The parsed
Dateif valid ornullif invalid.
-
validate
Validate/convert a
Dateusing the specified pattern andTimeZone.- Parameters:
value- The value validation is being performed on.pattern- The pattern used to validate the value against, or the default for theLocaleifnull.timeZone- The Time Zone used to parse the date, system default if null.- Returns:
- The parsed
Dateif valid ornullif invalid.
-
validate
Validate/convert a
Dateusing the specifiedTimeZoneand defaultLocale.- Parameters:
value- The value validation is being performed on.timeZone- The Time Zone used to parse the date, system default if null.- Returns:
- The parsed
Dateif valid ornullif invalid.
-