Class VEvent
java.lang.Object
- All Implemented Interfaces:
VAttendee<VEvent>, VComponent, VDateTimeEnd<VEvent>, VDescribable<VEvent>, VDescribable2<VEvent>, VDuration<VEvent>, VLastModified<VEvent>, VRepeatable<VEvent>, VChild, VElement, VParent
public class VEvent
extends VLocatable<VEvent>
implements VDateTimeEnd<VEvent>, VDescribable2<VEvent>, VRepeatable<VEvent>
VEVENT
Event Component
RFC 5545, 3.6.1, page 52
Description: A "VEVENT" calendar component is a grouping of
component properties, possibly including "VALARM" calendar
components, that represents a scheduled amount of time on a
calendar. For example, it can be an activity; such as a one-hour
long, department meeting from 8:00 AM to 9:00 AM, tomorrow.
Generally, an event will take up time on an individual calendar.
Hence, the event will appear as an opaque interval in a search for
busy time. Alternately, the event can have its Time Transparency
set to "TRANSPARENT" in order to prevent blocking of the event in
searches for busy time.
The "VEVENT" is also the calendar component used to specify an
anniversary or daily reminder within a calendar. These events
have a DATE value type for the "DTSTART" property instead of the
default value type of DATE-TIME. If such a "VEVENT" has a "DTEND"
property, it MUST be specified as a DATE value also. The
anniversary type of "VEVENT" can span more than one date (i.e.,
"DTEND" property value is set to a calendar date after the
"DTSTART" property value). If such a "VEVENT" has a "DURATION"
property, it MUST be specified as a "dur-day" or "dur-week" value.
The "DTSTART" property for a "VEVENT" specifies the inclusive
start of the event. For recurring events, it also specifies the
very first instance in the recurrence set. The "DTEND" property
for a "VEVENT" calendar component specifies the non-inclusive end
of the event. For cases where a "VEVENT" calendar component
specifies a "DTSTART" property with a DATE value type but no
"DTEND" nor "DURATION" property, the event's duration is taken to
be one day. For cases where a "VEVENT" calendar component
specifies a "DTSTART" property with a DATE-TIME value type but no
"DTEND" property, the event ends on the same calendar date and
time of day specified by the "DTSTART" property.
The "VEVENT" calendar component cannot be nested within another
calendar component. However, "VEVENT" calendar components can be
related to each other or to a "VTODO" or to a "VJOURNAL" calendar
component with the "RELATED-TO" property.
Example: The following is an example of the "VEVENT" calendar
component used to represent a meeting that will also be opaque to
searches for busy time:
BEGIN:VEVENT
UID:19970901T130000Z-123401@example.com
DTSTAMP:19970901T130000Z
DTSTART:19970903T163000Z
DTEND:19970903T190000Z
SUMMARY:Annual Employee Review
CLASS:PRIVATE
CATEGORIES:BUSINESS,HUMAN RESOURCES
END:VEVENT
-
Nested Class Summary
Nested classes/interfaces inherited from class VElementBase
VElementBase.Message, VElementBase.MessageEffectNested classes/interfaces inherited from interface VRepeatable
VRepeatable.MergedIterator<T> -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate DateTimeEndprivate TimeTransparencyTRANSP Time Transparency RFC 5545 iCalendar 3.8.2.7.Fields inherited from class VPrimary
DTSTART_COMPARATORFields inherited from class VComponentBase
parentFields inherited from class VParentBase
contentLineGenerator, ordererFields inherited from class VElementBase
BEGIN, END -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidDeprecated.errors()/ if (useRequestStatus) / { // Set REQUEST-STATUS for each message / statusMessages.entrySet() / .stream() / .flatMap(e -> e.getValue().stream()) / .forEach(e -> addChild(RequestStatus.parse(e))); / }A convenience method that returns either Duration property value, or a calculated duration based on start and end valuesDTEND Date-Time End RFC 5545, 3.8.2.2, page 95 This property specifies when the calendar component ends.static VEventCreates a new VEvent calendar component by parsing a String of iCalendar content linesvoidsetDateTimeEnd(DateTimeEnd dateTimeEnd) voidsetEndOrDuration(Temporal startRecurrence, Temporal endRecurrence) A convenience method that sets DTEND, DURATION (VEvent) or DUE (VTodo) depending on which ever is already set to new value calculated by the duration or period between input parameters (depending on if the parameters are LocalDate or a date/time type (i.e.voidsetTimeTransparency(String timeTransparency) voidsetTimeTransparency(TimeTransparency timeTransparency) voidsetTimeTransparency(TimeTransparency.TimeTransparencyType timeTransparency) withTimeTransparency(String timeTransparency) withTimeTransparency(TimeTransparency timeTransparency) withTimeTransparency(TimeTransparency.TimeTransparencyType timeTransparencyType) Methods inherited from class VLocatable
addSubcomponent, getDescription, getDuration, getGeographicPosition, getLocation, getPriority, getResources, getVAlarms, hashCode, setDescription, setDuration, setGeographicPosition, setGeographicPosition, setGeographicPosition, setLocation, setLocation, setPriority, setPriority, setPriority, setResources, setVAlarms, streamRecurrences, withGeographicPosition, withGeographicPosition, withGeographicPosition, withLocation, withLocation, withPriority, withPriority, withPriority, withResources, withResources, withResources, withVAlarms, withVAlarms, withVAlarmsMethods inherited from class VDisplayable
checkRecurrenceIdConsistency, dateTimeStartListenerHook, getAttachments, getCategories, getClassification, getContacts, getDateTimeCreated, getDateTimeLastModified, getExceptionDates, getRecurrenceDates, getRecurrenceId, getRecurrenceRule, getRelatedTo, getSequence, getStatus, getSummary, incrementSequence, orphanedRecurrenceChildren, recurrenceCache, recurrenceChildren, recurrenceParent, setAttachments, setCategories, setClassification, setClassification, setClassification, setContacts, setDateTimeCreated, setDateTimeCreated, setDateTimeCreated, setDateTimeLastModified, setExceptionDates, setRecurrenceDates, setRecurrenceId, setRecurrenceId, setRecurrenceId, setRecurrenceRule, setRelatedTo, setSequence, setSequence, setSequence, setStatus, setStatus, setStatus, setSummary, withCategories, withCategories, withCategories, withClassification, withClassification, withClassification, withContacts, withContacts, withContacts, withDateTimeCreated, withDateTimeCreated, withDateTimeCreated, withExceptionDates, withExceptionDates, withExceptionDates, withExceptionDates, withRecurrenceId, withRecurrenceId, withRecurrenceId, withRelatedTo, withRelatedTo, withRelatedTo, withSequence, withSequence, withSequence, withStatus, withStatus, withStatusMethods inherited from class VPersonal
getAttendees, getDateTimeStamp, getOrganizer, getRequestStatus, getUidGeneratorCallback, getUniqueIdentifier, getURL, setAttendees, setDateTimeStamp, setDateTimeStamp, setDateTimeStamp, setOrganizer, setOrganizer, setRequestStatus, setUidGeneratorCallback, setUniqueIdentifier, setUniqueIdentifier, setUniqueIdentifier, setURL, setURL, setURL, withDateTimeStamp, withDateTimeStamp, withDateTimeStamp, withOrganizer, withOrganizer, withRequestStatus, withRequestStatus, withRequestStatus, withUidGeneratorCallback, withUniqueIdentifier, withUniqueIdentifier, withUniqueIdentifier, withURL, withURL, withURLMethods inherited from class VPrimary
getComments, getDateTimeStart, isWholeDay, setComments, setDateTimeStart, setDateTimeStart, setDateTimeStart, withComments, withComments, withComments, withDateTimeStart, withDateTimeStart, withDateTimeStartMethods inherited from class VCommon
getNonStandard, setNonStandard, withNonStandard, withNonStandard, withNonStandardMethods inherited from class VComponentBase
getParent, isContentValid, name, setParentMethods inherited from class VParentBase
addChild, addChild, addChild, addChildInternal, checkChild, childrenUnmodifiable, collectGetterMap, collectSetterMap, copyChildrenInto, equals, getGetter, getGetters, getSetter, getSetters, orderChild, orderChild, orderChild, parseContent, parseContent, processInLineChild, removeChild, removeChild, replaceChild, replaceChild, toString, withChildMethods inherited from class VElementBase
elementName, newEmptyVElement, parse, throwMessageExceptionsMethods inherited from interface VAttendee
withAttendees, withAttendees, withAttendeesMethods inherited from interface VComponent
toStringMethods inherited from interface VDateTimeEnd
checkDateTimeEndConsistency, getDateTimeStart, setDateTimeEnd, setDateTimeEnd, withDateTimeEnd, withDateTimeEnd, withDateTimeEndMethods inherited from interface VDescribable
getAttachments, getSummary, setAttachments, setSummary, setSummary, withAttachments, withAttachments, withAttachments, withSummary, withSummaryMethods inherited from interface VDescribable2
getDescription, setDescription, setDescription, withDescription, withDescriptionMethods inherited from interface VDuration
setDuration, setDuration, withDuration, withDuration, withDurationMethods inherited from interface VLastModified
setDateTimeLastModified, setDateTimeLastModified, withDateTimeLastModified, withDateTimeLastModified, withDateTimeLastModifiedMethods inherited from interface VParent
addChild, addChild, addChild, childrenUnmodifiable, orderChild, orderChild, orderChild, removeChild, removeChild, replaceChild, replaceChildMethods inherited from interface VRepeatable
checkDateTimeStartConsistency, checkRecurrencesConsistency, getDateTimeStart, getRecurrenceDates, getRecurrenceRule, isRecurrence, isRecurrenceSetEmpty, lastRecurrence, previousStreamValue, recurrenceCache, setRecurrenceDates, setRecurrenceRule, setRecurrenceRule, setRecurrenceRule, streamRecurrences, streamRecurrences, streamRecurrences, withRecurrenceDates, withRecurrenceDates, withRecurrenceDates, withRecurrenceDates, withRecurrenceRule, withRecurrenceRule, withRecurrenceRule
-
Field Details
-
dateTimeEnd
-
timeTransparency
TRANSP Time Transparency RFC 5545 iCalendar 3.8.2.7. page 101 This property defines whether or not an event is transparent to busy time searches. Events that consume actual time SHOULD be recorded as OPAQUE. Other events, which do not take up time SHOULD be recorded as TRANSPARENT. Example: TRANSP:TRANSPARENT
-
-
Constructor Details
-
VEvent
public VEvent() -
VEvent
Copy constructor
-
-
Method Details
-
getDateTimeEnd
DTEND Date-Time End RFC 5545, 3.8.2.2, page 95 This property specifies when the calendar component ends. The value type of this property MUST be the same as the "DTSTART" property, and its value MUST be later in time than the value of the "DTSTART" property. Example: DTEND;VALUE=DATE:19980704- Specified by:
getDateTimeEndin interfaceVDateTimeEnd<VEvent>
-
setDateTimeEnd
- Specified by:
setDateTimeEndin interfaceVDateTimeEnd<VEvent>
-
getTimeTransparency
-
setTimeTransparency
-
setTimeTransparency
-
setTimeTransparency
-
withTimeTransparency
-
withTimeTransparency
-
withTimeTransparency
-
getActualDuration
Description copied from class:VLocatableA convenience method that returns either Duration property value, or a calculated duration based on start and end values- Specified by:
getActualDurationin classVLocatable<VEvent>
-
setEndOrDuration
Description copied from class:VLocatableA convenience method that sets DTEND, DURATION (VEvent) or DUE (VTodo) depending on which ever is already set to new value calculated by the duration or period between input parameters (depending on if the parameters are LocalDate or a date/time type (i.e. ZonedDateTime)) Note: In order to set DTEND, DTSTART must be assigned a value. DURATION and DUE doesn't require a DTSTART value.- Specified by:
setEndOrDurationin classVLocatable<VEvent>- Parameters:
startRecurrence-endRecurrence-
-
errors
Description copied from class:VPersonal/ if (useRequestStatus) / { // Set REQUEST-STATUS for each message / statusMessages.entrySet() / .stream() / .flatMap(e -> e.getValue().stream()) / .forEach(e -> addChild(RequestStatus.parse(e))); / }- Specified by:
errorsin interfaceVElement- Overrides:
errorsin classVLocatable<VEvent>- Returns:
- - list of error messages
-
calendarList
- Specified by:
calendarListin interfaceVComponent
-
eraseDateTimeProperties
Deprecated.Description copied from class:VDisplayableErase all date/time properties such as DTSTART, DTEND, DURATION, and DUE (which ever exist). This is necessary to prepare a CANCEL iTIP message for one recurrence instance.- Overrides:
eraseDateTimePropertiesin classVLocatable<VEvent>
-
parse
-