Class RDate

All Implemented Interfaces:
Serializable, Comparable<Property>, FluentProperty

public class RDate extends DateListProperty
$Id$

Created: [Apr 6, 2004]

Defines an RDATE iCalendar component property.

     4.8.5.3 Recurrence Date/Times

        Property Name: RDATE

        Purpose: This property defines the list of date/times for a
        recurrence set.

        Value Type: The default value type for this property is DATE-TIME.
        The value type can be set to DATE or PERIOD.

        Property Parameters: Non-standard, value data type and time zone
        identifier property parameters can be specified on this property.

        Conformance: The property can be specified in "VEVENT", "VTODO",
        "VJOURNAL" or "VTIMEZONE" calendar components.

        Description: This property can appear along with the "RRULE" property
        to define an aggregate set of repeating occurrences. When they both
        appear in an iCalendar object, the recurring events are defined by
        the union of occurrences defined by both the "RDATE" and "RRULE".

        The recurrence dates, if specified, are used in computing the
        recurrence set. The recurrence set is the complete set of recurrence
        instances for a calendar component. The recurrence set is generated
        by considering the initial "DTSTART" property along with the "RRULE",
        "RDATE", "EXDATE" and "EXRULE" properties contained within the
        iCalendar object. The "DTSTART" property defines the first instance
        in the recurrence set. Multiple instances of the "RRULE" and "EXRULE"
        properties can also be specified to define more sophisticated
        recurrence sets. The final recurrence set is generated by gathering
        all of the start date/times generated by any of the specified "RRULE"
        and "RDATE" properties, and excluding any start date/times which fall
        within the union of start date/times generated by any specified
        "EXRULE" and "EXDATE" properties. This implies that start date/times
        within exclusion related properties (i.e., "EXDATE" and "EXRULE")
        take precedence over those specified by inclusion properties (i.e.,
        "RDATE" and "RRULE"). Where duplicate instances are generated by the
        "RRULE" and "RDATE" properties, only one recurrence is considered.
        Duplicate instances are ignored.

        Format Definition: The property is defined by the following notation:

          rdate      = "RDATE" rdtparam ":" rdtval *("," rdtval) CRLF

          rdtparam   = *(

                     ; the following are optional,
                     ; but MUST NOT occur more than once

                     (";" "VALUE" "=" ("DATE-TIME"
                      / "DATE" / "PERIOD")) /
                     (";" tzidparam) /

                     ; the following is optional,
                     ; and MAY occur more than once

                     (";" xparam)

                     )

          rdtval     = date-time / date / period
          ;Value MUST match value type

        Example: The following are examples of this property:

          RDATE:19970714T123000Z

          RDATE;TZID=US-EASTERN:19970714T083000

          RDATE;VALUE=PERIOD:19960403T020000Z/19960403T040000Z,
           19960404T010000Z/PT3H

          RDATE;VALUE=DATE:19970101,19970120,19970217,19970421
           19970526,19970704,19970901,19971014,19971128,19971129,19971225
 
See Also:
  • Constructor Details

    • RDate

      public RDate()
      Default constructor.
    • RDate

      public RDate(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
    • RDate

      public RDate(DateList dates)
      Constructor. Date or Date-Time format is determined based on the presence of a VALUE parameter.
      Parameters:
      dates - a list of dates
    • RDate

      public RDate(ParameterList aList, DateList dates)
      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
      dates - a list of dates
    • RDate

      public RDate(PeriodList periods)
      Constructor.
      Parameters:
      periods - a list of periods
    • RDate

      public RDate(ParameterList aList, PeriodList periods)
      Constructor.
      Parameters:
      aList - a list of parameters for this component
      periods - a list of periods
  • Method Details