net.fortuna.ical4j.model.property
Class RecurrenceId

java.lang.Object
  extended bynet.fortuna.ical4j.model.Content
      extended bynet.fortuna.ical4j.model.Property
          extended bynet.fortuna.ical4j.model.property.DateProperty
              extended bynet.fortuna.ical4j.model.property.RecurrenceId
All Implemented Interfaces:
Serializable

public class RecurrenceId
extends DateProperty

Defines a RECURRENCE-ID iCalendar component property.

 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
 

Author:
Ben Fortuna
See Also:
Serialized Form

Field Summary
 
Fields inherited from class net.fortuna.ical4j.model.property.DateProperty
timezone
 
Fields inherited from class net.fortuna.ical4j.model.Property
ACTION, ATTACH, ATTENDEE, CALSCALE, CATEGORIES, CLASS, COMMENT, COMPLETED, CONTACT, CREATED, DESCRIPTION, DTEND, DTSTAMP, DTSTART, DUE, DURATION, EXDATE, EXPERIMENTAL_PREFIX, EXRULE, FREEBUSY, GEO, LAST_MODIFIED, LOCATION, METHOD, ORGANIZER, PERCENT_COMPLETE, PRIORITY, PRODID, RDATE, RECURRENCE_ID, RELATED_TO, REPEAT, REQUEST_STATUS, RESOURCES, RRULE, SEQUENCE, STATUS, SUMMARY, TRANSP, TRIGGER, TZID, TZNAME, TZOFFSETFROM, TZOFFSETTO, TZURL, UID, URL, VERSION
 
Constructor Summary
RecurrenceId()
          Default constructor.
RecurrenceId(Date aDate)
          Constructor.
RecurrenceId(ParameterList aList, Date aDate)
          Constructor.
RecurrenceId(ParameterList aList, String aValue)
           
 
Method Summary
 void validate()
          Perform validation on a property.
 
Methods inherited from class net.fortuna.ical4j.model.property.DateProperty
getDate, getValue, isUtc, setDate, setTimeZone, setUtc, setValue
 
Methods inherited from class net.fortuna.ical4j.model.Property
equals, getName, getParameter, getParameters, getParameters, hashCode, isCalendarProperty, isComponentProperty, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RecurrenceId

public RecurrenceId()
Default constructor.


RecurrenceId

public RecurrenceId(ParameterList aList,
                    String aValue)
             throws ParseException
Parameters:
aList - a list of parameters for this component
aValue - a value string for this component
Throws:
ParseException - where the specified value string is not a valid date-time/date representation

RecurrenceId

public RecurrenceId(Date aDate)
Constructor. Date or Date-Time format is determined based on the presence of a VALUE parameter.

Parameters:
aDate - a date representation of a date or date-time

RecurrenceId

public RecurrenceId(ParameterList aList,
                    Date aDate)
Constructor. Date or Date-Time format is determined based on the presence of a VALUE parameter.

Parameters:
aList - a list of parameters for this component
aDate - a date representation of a date or date-time
Method Detail

validate

public final void validate()
                    throws ValidationException
Description copied from class: Property
Perform validation on a property.

Overrides:
validate in class DateProperty
Throws:
ValidationException
See Also:
Property.validate()