Class AbstractCalendarValidator
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
CalendarValidator
,DateValidator
,TimeValidator
Abstract class for Date/Time/Calendar validation.
This is a base class for building Date / Time Validators using format parsing.
- Since:
- Validator 1.3.0
- Version:
- $Revision: 1649191 $
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final int
private static final long
private final int
-
Constructor Summary
ConstructorsConstructorDescriptionAbstractCalendarValidator
(boolean strict, int dateStyle, int timeStyle) Construct an instance with the specified strict, time and date style parameters. -
Method Summary
Modifier and TypeMethodDescriptionprivate int
calculateCompareResult
(Calendar value, Calendar compare, int field) Compares the field from two calendars indicating whether the field for the first calendar is equal to, less than or greater than the field from the second calendar.private int
calculateQuarter
(Calendar calendar, int monthOfFirstQuarter) Calculate the quarter for the specified Calendar.protected int
Compares a calendar value to another, indicating whether it is equal, less then or more than at a specified level.protected int
compareQuarters
(Calendar value, Calendar compare, int monthOfFirstQuarter) Compares a calendar's quarter value to another, indicating whether it is equal, less then or more than the specified quarter.protected int
compareTime
(Calendar value, Calendar compare, int field) Compares a calendar time value to another, indicating whether it is equal, less then or more than at a specified level.Format an object using the specified pattern and/orLocale
.Format an object using the specified pattern and/orLocale
.Format an object into aString
using the specified pattern.protected String
Format a value with the specifiedDateFormat
.Format an object into aString
using the specified Locale.Format an object into aString
using the default Locale.protected Format
Returns aDateFormat
for the specified pattern and/orLocale
.protected Format
Returns aDateFormat
for the specified Locale.boolean
Validate using the specifiedLocale
.protected Object
Checks if the value is valid against a specified pattern.protected abstract Object
processParsedValue
(Object value, Format formatter) Process the parsed value, performing any further validation and type conversion required.
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
dateStyle
private final int dateStyle -
timeStyle
private final int timeStyle
-
-
Constructor Details
-
AbstractCalendarValidator
public AbstractCalendarValidator(boolean strict, int dateStyle, int timeStyle) Construct an instance with the specified strict, time and date style parameters.- Parameters:
strict
-true
if strictFormat
parsing should be used.dateStyle
- the date style to use for Locale validation.timeStyle
- the time style to use for Locale validation.
-
-
Method Details
-
isValid
Validate using the specified
Locale
.- Specified by:
isValid
in classAbstractFormatValidator
- 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.
-
format
Format an object into a
String
using the default Locale.- Parameters:
value
- The value validation is being performed on.timeZone
- The Time Zone used to format the date, system default if null (unless value is aCalendar
.- Returns:
- The value formatted as a
String
.
-
format
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.timeZone
- The Time Zone used to format the date, system default if null (unless value is aCalendar
.- Returns:
- The value formatted as a
String
.
-
format
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.timeZone
- The Time Zone used to format the date, system default if null (unless value is aCalendar
.- Returns:
- The value formatted as a
String
.
-
format
Format an object using the specified pattern and/or
Locale
.- Overrides:
format
in classAbstractFormatValidator
- 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
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.timeZone
- The Time Zone used to format the date, system default if null (unless value is aCalendar
.- Returns:
- The value formatted as a
String
.
-
format
Format a value with the specified
DateFormat
.- Overrides:
format
in classAbstractFormatValidator
- Parameters:
value
- The value to be formatted.formatter
- The Format to use.- Returns:
- The formatted value.
-
parse
Checks if the value is valid against a specified pattern.
- Parameters:
value
- The value validation is being performed on.pattern
- The pattern used to validate the value against, or the default for theLocale
ifnull
.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 value if valid or
null
if invalid.
-
processParsedValue
Process the parsed value, performing any further validation and type conversion required.
- Specified by:
processParsedValue
in classAbstractFormatValidator
- 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
Returns a
DateFormat
for the specified pattern and/orLocale
.- Specified by:
getFormat
in classAbstractFormatValidator
- Parameters:
pattern
- The pattern used to validate the value against ornull
to use the default for theLocale
.locale
- The locale to use for the currency format, system default if null.- Returns:
- The
DateFormat
to created.
-
getFormat
Returns a
DateFormat
for the specified Locale.- Parameters:
locale
- The locale aDateFormat
is required for, system default if null.- Returns:
- The
DateFormat
to created.
-
compare
Compares a calendar value to another, indicating whether it is equal, less then or more than at a specified level.
- Parameters:
value
- The Calendar value.compare
- TheCalendar
to check the value against.field
- The field level to compare to - e.g. specifyingCalendar.MONTH
will compare the year and month portions of the calendar.- Returns:
- Zero if the first value is equal to the second, -1 if it is less than the second or +1 if it is greater than the second.
-
compareTime
Compares a calendar time value to another, indicating whether it is equal, less then or more than at a specified level.
- Parameters:
value
- The Calendar value.compare
- TheCalendar
to check the value against.field
- The field level to compare to - e.g. specifyingCalendar.MINUTE
will compare the hours and minutes portions of the calendar.- Returns:
- Zero if the first value is equal to the second, -1 if it is less than the second or +1 if it is greater than the second.
-
compareQuarters
Compares a calendar's quarter value to another, indicating whether it is equal, less then or more than the specified quarter.
- Parameters:
value
- The Calendar value.compare
- TheCalendar
to check the value against.monthOfFirstQuarter
- The month that the first quarter starts.- Returns:
- Zero if the first quarter is equal to the second, -1 if it is less than the second or +1 if it is greater than the second.
-
calculateQuarter
Calculate the quarter for the specified Calendar.
- Parameters:
calendar
- The Calendar value.monthOfFirstQuarter
- The month that the first quarter starts.- Returns:
- The calculated quarter.
-
calculateCompareResult
Compares the field from two calendars indicating whether the field for the first calendar is equal to, less than or greater than the field from the second calendar.
- Parameters:
value
- The Calendar value.compare
- TheCalendar
to check the value against.field
- The field to compare for the calendars.- Returns:
- Zero if the first calendar's field is equal to the seconds, -1 if it is less than the seconds or +1 if it is greater than the seconds.
-