Class CalendarValidator
- java.lang.Object
-
- org.apache.commons.validator.routines.AbstractFormatValidator
-
- org.apache.commons.validator.routines.AbstractCalendarValidator
-
- org.apache.commons.validator.routines.CalendarValidator
-
- All Implemented Interfaces:
java.io.Serializable
public class CalendarValidator extends AbstractCalendarValidator
Calendar Validation and Conversion routines (
java.util.Calendar).This validator provides a number of methods for validating/converting a
Stringdate value to ajava.util.Calendarusingjava.text.DateFormatto 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
validatemethods) implementations are provided which either use the defaultTimeZoneor allow theTimeZoneto be specified.Use one of the
isValid()methods to just validate or one of thevalidate()methods to validate and receive a convertedCalendarvalue.Implementations of the
validate()method are provided to createCalendarobjects for different time zones if the system default is not appropriate.Alternatively the CalendarValidator's
adjustToTimeZone()method can be used to adjust theTimeZoneof theCalendarobject afterwards.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 calendars, 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 calendars, 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 calendars, 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 calendars, returning 0, -1 or +1 indicating whether the first quarter is equal, before or after the second.compareYears()compares the year of two calendars, 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:
- Validator 1.3.0
- Version:
- $Revision: 1649191 $
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private static longserialVersionUIDprivate static CalendarValidatorVALIDATOR
-
Constructor Summary
Constructors Constructor Description CalendarValidator()Construct a strict instance with short date style.CalendarValidator(boolean strict, int dateStyle)Construct an instance with the specified strict and date style parameters.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static voidadjustToTimeZone(java.util.Calendar value, java.util.TimeZone timeZone)Adjusts a Calendar's value to a different TimeZone.intcompareDates(java.util.Calendar value, java.util.Calendar compare)Compare Dates (day, month and year - not time).intcompareMonths(java.util.Calendar value, java.util.Calendar compare)Compare Months (month and year).intcompareQuarters(java.util.Calendar value, java.util.Calendar compare)Compare Quarters (quarter and year).intcompareQuarters(java.util.Calendar value, java.util.Calendar compare, int monthOfFirstQuarter)Compare Quarters (quarter and year).intcompareWeeks(java.util.Calendar value, java.util.Calendar compare)Compare Weeks (week and year).intcompareYears(java.util.Calendar value, java.util.Calendar compare)Compare Years.static CalendarValidatorgetInstance()Return a singleton instance of this validator.protected java.lang.ObjectprocessParsedValue(java.lang.Object value, java.text.Format formatter)Convert the parsedDateto aCalendar.java.util.Calendarvalidate(java.lang.String value)Validate/convert aCalendarusing the defaultLocaleandTimeZone.java.util.Calendarvalidate(java.lang.String value, java.lang.String pattern)Validate/convert aCalendarusing the specified pattern and defaultTimeZone.java.util.Calendarvalidate(java.lang.String value, java.lang.String pattern, java.util.Locale locale)Validate/convert aCalendarusing the specified pattern andLocaleand the defaultTimeZone.java.util.Calendarvalidate(java.lang.String value, java.lang.String pattern, java.util.Locale locale, java.util.TimeZone timeZone)Validate/convert aCalendarusing the specified pattern, andLocaleandTimeZone.java.util.Calendarvalidate(java.lang.String value, java.lang.String pattern, java.util.TimeZone timeZone)Validate/convert aCalendarusing the specified pattern andTimeZone.java.util.Calendarvalidate(java.lang.String value, java.util.Locale locale)Validate/convert aCalendarusing the specifiedLocaleand defaultTimeZone.java.util.Calendarvalidate(java.lang.String value, java.util.Locale locale, java.util.TimeZone timeZone)Validate/convert aCalendarusing the specifiedLocaleandTimeZone.java.util.Calendarvalidate(java.lang.String value, java.util.TimeZone timeZone)Validate/convert aCalendarusing the specifiedTimeZoneand defaultLocale.-
Methods inherited from class org.apache.commons.validator.routines.AbstractCalendarValidator
compare, compareTime, format, format, format, format, format, format, getFormat, getFormat, isValid, parse
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
VALIDATOR
private static final CalendarValidator VALIDATOR
-
-
Constructor Detail
-
CalendarValidator
public CalendarValidator()
Construct a strict instance with short date style.
-
CalendarValidator
public CalendarValidator(boolean strict, int dateStyle)Construct 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 Detail
-
getInstance
public static CalendarValidator getInstance()
Return a singleton instance of this validator.- Returns:
- A singleton instance of the CalendarValidator.
-
validate
public java.util.Calendar validate(java.lang.String value)
Validate/convert a
Calendarusing the defaultLocaleandTimeZone.- Parameters:
value- The value validation is being performed on.- Returns:
- The parsed
Calendarif valid ornullif invalid.
-
validate
public java.util.Calendar validate(java.lang.String value, java.util.TimeZone timeZone)Validate/convert a
Calendarusing 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
Calendarif valid ornullif invalid.
-
validate
public java.util.Calendar validate(java.lang.String value, java.lang.String pattern)Validate/convert a
Calendarusing the specified pattern and defaultTimeZone.- Parameters:
value- The value validation is being performed on.pattern- The pattern used to validate the value against.- Returns:
- The parsed
Calendarif valid ornullif invalid.
-
validate
public java.util.Calendar validate(java.lang.String value, java.lang.String pattern, java.util.TimeZone timeZone)Validate/convert a
Calendarusing the specified pattern andTimeZone.- Parameters:
value- The value validation is being performed on.pattern- The pattern used to validate the value against.timeZone- The Time Zone used to parse the date, system default if null.- Returns:
- The parsed
Calendarif valid ornullif invalid.
-
validate
public java.util.Calendar validate(java.lang.String value, java.util.Locale locale)Validate/convert a
Calendarusing 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
Calendarif valid ornullif invalid.
-
validate
public java.util.Calendar validate(java.lang.String value, java.util.Locale locale, java.util.TimeZone timeZone)Validate/convert a
Calendarusing 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
Calendarif valid ornullif invalid.
-
validate
public java.util.Calendar validate(java.lang.String value, java.lang.String pattern, java.util.Locale locale)Validate/convert a
Calendarusing 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
Calendarif valid ornullif invalid.
-
validate
public java.util.Calendar validate(java.lang.String value, java.lang.String pattern, java.util.Locale locale, java.util.TimeZone timeZone)Validate/convert a
Calendarusing 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
Calendarif valid ornullif invalid.
-
adjustToTimeZone
public static void adjustToTimeZone(java.util.Calendar value, java.util.TimeZone timeZone)Adjusts a Calendar's value to a different TimeZone.
- Parameters:
value- The value to adjust.timeZone- The new time zone to use to adjust the Calendar to.
-
compareDates
public int compareDates(java.util.Calendar value, java.util.Calendar compare)Compare Dates (day, month and year - not time).
- Parameters:
value- TheCalendarvalue to check.compare- TheCalendarto compare the value to.- 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.
-
compareWeeks
public int compareWeeks(java.util.Calendar value, java.util.Calendar compare)Compare Weeks (week and year).
- Parameters:
value- TheCalendarvalue to check.compare- TheCalendarto compare the value to.- 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.
-
compareMonths
public int compareMonths(java.util.Calendar value, java.util.Calendar compare)Compare Months (month and year).
- Parameters:
value- TheCalendarvalue to check.compare- TheCalendarto compare the value to.- 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
public int compareQuarters(java.util.Calendar value, java.util.Calendar compare)Compare Quarters (quarter and year).
- Parameters:
value- TheCalendarvalue to check.compare- TheCalendarto check the value against.- 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.
-
compareQuarters
public int compareQuarters(java.util.Calendar value, java.util.Calendar compare, int monthOfFirstQuarter)Compare Quarters (quarter and year).
- Overrides:
compareQuartersin classAbstractCalendarValidator- Parameters:
value- TheCalendarvalue to check.compare- TheCalendarto compare the value to.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.
-
compareYears
public int compareYears(java.util.Calendar value, java.util.Calendar compare)Compare Years.
- Parameters:
value- TheCalendarvalue to check.compare- TheCalendarto compare the value to.- 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
protected java.lang.Object processParsedValue(java.lang.Object value, java.text.Format formatter)Convert the parsed
Dateto aCalendar.- 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.
-
-