public class RecurrenceId extends DateProperty
4.8.4.4 Recurrence ID Property Name: RECURRENCE-ID Purpose: This property is used in conjunction with the "UID" and "SEQUENCE" property to identify a specific instance of a recurring "VEVENT", "VTODO" or "VJOURNAL" calendar component. The property value is the effective value of the "DTSTART" property of the recurrence instance. Value Type: The default value type for this property is DATE-TIME. The time format can be any of the valid forms defined for a DATE-TIME value type. See DATE-TIME value type definition for specific interpretations of the various forms. The value type can be set to DATE. Property Parameters: Non-standard property, value data type, time zone identifier and recurrence identifier range parameters can be specified on this property. Conformance: This property can be specified in an iCalendar object containing a recurring calendar component. Description: The full range of calendar components specified by a recurrence set is referenced by referring to just the "UID" property value corresponding to the calendar component. The "RECURRENCE-ID" property allows the reference to an individual instance within the recurrence set. If the value of the "DTSTART" property is a DATE type value, then the value MUST be the calendar date for the recurrence instance. The date/time value is set to the time when the original recurrence instance would occur; meaning that if the intent is to change a Friday meeting to Thursday, the date/time is still set to the original Friday meeting. The "RECURRENCE-ID" property is used in conjunction with the "UID" and "SEQUENCE" property to identify a particular instance of a recurring event, to-do or journal. For a given pair of "UID" and "SEQUENCE" property values, the "RECURRENCE-ID" value for a recurrence instance is fixed. When the definition of the recurrence set for a calendar component changes, and hence the "SEQUENCE" property value changes, the "RECURRENCE-ID" for a given recurrence instance might also change.The "RANGE" parameter is used to specify the effective range of recurrence instances from the instance specified by the "RECURRENCE-ID" property value. The default value for the range parameter is the single recurrence instance only. The value can also be "THISANDPRIOR" to indicate a range defined by the given recurrence instance and all prior instances or the value can be "THISANDFUTURE" to indicate a range defined by the given recurrence instance and all subsequent instances. Format Definition: The property is defined by the following notation: recurid = "RECURRENCE-ID" ridparam ":" ridval CRLF ridparam = *( ; the following are optional, ; but MUST NOT occur more than once (";" "VALUE" "=" ("DATE-TIME" / "DATE)) / (";" tzidparam) / (";" rangeparam) / ; the following is optional, ; and MAY occur more than once (";" xparam) ) ridval = date-time / date ;Value MUST match value type
Modifier and Type | Class and Description |
---|---|
static class |
RecurrenceId.Factory |
ACKNOWLEDGED, ACTION, ATTACH, ATTENDEE, BUSYTYPE, CALSCALE, CATEGORIES, CLASS, COMMENT, COMPLETED, CONTACT, COUNTRY, CREATED, DESCRIPTION, DTEND, DTSTAMP, DTSTART, DUE, DURATION, EXDATE, EXPERIMENTAL_PREFIX, EXRULE, EXTENDED_ADDRESS, FREEBUSY, GEO, LAST_MODIFIED, LOCALITY, LOCATION, LOCATION_TYPE, METHOD, NAME, ORGANIZER, PERCENT_COMPLETE, POSTALCODE, PRIORITY, PRODID, RDATE, RECURRENCE_ID, REGION, RELATED_TO, REPEAT, REQUEST_STATUS, RESOURCES, RRULE, SEQUENCE, STATUS, STREET_ADDRESS, SUMMARY, TEL, TRANSP, TRIGGER, TZID, TZNAME, TZOFFSETFROM, TZOFFSETTO, TZURL, UID, URL, VERSION
Constructor and Description |
---|
RecurrenceId()
Default constructor.
|
RecurrenceId(Date aDate)
Constructor.
|
RecurrenceId(ParameterList aList,
Date aDate)
Constructor.
|
RecurrenceId(ParameterList aList,
java.lang.String aValue) |
RecurrenceId(java.lang.String value)
Creates a new instance initialised with the parsed value.
|
RecurrenceId(java.lang.String value,
TimeZone timezone)
Creates a new RECURRENCE_ID property initialised with the specified timezone and value.
|
RecurrenceId(TimeZone timezone)
Creates a new RECURRENCE_ID property initialised with the specified timezone.
|
Modifier and Type | Method and Description |
---|---|
void |
validate()
Perform validation on a property.
|
copy, getDate, getTimeZone, getValue, hashCode, isUtc, setDate, setTimeZone, setUtc, setValue
equals, getName, getParameter, getParameters, getParameters, toString
public RecurrenceId()
public RecurrenceId(TimeZone timezone)
timezone
- initial timezonepublic RecurrenceId(java.lang.String value) throws java.text.ParseException
value
- the RECURRENCE_ID value string to parsejava.text.ParseException
- where the specified string is not a valid RECURRENCE_ID value representationpublic RecurrenceId(java.lang.String value, TimeZone timezone) throws java.text.ParseException
value
- a string representation of a RECURRENCE_ID valuetimezone
- initial timezonejava.text.ParseException
- where the specified value is not a valid string
representationpublic RecurrenceId(ParameterList aList, java.lang.String aValue) throws java.text.ParseException
aList
- a list of parameters for this componentaValue
- a value string for this componentjava.text.ParseException
- where the specified value string is not a valid date-time/date representationpublic RecurrenceId(Date aDate)
aDate
- a date representation of a date or date-timepublic RecurrenceId(ParameterList aList, Date aDate)
aList
- a list of parameters for this componentaDate
- a date representation of a date or date-timepublic final void validate() throws ValidationException
validate
in class DateProperty
ValidationException
- where the property is not in a valid state