Class RecurrenceRuleValue
java.lang.Object
jfxtras.icalendarfx.VElementBase
jfxtras.icalendarfx.VParentBase<RecurrenceRuleValue>
jfxtras.icalendarfx.properties.component.recurrence.rrule.RecurrenceRuleValue
RRULE
Recurrence Rule
RFC 5545 iCalendar 3.3.10 page 38
Contains the following Recurrence Rule elements:
COUNT
UNTIL
FREQUENCY
INTERVAL
BYxxx RULES in a List
The value part of the recurrence rule. It supports the following elements:
( "FREQ" "=" freq )
( "UNTIL" "=" enddate )
( "COUNT" "=" 1*DIGIT )
( "INTERVAL" "=" 1*DIGIT )
( "BYSECOND" "=" byseclist )
( "BYMINUTE" "=" byminlist )
( "BYHOUR" "=" byhrlist )
( "BYDAY" "=" bywdaylist )
( "BYMONTHDAY" "=" bymodaylist )
( "BYYEARDAY" "=" byyrdaylist )
( "BYWEEKNO" "=" bywknolist )
( "BYMONTH" "=" bymolist )
( "BYSETPOS" "=" bysplist )
( "WKST" "=" weekday )
In addition to methods to support iCalendar recurrence rule parts, there is a method
( "FREQ" "=" freq )
( "UNTIL" "=" enddate )
( "COUNT" "=" 1*DIGIT )
( "INTERVAL" "=" 1*DIGIT )
( "BYSECOND" "=" byseclist )
( "BYMINUTE" "=" byminlist )
( "BYHOUR" "=" byhrlist )
( "BYDAY" "=" bywdaylist )
( "BYMONTHDAY" "=" bymodaylist )
( "BYYEARDAY" "=" byyrdaylist )
( "BYWEEKNO" "=" bywknolist )
( "BYMONTH" "=" bymolist )
( "BYSETPOS" "=" bysplist )
( "WKST" "=" weekday )
In addition to methods to support iCalendar recurrence rule parts, there is a method
streamRecurrences(Temporal) that produces a stream of start date/times for the recurrences
defined by the rule.- Author:
- David Bal
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class VElementBase
VElementBase.Message, VElementBase.MessageEffect -
Field Summary
Fields inherited from class VParentBase
contentLineGenerator, ordererFields inherited from class VElementBase
BEGIN, END -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleancheckChild(List<VElementBase.Message> messages, String content, String elementName, VChild newChild) errors()Produces a list of error messages indicating problems with calendar elementVElement.errors()is invoked recursively to return errors of child elements in addition to errors in parentBYxxx Rules RFC 5545, iCalendar 3.3.10 Page 42 List contains any of the following.getCount()protected Methodprotected MethodgetUntil()booleanDetermines if recurrence set is goes on foreverByRule<?> lookupByRule(Class<ByDay> class1) Return particular ByRule of passed classname()Returns the name of the component as it would appear in the iCalendar content line.static RecurrenceRuleValueprotected List<VElementBase.Message> parseContent(String contentLine) Parse component from content linevoidsetByRules(String... byRules) voidsetByRules(List<ByRule<?>> byRules) voidsetCount(int count) voidvoidsetFrequency(String frequency) voidsetFrequency(Frequency frequency) voidsetFrequency(FrequencyType frequency) voidsetInterval(Integer interval) voidsetInterval(Interval interval) voidvoidvoidvoidvoidsetWeekStart(DayOfWeek weekStart) voidsetWeekStart(WeekStart weekStart) streamRecurrences(Temporal start) STREAM RECURRENCES Resulting stream of start date/times by applying Frequency temporal adjuster and all, if any, Starts on startDateTime, which MUST be a valid occurrence date/time, but not necessarily the first date/time (DTSTART) in the sequence.toString()withByRules(String... byRules) withByRules(Collection<ByRule<?>> byRules) withByRules(ByRule<?>... byRules) withCount(int count) withFrequency(String frequency) withFrequency(Frequency frequency) withFrequency(FrequencyType frequency) withInterval(int interval) withInterval(Interval interval) withWeekStart(DayOfWeek weekStart) withWeekStart(WeekStart weekStart) Methods inherited from class VParentBase
addChild, addChild, addChild, addChildInternal, childrenUnmodifiable, collectGetterMap, collectSetterMap, copyChildrenInto, equals, getGetters, getSetters, hashCode, orderChild, orderChild, orderChild, parseContent, processInLineChild, removeChild, removeChild, replaceChild, replaceChild, withChildMethods inherited from class VElementBase
elementName, isContentValid, newEmptyVElement, parse, throwMessageExceptions
-
Constructor Details
-
RecurrenceRuleValue
public RecurrenceRuleValue() -
RecurrenceRuleValue
-
-
Method Details
-
setParent
-
getParent
-
name
-
getByRules
BYxxx Rules RFC 5545, iCalendar 3.3.10 Page 42 List contains any of the following. The following list also indicates the processing order:ByMonthinvalid reference
ByWeekNoByYearDayByMonthDayByDayByHourByMinuteBySecondBYxxx rules modify the recurrence set by either expanding or limiting it. Each BYxxx rule can only occur onceinvalid reference
BySetPos -
setByRules
-
setByRules
-
withByRules
-
withByRules
-
withByRules
-
lookupByRule
-
getCount
-
setCount
-
setCount
public void setCount(int count) -
withCount
-
withCount
-
getFrequency
-
setFrequency
-
setFrequency
-
setFrequency
-
withFrequency
-
withFrequency
-
withFrequency
-
getInterval
-
setInterval
-
setInterval
-
withInterval
-
withInterval
-
getUntil
-
setUntil
-
setUntil
-
setUntil
-
withUntil
-
withUntil
-
withUntil
-
getWeekStart
-
setWeekStart
-
setWeekStart
-
withWeekStart
-
withWeekStart
-
getSetter
- Overrides:
getSetterin classVParentBase<RecurrenceRuleValue>
-
getGetter
- Overrides:
getGetterin classVParentBase<RecurrenceRuleValue>
-
parseContent
Parse component from content line- Overrides:
parseContentin classVParentBase<RecurrenceRuleValue>- Parameters:
contentLine- calendar content string to parse- Returns:
- log of information and error messages
-
streamRecurrences
STREAM RECURRENCES Resulting stream of start date/times by applying Frequency temporal adjuster and all, if any, Starts on startDateTime, which MUST be a valid occurrence date/time, but not necessarily the first date/time (DTSTART) in the sequence. A later startDateTime can be used to more efficiently get to later dates in the stream.- Parameters:
start- - starting point of stream (MUST be a valid occurrence date/time)- Returns:
-
isInfinite
public boolean isInfinite()Determines if recurrence set is goes on forever- Returns:
- - true if recurrence set is infinite, false otherwise
-
toString
- Overrides:
toStringin classVParentBase<RecurrenceRuleValue>
-
errors
Description copied from interface:VElementProduces a list of error messages indicating problems with calendar elementVElement.errors()is invoked recursively to return errors of child elements in addition to errors in parent- Specified by:
errorsin interfaceVElement- Overrides:
errorsin classVParentBase<RecurrenceRuleValue>- Returns:
- - list of error messages
-
checkChild
protected boolean checkChild(List<VElementBase.Message> messages, String content, String elementName, VChild newChild) - Overrides:
checkChildin classVParentBase<RecurrenceRuleValue>
-
parse
-