public class DateValidator extends AbstractCalendarValidator
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:
Locale
Locale
Locale
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:
Locale
Locale
Constructor and Description |
---|
DateValidator()
Construct a strict instance with short
date style.
|
DateValidator(boolean strict,
int dateStyle)
Construct an instance with the specified strict
and date style parameters.
|
Modifier and Type | Method and Description |
---|---|
int |
compareDates(Date value,
Date compare,
TimeZone timeZone)
Compare Dates (day, month and year - not time).
|
int |
compareMonths(Date value,
Date compare,
TimeZone timeZone)
Compare Months (month and year).
|
int |
compareQuarters(Date value,
Date compare,
TimeZone timeZone)
Compare Quarters (quarter and year).
|
int |
compareQuarters(Date value,
Date compare,
TimeZone timeZone,
int monthOfFirstQuarter)
Compare Quarters (quarter and year).
|
int |
compareWeeks(Date value,
Date compare,
TimeZone timeZone)
Compare Weeks (week and year).
|
int |
compareYears(Date value,
Date compare,
TimeZone timeZone)
Compare Years.
|
static DateValidator |
getInstance()
Return a singleton instance of this validator.
|
protected Object |
processParsedValue(Object value,
Format formatter)
Returns the parsed
Date unchanged. |
Date |
validate(String value)
Validate/convert a
Date using the default
Locale and TimeZone . |
Date |
validate(String value,
Locale locale)
Validate/convert a
Date using the specified
Locale and default TimeZone . |
Date |
validate(String value,
Locale locale,
TimeZone timeZone)
Validate/convert a
Date using the specified
Locale and TimeZone . |
Date |
validate(String value,
String pattern)
Validate/convert a
Date using the specified
pattern and default TimeZone . |
Date |
validate(String value,
String pattern,
Locale locale)
Validate/convert a
Date using the specified pattern
and Locale and the default TimeZone . |
Date |
validate(String value,
String pattern,
Locale locale,
TimeZone timeZone)
Validate/convert a
Date using the specified
pattern, and Locale and TimeZone . |
Date |
validate(String value,
String pattern,
TimeZone timeZone)
Validate/convert a
Date using the specified
pattern and TimeZone . |
Date |
validate(String value,
TimeZone timeZone)
Validate/convert a
Date using the specified
TimeZone and default Locale . |
compare, compareQuarters, compareTime, format, format, format, format, format, format, getFormat, getFormat, isValid, parse
public DateValidator()
public DateValidator(boolean strict, int dateStyle)
strict
- true
if strict
Format
parsing should be used.dateStyle
- the date style to use for Locale validation.public static DateValidator getInstance()
public Date validate(String value)
Validate/convert a Date
using the default
Locale
and TimeZone
.
value
- The value validation is being performed on.Date
if valid or null
if invalid.public Date validate(String value, TimeZone timeZone)
Validate/convert a Date
using the specified
TimeZone
and default Locale
.
value
- The value validation is being performed on.timeZone
- The Time Zone used to parse the date, system default if null.Date
if valid or null
if invalid.public Date validate(String value, String pattern)
Validate/convert a Date
using the specified
pattern and default TimeZone
.
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
.Date
if valid or null
if invalid.public Date validate(String value, String pattern, TimeZone timeZone)
Validate/convert a Date
using the specified
pattern and TimeZone
.
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
.timeZone
- The Time Zone used to parse the date, system default if null.Date
if valid or null
if invalid.public Date validate(String value, Locale locale)
Validate/convert a Date
using the specified
Locale
and default TimeZone
.
value
- The value validation is being performed on.locale
- The locale to use for the date format, system default if null.Date
if valid or null
if invalid.public Date validate(String value, Locale locale, TimeZone timeZone)
Validate/convert a Date
using the specified
Locale
and TimeZone
.
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.Date
if valid or null
if invalid.public Date validate(String value, String pattern, Locale locale)
Validate/convert a Date
using the specified pattern
and Locale
and the default TimeZone
.
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.Date
if valid or null
if invalid.public Date validate(String value, String pattern, Locale locale, TimeZone timeZone)
Validate/convert a Date
using the specified
pattern, and Locale
and TimeZone
.
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.timeZone
- The Time Zone used to parse the date, system default if null.Date
if valid or null
if invalid.public int compareDates(Date value, Date compare, TimeZone timeZone)
Compare Dates (day, month and year - not time).
value
- The Calendar
value to check.compare
- The Calendar
to compare the value to.timeZone
- The Time Zone used to compare the dates, system default if null.public int compareWeeks(Date value, Date compare, TimeZone timeZone)
Compare Weeks (week and year).
value
- The Date
value to check.compare
- The Date
to compare the value to.timeZone
- The Time Zone used to compare the dates, system default if null.public int compareMonths(Date value, Date compare, TimeZone timeZone)
Compare Months (month and year).
value
- The Date
value to check.compare
- The Date
to compare the value to.timeZone
- The Time Zone used to compare the dates, system default if null.public int compareQuarters(Date value, Date compare, TimeZone timeZone)
Compare Quarters (quarter and year).
value
- The Date
value to check.compare
- The Date
to compare the value to.timeZone
- The Time Zone used to compare the dates, system default if null.public int compareQuarters(Date value, Date compare, TimeZone timeZone, int monthOfFirstQuarter)
Compare Quarters (quarter and year).
value
- The Date
value to check.compare
- The Date
to 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.public int compareYears(Date value, Date compare, TimeZone timeZone)
Compare Years.
value
- The Date
value to check.compare
- The Date
to compare the value to.timeZone
- The Time Zone used to compare the dates, system default if null.protected Object processParsedValue(Object value, Format formatter)
Returns the parsed Date
unchanged.
processParsedValue
in class AbstractCalendarValidator
value
- The parsed Date
object created.formatter
- The Format used to parse the value with.Calendar
.Copyright © 2002–2017 The Apache Software Foundation. All rights reserved.