Class RDate<T extends Temporal>
- java.lang.Object
-
- net.fortuna.ical4j.model.Content
-
- net.fortuna.ical4j.model.Property
-
- net.fortuna.ical4j.model.property.DateListProperty<T>
-
- net.fortuna.ical4j.model.property.RDate<T>
-
- All Implemented Interfaces:
Serializable
,Comparable<Property>
,FluentProperty
public class RDate<T extends Temporal> extends DateListProperty<T>
$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:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
RDate.Factory<T extends Temporal>
-
Field Summary
-
Fields inherited from class net.fortuna.ical4j.model.Property
ACKNOWLEDGED, ACTION, ATTACH, ATTENDEE, BUSYTYPE, CALENDAR_ADDRESS, 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, PARTICIPANT_TYPE, PERCENT_COMPLETE, POSTALCODE, PRIORITY, PRODID, PROXIMITY, RDATE, RECURRENCE_ID, REGION, RELATED_TO, REPEAT, REQUEST_STATUS, RESOURCE_TYPE, RESOURCES, RRULE, SEQUENCE, STATUS, STREET_ADDRESS, STRUCTURED_DATA, STYLED_DESCRIPTION, SUMMARY, TEL, TRANSP, TRIGGER, TZID, TZID_ALIAS_OF, TZNAME, TZOFFSETFROM, TZOFFSETTO, TZUNTIL, TZURL, UID, URL, VERSION
-
-
Constructor Summary
Constructors Constructor Description RDate()
Default constructor.RDate(List<Period<T>> periods)
Constructor.RDate(DateList<T> dates)
Constructor.RDate(ParameterList aList, String aValue)
RDate(ParameterList aList, List<Period<T>> periods)
Constructor.RDate(ParameterList aList, DateList<T> dates)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Optional<Set<Period<T>>>
getPeriods()
String
getValue()
protected PropertyFactory<RDate<T>>
newFactory()
Returns a new property factory used to create deep copies.void
setValue(String aValue)
Sets the current value of the property.ValidationResult
validate()
Perform validation on a property.-
Methods inherited from class net.fortuna.ical4j.model.property.DateListProperty
getDates, setTimeZoneRegistry
-
Methods inherited from class net.fortuna.ical4j.model.Property
add, compareTo, copy, equals, getFluentTarget, getName, getParameter, getParameterList, getParameters, getRequiredParameter, hashCode, remove, removeAll, replace, setParameters, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface net.fortuna.ical4j.model.FluentProperty
withParameter
-
-
-
-
Constructor Detail
-
RDate
public RDate()
Default constructor.
-
RDate
public RDate(ParameterList aList, String aValue)
- Parameters:
aList
- a list of parameters for this componentaValue
- a value string for this component
-
RDate
public RDate(DateList<T> 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<T> 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 componentdates
- a list of dates
-
RDate
public RDate(ParameterList aList, List<Period<T>> periods)
Constructor.- Parameters:
aList
- a list of parameters for this componentperiods
- a list of periods
-
-
Method Detail
-
validate
public ValidationResult validate() throws ValidationException
Perform validation on a property.- Specified by:
validate
in classProperty
- Throws:
ValidationException
- where the property is not in a valid state
-
setValue
public final void setValue(String aValue)
Sets the current value of the property.- Overrides:
setValue
in classDateListProperty<T extends Temporal>
- Parameters:
aValue
- a string representation of the property value
-
getValue
public final String getValue()
- Overrides:
getValue
in classDateListProperty<T extends Temporal>
- Returns:
- the content value
-
newFactory
protected PropertyFactory<RDate<T>> newFactory()
Description copied from class:Property
Returns a new property factory used to create deep copies.- Specified by:
newFactory
in classProperty
- Returns:
- a property factory instance
-
-