java.lang.Object
net.fortuna.ical4j.validate.RecurValidator
- All Implemented Interfaces:
Serializable,Validator<Recur<?>>
This validator provides semantic recurrence rule validation according to the RFC5545
specification excerpt listed below.
The table below summarizes the dependency of BYxxx rule part
expand or limit behavior on the FREQ rule part value.
The term "N/A" means that the corresponding BYxxx rule part MUST
NOT be used with the corresponding FREQ value.
BYDAY has some special behavior depending on the FREQ value and
this is described in separate notes below the table.
+----------+--------+--------+-------+-------+------+-------+------+
| |SECONDLY|MINUTELY|HOURLY |DAILY |WEEKLY|MONTHLY|YEARLY|
+----------+--------+--------+-------+-------+------+-------+------+
|BYMONTH |Limit |Limit |Limit |Limit |Limit |Limit |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYWEEKNO |N/A |N/A |N/A |N/A |N/A |N/A |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYYEARDAY |Limit |Limit |Limit |N/A |N/A |N/A |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYMONTHDAY|Limit |Limit |Limit |Limit |N/A |Expand |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYDAY |Limit |Limit |Limit |Limit |Expand|Note 1 |Note 2|
+----------+--------+--------+-------+-------+------+-------+------+
|BYHOUR |Limit |Limit |Limit |Expand |Expand|Expand |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYMINUTE |Limit |Limit |Expand |Expand |Expand|Expand |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYSECOND |Limit |Expand |Expand |Expand |Expand|Expand |Expand|
+----------+--------+--------+-------+-------+------+-------+------+
|BYSETPOS |Limit |Limit |Limit |Limit |Limit |Limit |Limit |
+----------+--------+--------+-------+-------+------+-------+------+
Note 1: Limit if BYMONTHDAY is present; otherwise, special expand
for MONTHLY.
Note 2: Limit if BYYEARDAY or BYMONTHDAY is present; otherwise,
special expand for WEEKLY if BYWEEKNO present; otherwise,
special expand for MONTHLY if BYMONTH present; otherwise,
special expand for YEARLY.
- See Also:
-
Constructor Details
-
RecurValidator
public RecurValidator()
-
-
Method Details
-
validate
Description copied from interface:ValidatorValidates the target content by applying validation rules. When content fails validation the validator may throw an exception depending on the implementation.- Specified by:
validatein interfaceValidator<Recur<?>>- Parameters:
target- the target of validation- Returns:
- the result of validation applied to the specified target
- Throws:
ValidationException- indicates validation failure (implementation-specific)
-