public class RecurrenceIteratorFactory
extends java.lang.Object
Filter - a function that returns true iff the given date matches the subrule.
Condition - returns true if the given date is past the end of the recurrence.
All the functions that represent rule parts are stateful.
| Modifier and Type | Method and Description |
|---|---|
static RecurrenceIterable |
createRecurrenceIterable(java.lang.String rdata,
DateValue dtStart,
java.util.TimeZone tzid,
boolean strict) |
static RecurrenceIterator |
createRecurrenceIterator(RDateList rdates)
create a recurrence iterator from an rdate or exdate list.
|
static RecurrenceIterator |
createRecurrenceIterator(RRule rrule,
DateValue dtStart,
java.util.TimeZone tzid)
create a recurrence iterator from an rrule.
|
static RecurrenceIterator |
createRecurrenceIterator(java.lang.String rdata,
DateValue dtStart,
java.util.TimeZone tzid)
like
createRecurrenceIterator(String,DateValue,TimeZone,boolean)
but defaults to strict parsing. |
static RecurrenceIterator |
createRecurrenceIterator(java.lang.String rdata,
DateValue dtStart,
java.util.TimeZone tzid,
boolean strict)
given a block of RRULE, EXRULE, RDATE, and EXDATE content lines, parse
them into a single recurrence iterator.
|
static RecurrenceIterator |
except(RecurrenceIterator included,
RecurrenceIterator excluded)
an iterator over all the dates included except those excluded, i.e.
|
static RecurrenceIterator |
join(RecurrenceIterator a,
RecurrenceIterator... b)
a recurrence iterator that returns the union of the given recurrence
iterators.
|
public static RecurrenceIterator createRecurrenceIterator(java.lang.String rdata, DateValue dtStart, java.util.TimeZone tzid, boolean strict) throws java.text.ParseException
rdata - ical text.dtStart - the date of the first occurrence in timezone tzid, which is
used to fill in optional fields in the RRULE, such as the day of the
month for a monthly repetition when no ther day specified.
Note: this may not be the first date in the series since an EXRULE or
EXDATE might force it to be skipped, but there will be no earlier date
generated by this ruleset.strict - true if any failure to parse should result in a
ParseException. false causes bad content lines to be logged and ignored.java.text.ParseExceptionpublic static RecurrenceIterable createRecurrenceIterable(java.lang.String rdata, DateValue dtStart, java.util.TimeZone tzid, boolean strict) throws java.text.ParseException
java.text.ParseExceptionpublic static RecurrenceIterator createRecurrenceIterator(java.lang.String rdata, DateValue dtStart, java.util.TimeZone tzid) throws java.text.ParseException
createRecurrenceIterator(String,DateValue,TimeZone,boolean)
but defaults to strict parsing.java.text.ParseExceptionpublic static RecurrenceIterator createRecurrenceIterator(RDateList rdates)
public static RecurrenceIterator createRecurrenceIterator(RRule rrule, DateValue dtStart, java.util.TimeZone tzid)
rrule - the recurrence rule to iterate.dtStart - the start of the series, in tzid.tzid - the timezone to iterate in.public static RecurrenceIterator join(RecurrenceIterator a, RecurrenceIterator... b)
public static RecurrenceIterator except(RecurrenceIterator included, RecurrenceIterator excluded)
inclusions - exclusions.
Exclusions trump inclusions, and dates and
date-times never match one another.included - non null.excluded - non null.