SEQUENCE:0
public abstract class VComponentBase<I,T> extends java.lang.Object implements VComponent<I>
Abstract implementation of VComponent with all common methods for VEvent, VTodo, and VJournal
VEvent
Type | Property and Description |
---|---|
javafx.beans.property.StringProperty |
categories
CATEGORIES: RFC 5545 iCalendar 3.8.1.12.
|
javafx.beans.property.ObjectProperty<Comment> |
comment
COMMENT: RFC 5545 iCalendar 3.8.1.12.
|
javafx.beans.property.ObjectProperty<java.time.ZonedDateTime> |
dateTimeCreated
CREATED: Date-Time Created, from RFC 5545 iCalendar 3.8.7.1 page 136
This property specifies the date and time that the calendar information was created.
|
javafx.beans.property.ObjectProperty<java.time.ZonedDateTime> |
dateTimeLastModified
LAST-MODIFIED: Date-Time Last Modified, from RFC 5545 iCalendar 3.8.7.3 page 138
This property specifies the date and time that the information associated with
the calendar component was last revised.
|
javafx.beans.property.ObjectProperty<java.time.temporal.Temporal> |
dateTimeRecurrence
RECURRENCE-ID: Date-Time recurrence, from RFC 5545 iCalendar 3.8.4.4 page 112
The property value is the original value of the "DTSTART" property of the
recurrence instance.
|
javafx.beans.property.ObjectProperty<java.time.ZonedDateTime> |
dateTimeStamp
DTSTAMP: Date-Time Stamp, from RFC 5545 iCalendar 3.8.7.2 page 137
This property specifies the date and time that the instance of the
iCalendar object was created
|
javafx.beans.property.ObjectProperty<java.time.temporal.Temporal> |
dateTimeStart
DTSTART: Date-Time Start, from RFC 5545 iCalendar 3.8.2.4 page 97
Start date/time of repeat rule.
|
javafx.beans.property.ObjectProperty<ExDate> |
exDate
EXDATE: Set of date/times exceptions for recurring events, to-dos, journal entries.
|
javafx.beans.property.StringProperty |
organizer
ORGANIZER: RFC 5545 iCalendar 3.8.4.3.
|
javafx.beans.property.ObjectProperty<RDate> |
rDate
RDATE: Set of date/times for recurring events, to-dos, journal entries.
|
javafx.beans.property.StringProperty |
relatedTo
RELATED-TO: This property is used to represent a relationship or reference between
one calendar component and another.
|
javafx.beans.property.ObjectProperty<RRule> |
rRule
Recurrence Rule, RRULE, as defined in RFC 5545 iCalendar 3.8.5.3, page 122.
|
javafx.beans.property.IntegerProperty |
sequence
SEQUENCE: RFC 5545 iCalendar 3.8.7.4.
|
javafx.beans.property.ObjectProperty<Summary> |
summary
SUMMARY: RFC 5545 iCalendar 3.8.1.12.
|
javafx.beans.property.StringProperty |
uniqueIdentifier
Unique identifier, UID as defined by RFC 5545, iCalendar 3.8.4.7 page 117
A globally unique identifier for the calendar component.
|
VComponent.StartEndRange
VCOMPONENT_COMPARATOR
Constructor and Description |
---|
VComponentBase() |
VComponentBase(VComponentBase<I,T> vcomponent)
Copy constructor
|
Modifier and Type | Method and Description |
---|---|
protected void |
becomingIndividual(VComponent<I> vComponentOriginal,
java.time.temporal.Temporal startInstance,
java.time.temporal.Temporal endInstance)
Part of handleEdit.
|
javafx.beans.property.StringProperty |
categoriesProperty()
CATEGORIES: RFC 5545 iCalendar 3.8.1.12.
|
protected java.util.Collection<java.lang.String> |
changedStartAndEndDateTime(java.time.temporal.Temporal startOriginalInstance,
java.time.temporal.Temporal startInstance,
java.time.temporal.Temporal endInstance)
returns list of date-time properties that have been edited (DTSTART)
|
javafx.beans.property.ObjectProperty<Comment> |
commentProperty()
COMMENT: RFC 5545 iCalendar 3.8.1.12.
|
void |
copyTo(VComponent<I> destination)
Deep copy all fields from source to destination
|
javafx.beans.property.ObjectProperty<java.time.ZonedDateTime> |
dateTimeCreatedProperty()
CREATED: Date-Time Created, from RFC 5545 iCalendar 3.8.7.1 page 136
This property specifies the date and time that the calendar information was created.
|
javafx.beans.property.ObjectProperty<java.time.ZonedDateTime> |
dateTimeLastModifiedProperty()
LAST-MODIFIED: Date-Time Last Modified, from RFC 5545 iCalendar 3.8.7.3 page 138
This property specifies the date and time that the information associated with
the calendar component was last revised.
|
javafx.beans.property.ObjectProperty<java.time.temporal.Temporal> |
dateTimeRecurrenceProperty()
RECURRENCE-ID: Date-Time recurrence, from RFC 5545 iCalendar 3.8.4.4 page 112
The property value is the original value of the "DTSTART" property of the
recurrence instance.
|
javafx.beans.property.ObjectProperty<java.time.ZonedDateTime> |
dateTimeStampProperty()
DTSTAMP: Date-Time Stamp, from RFC 5545 iCalendar 3.8.7.2 page 137
This property specifies the date and time that the instance of the
iCalendar object was created
|
javafx.beans.property.ObjectProperty<java.time.temporal.Temporal> |
dateTimeStartProperty()
DTSTART: Date-Time Start, from RFC 5545 iCalendar 3.8.2.4 page 97
Start date/time of repeat rule.
|
protected java.util.Collection<I> |
editOne(VComponent<I> vComponentOriginal,
java.util.Collection<VComponent<I>> vComponents,
java.time.temporal.Temporal startOriginalInstance,
java.time.temporal.Temporal startInstance,
java.time.temporal.Temporal endInstance,
java.util.Collection<I> instances)
Edit one instance of a VEvent with a RRule.
|
protected java.util.Collection<I> |
editThisAndFuture(VComponent<I> vComponentOriginal,
java.util.Collection<VComponent<I>> vComponents,
java.time.temporal.Temporal startOriginalInstance,
java.time.temporal.Temporal startInstance,
java.time.temporal.Temporal endInstance,
java.util.Collection<I> instances)
Changing this and future instances in VComponent is done by ending the previous
VComponent with a UNTIL date or date/time and starting a new VComponent from
the selected instance.
|
javafx.beans.property.ObjectProperty<ExDate> |
exDateProperty()
EXDATE: Set of date/times exceptions for recurring events, to-dos, journal entries.
|
java.lang.String |
getCategories()
CATEGORIES: RFC 5545 iCalendar 3.8.1.12.
|
Comment |
getComment()
COMMENT: RFC 5545 iCalendar 3.8.1.12.
|
java.time.ZonedDateTime |
getDateTimeCreated()
CREATED: Date-Time Created, from RFC 5545 iCalendar 3.8.7.1 page 136
This property specifies the date and time that the calendar information was created.
|
java.time.ZonedDateTime |
getDateTimeLastModified()
LAST-MODIFIED: Date-Time Last Modified, from RFC 5545 iCalendar 3.8.7.3 page 138
This property specifies the date and time that the information associated with
the calendar component was last revised.
|
java.time.temporal.Temporal |
getDateTimeRecurrence()
RECURRENCE-ID: date or date-time recurrence, from RFC 5545 iCalendar 3.8.4.4 page 112
The property value is the original value of the "DTSTART" property of the
recurrence instance.
|
java.time.ZonedDateTime |
getDateTimeStamp()
DTSTAMP: Date-Time Stamp, from RFC 5545 iCalendar 3.8.7.2 page 137
This property specifies the date and time that the instance of the
iCalendar object was created
The value MUST be specified in the UTC time format.
|
java.time.temporal.Temporal |
getDateTimeStart()
DTSTART: Date-Time Start, from RFC 5545 iCalendar 3.8.2.4 page 97
Start date/time of repeat rule.
|
java.time.temporal.Temporal |
getEndRange()
End of range for which recurrence instances are generated.
|
ExDate |
getExDate()
EXDATE: Set of date/times exceptions for recurring events, to-dos, journal entries.
|
java.lang.String |
getOrganizer()
ORGANIZER: RFC 5545 iCalendar 3.8.4.3.
|
VComponent<I> |
getParent()
If VComponent has RECURRENCE-ID this returns its parent component
|
RDate |
getRDate()
RDATE: Set of date/times for recurring events, to-dos, journal entries.
|
java.lang.String |
getRelatedTo()
RELATED-TO: This property is used to represent a relationship or reference between
one calendar component and another.
|
RRule |
getRRule()
RRULE, Recurrence Rule as defined in RFC 5545 iCalendar 3.8.5.3, page 122.
|
int |
getSequence()
SEQUENCE: RFC 5545 iCalendar 3.8.7.4.
|
java.time.temporal.Temporal |
getStartRange()
Start of range for which recurrence instances are generated.
|
Summary |
getSummary()
SUMMARY: RFC 5545 iCalendar 3.8.1.12.
|
javafx.util.Callback<java.lang.Void,java.lang.String> |
getUidGeneratorCallback()
Callback for creating unique uid values
|
java.lang.String |
getUniqueIdentifier()
UID, Unique identifier, as defined by RFC 5545, iCalendar 3.8.4.7 page 117
A globally unique identifier for the calendar component.
|
void |
handleDelete(java.util.Collection<VComponent<I>> vComponents,
java.time.temporal.Temporal startInstance,
I instance,
java.util.Collection<I> instances,
javafx.util.Callback<java.util.Map<ICalendarUtilities.ChangeDialogOption,VComponent.StartEndRange>,ICalendarUtilities.ChangeDialogOption> dialogCallback)
Deletes a VComponent.
|
boolean |
handleEdit(VComponent<I> vComponentOriginal,
java.util.Collection<VComponent<I>> vComponents,
java.time.temporal.Temporal startOriginalInstance,
java.time.temporal.Temporal startInstance,
java.time.temporal.Temporal endInstance,
java.util.Collection<I> instances,
javafx.util.Callback<java.util.Map<ICalendarUtilities.ChangeDialogOption,VComponent.StartEndRange>,ICalendarUtilities.ChangeDialogOption> dialogCallback)
Handles how an edited VComponent is processed.
|
java.util.Collection<I> |
instances()
The currently generated instances of the recurrence set.
|
boolean |
isExDatesOnOneLine()
true = put all Temporals on one line, false = use one line for each Temporal
|
boolean |
isGoogleRecurrenceUID()
Use Google UID extension instead of RELATED-TO to express
|
protected DateTimeUtilities.DateTimeType |
lastDtStartDateTimeType() |
javafx.beans.property.StringProperty |
organizerProperty()
ORGANIZER: RFC 5545 iCalendar 3.8.4.3.
|
java.time.temporal.Temporal |
previousStreamValue(java.time.temporal.Temporal value)
finds previous stream Temporal before input parameter value
|
javafx.beans.property.ObjectProperty<RDate> |
rDateProperty()
RDATE: Set of date/times for recurring events, to-dos, journal entries.
|
javafx.beans.property.StringProperty |
relatedToProperty()
RELATED-TO: This property is used to represent a relationship or reference between
one calendar component and another.
|
javafx.beans.property.ObjectProperty<RRule> |
rRuleProperty()
Recurrence Rule, RRULE, as defined in RFC 5545 iCalendar 3.8.5.3, page 122.
|
javafx.beans.property.IntegerProperty |
sequenceProperty()
SEQUENCE: RFC 5545 iCalendar 3.8.7.4.
|
void |
setCategories(java.lang.String value) |
void |
setComment(Comment comment) |
void |
setDateTimeCreated(java.time.ZonedDateTime dtCreated) |
void |
setDateTimeLastModified(java.time.ZonedDateTime dtLastModified) |
void |
setDateTimeRecurrence(java.time.temporal.Temporal dtRecurrence) |
void |
setDateTimeStamp(java.time.ZonedDateTime dtStamp) |
void |
setDateTimeStart(java.time.temporal.Temporal dtStart) |
void |
setEndRange(java.time.temporal.Temporal end)
End of range for which recurrence instances are generated.
|
void |
setExDate(ExDate exDate) |
void |
setExDatesOnOneLine(boolean b)
true = put all Temporals on one line, false = use one line for each Temporal
|
void |
setGoogleRecurrenceUID(boolean b) |
void |
setOrganizer(java.lang.String organizer) |
void |
setParent(VComponent<I> parent) |
void |
setRDate(RDate rDate) |
void |
setRelatedTo(java.lang.String uid) |
void |
setRRule(RRule rRule) |
void |
setSequence(int value) |
void |
setStartRange(java.time.temporal.Temporal start)
Start of range for which recurrence instances are generated.
|
void |
setSummary(Summary summary) |
void |
setUidGeneratorCallback(javafx.util.Callback<java.lang.Void,java.lang.String> uidCallback) |
void |
setUniqueIdentifier()
Set uniqueIdentifier by calling uidGeneratorCallback
|
void |
setUniqueIdentifier(java.lang.String uid) |
java.util.stream.Stream<java.time.temporal.Temporal> |
stream(java.time.temporal.Temporal start)
Stream of dates or date-times that indicate the series of start date-times of the event(s).
|
javafx.beans.property.ObjectProperty<Summary> |
summaryProperty()
SUMMARY: RFC 5545 iCalendar 3.8.1.12.
|
javafx.beans.property.StringProperty |
uniqueIdentifierProperty()
Unique identifier, UID as defined by RFC 5545, iCalendar 3.8.4.7 page 117
A globally unique identifier for the calendar component.
|
T |
withCategories(java.lang.String s) |
T |
withDateTimeCreated(java.time.ZonedDateTime dtCreated) |
T |
withDateTimeLastModified(java.time.ZonedDateTime dtLastModified) |
T |
withDateTimeRecurrence(java.time.temporal.Temporal dtRecurrence) |
T |
withDateTimeStamp(java.time.ZonedDateTime dtStamp) |
T |
withDateTimeStart(java.time.temporal.Temporal dtStart) |
T |
withEndRange(java.time.temporal.Temporal end) |
T |
withExDate(ExDate exDate) |
T |
withOrganizer(java.lang.String organizer) |
T |
withParent(VComponent<I> parent) |
T |
withRDate(RDate rDate) |
T |
withRelatedTo(java.lang.String uid) |
T |
withRRule(RRule rRule) |
T |
withSequence(int value) |
T |
withStartRange(java.time.temporal.Temporal start) |
T |
withSummary(java.lang.String summaryText) |
T |
withSummary(Summary summary) |
T |
withUniqueIdentifier(java.lang.String uid) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
countVComponents, errorString, findRelatedVComponents, findRelatedVComponents2, getDateTimeType, getZoneId, incrementSequence, isFirstRecurrence, isIndividual, isLastRecurrence, isRecurrenceSetEmpty, isStreamValue, isValid, isWholeDay, lastRecurrence, makeInstances, makeInstances, streamLimitedByRange, toComponentText
public javafx.beans.property.StringProperty categoriesProperty
CATEGORIES: RFC 5545 iCalendar 3.8.1.12. page 81 This property defines the categories for a calendar component. Example: CATEGORIES:APPOINTMENT,EDUCATION CATEGORIES:MEETING
categoriesProperty
in interface VComponent<I>
getCategories()
,
setCategories(String)
public javafx.beans.property.ObjectProperty<Comment> commentProperty
COMMENT: RFC 5545 iCalendar 3.8.1.12. page 83 This property specifies non-processing information intended to provide a comment to the calendar user. Example: COMMENT:The meeting really needs to include both ourselves and the customer. We can’t hold this meeting without them. As a matter of fact\, the venue for the meeting ought to be at their site. - - John
commentProperty
in interface VComponent<I>
getComment()
,
setComment(Comment)
public javafx.beans.property.ObjectProperty<java.time.ZonedDateTime> dateTimeCreatedProperty
CREATED: Date-Time Created, from RFC 5545 iCalendar 3.8.7.1 page 136 This property specifies the date and time that the calendar information was created. This is analogous to the creation date and time for a file in the file system.
dateTimeCreatedProperty
in interface VComponent<I>
getDateTimeCreated()
,
setDateTimeCreated(ZonedDateTime)
public javafx.beans.property.ObjectProperty<java.time.ZonedDateTime> dateTimeStampProperty
DTSTAMP: Date-Time Stamp, from RFC 5545 iCalendar 3.8.7.2 page 137 This property specifies the date and time that the instance of the iCalendar object was created
dateTimeStampProperty
in interface VComponent<I>
getDateTimeStamp()
,
setDateTimeStamp(ZonedDateTime)
public javafx.beans.property.ObjectProperty<java.time.temporal.Temporal> dateTimeStartProperty
DTSTART: Date-Time Start, from RFC 5545 iCalendar 3.8.2.4 page 97 Start date/time of repeat rule. Used as a starting point for making the Stream<LocalDateTime> of valid start date/times of the repeating events. Can contain either a LocalDate (DATE) or LocalDateTime (DATE-TIME)
dateTimeStartProperty
in interface VComponent<I>
getDateTimeStart()
,
setDateTimeStart(Temporal)
public javafx.beans.property.ObjectProperty<ExDate> exDateProperty
EXDATE: Set of date/times exceptions for recurring events, to-dos, journal entries. 3.8.5.1, RFC 5545 iCalendar Is rarely used, so employs lazy initialization.
exDateProperty
in interface VComponent<I>
getExDate()
,
setExDate(ExDate)
public javafx.beans.property.ObjectProperty<java.time.ZonedDateTime> dateTimeLastModifiedProperty
LAST-MODIFIED: Date-Time Last Modified, from RFC 5545 iCalendar 3.8.7.3 page 138 This property specifies the date and time that the information associated with the calendar component was last revised.
The property value MUST be specified in the UTC time format.
dateTimeLastModifiedProperty
in interface VComponent<I>
getDateTimeLastModified()
,
setDateTimeLastModified(ZonedDateTime)
public javafx.beans.property.StringProperty organizerProperty
ORGANIZER: RFC 5545 iCalendar 3.8.4.3. page 111 This property defines the organizer for a calendar component Example: ORGANIZER;CN=John Smith:mailto:jsmith@example.com
The property is stored as a simple string. The implementation is responsible to extract any contained data elements such as CN, DIR, SENT-BY
organizerProperty
in interface VComponent<I>
getOrganizer()
,
setOrganizer(String)
public javafx.beans.property.ObjectProperty<RDate> rDateProperty
RDATE: Set of date/times for recurring events, to-dos, journal entries. 3.8.5.2, RFC 5545 iCalendar
rDateProperty
in interface VComponent<I>
getRDate()
,
setRDate(RDate)
public javafx.beans.property.StringProperty relatedToProperty
RELATED-TO: This property is used to represent a relationship or reference between one calendar component and another. By default, the property value points to another calendar component’s UID that has a PARENT relationship to the referencing object. This field is null unless the object contains as RECURRENCE-ID value. 3.8.4.5, RFC 5545 iCalendar
relatedToProperty
in interface VComponent<I>
getRelatedTo()
,
setRelatedTo(String)
public javafx.beans.property.ObjectProperty<java.time.temporal.Temporal> dateTimeRecurrenceProperty
RECURRENCE-ID: Date-Time recurrence, from RFC 5545 iCalendar 3.8.4.4 page 112 The property value is the original value of the "DTSTART" property of the recurrence instance.
dateTimeRecurrenceProperty
in interface VComponent<I>
getDateTimeRecurrence()
,
setDateTimeRecurrence(Temporal)
public javafx.beans.property.ObjectProperty<RRule> rRuleProperty
Recurrence Rule, RRULE, as defined in RFC 5545 iCalendar 3.8.5.3, page 122. If event is not repeating value is null
rRuleProperty
in interface VComponent<I>
getRRule()
,
setRRule(RRule)
public javafx.beans.property.IntegerProperty sequenceProperty
SEQUENCE: RFC 5545 iCalendar 3.8.7.4. page 138 This property defines the revision sequence number of the calendar component within a sequence of revisions. Example: The following is an example of this property for a calendar component that was just created by the "Organizer":
SEQUENCE:0
The following is an example of this property for a calendar component that has been revised two different times by the "Organizer":
SEQUENCE:2
sequenceProperty
in interface VComponent<I>
getSequence()
,
setSequence(int)
public javafx.beans.property.ObjectProperty<Summary> summaryProperty
SUMMARY: RFC 5545 iCalendar 3.8.1.12. page 83 This property defines a short summary or subject for the calendar component Example: SUMMARY:Department Party
summaryProperty
in interface VComponent<I>
getSummary()
,
setSummary(Summary)
public javafx.beans.property.StringProperty uniqueIdentifierProperty
Unique identifier, UID as defined by RFC 5545, iCalendar 3.8.4.7 page 117 A globally unique identifier for the calendar component. Included is an example UID generator. Other UID generators can be provided by setting the UID callback.
uniqueIdentifierProperty
in interface VComponent<I>
getUniqueIdentifier()
,
setUniqueIdentifier(String)
public VComponentBase(VComponentBase<I,T> vcomponent)
Copy constructor
public VComponentBase()
public javafx.beans.property.StringProperty categoriesProperty()
CATEGORIES: RFC 5545 iCalendar 3.8.1.12. page 81 This property defines the categories for a calendar component. Example: CATEGORIES:APPOINTMENT,EDUCATION CATEGORIES:MEETING
categoriesProperty
in interface VComponent<I>
getCategories()
,
setCategories(String)
public java.lang.String getCategories()
VComponent
CATEGORIES: RFC 5545 iCalendar 3.8.1.12. page 81 This property defines the categories for a calendar component. Example: CATEGORIES:APPOINTMENT,EDUCATION CATEGORIES:MEETING
getCategories
in interface VComponent<I>
public void setCategories(java.lang.String value)
setCategories
in interface VComponent<I>
public T withCategories(java.lang.String s)
public javafx.beans.property.ObjectProperty<Comment> commentProperty()
COMMENT: RFC 5545 iCalendar 3.8.1.12. page 83 This property specifies non-processing information intended to provide a comment to the calendar user. Example: COMMENT:The meeting really needs to include both ourselves and the customer. We can’t hold this meeting without them. As a matter of fact\, the venue for the meeting ought to be at their site. - - John
commentProperty
in interface VComponent<I>
getComment()
,
setComment(Comment)
public Comment getComment()
VComponent
COMMENT: RFC 5545 iCalendar 3.8.1.12. page 83 This property specifies non-processing information intended to provide a comment to the calendar user. Example: COMMENT:The meeting really needs to include both ourselves and the customer. We can’t hold this meeting without them. As a matter of fact\, the venue for the meeting ought to be at their site. - - John
getComment
in interface VComponent<I>
public void setComment(Comment comment)
setComment
in interface VComponent<I>
public javafx.beans.property.ObjectProperty<java.time.ZonedDateTime> dateTimeCreatedProperty()
CREATED: Date-Time Created, from RFC 5545 iCalendar 3.8.7.1 page 136 This property specifies the date and time that the calendar information was created. This is analogous to the creation date and time for a file in the file system.
dateTimeCreatedProperty
in interface VComponent<I>
getDateTimeCreated()
,
setDateTimeCreated(ZonedDateTime)
public java.time.ZonedDateTime getDateTimeCreated()
VComponent
CREATED: Date-Time Created, from RFC 5545 iCalendar 3.8.7.1 page 136 This property specifies the date and time that the calendar information was created. This is analogous to the creation date and time for a file in the file system. The value MUST be specified in the UTC time format.
getDateTimeCreated
in interface VComponent<I>
public void setDateTimeCreated(java.time.ZonedDateTime dtCreated)
setDateTimeCreated
in interface VComponent<I>
public T withDateTimeCreated(java.time.ZonedDateTime dtCreated)
public javafx.beans.property.ObjectProperty<java.time.ZonedDateTime> dateTimeStampProperty()
DTSTAMP: Date-Time Stamp, from RFC 5545 iCalendar 3.8.7.2 page 137 This property specifies the date and time that the instance of the iCalendar object was created
dateTimeStampProperty
in interface VComponent<I>
getDateTimeStamp()
,
setDateTimeStamp(ZonedDateTime)
public java.time.ZonedDateTime getDateTimeStamp()
VComponent
DTSTAMP: Date-Time Stamp, from RFC 5545 iCalendar 3.8.7.2 page 137 This property specifies the date and time that the instance of the iCalendar object was created The value MUST be specified in the UTC time format.
getDateTimeStamp
in interface VComponent<I>
public void setDateTimeStamp(java.time.ZonedDateTime dtStamp)
setDateTimeStamp
in interface VComponent<I>
public T withDateTimeStamp(java.time.ZonedDateTime dtStamp)
protected DateTimeUtilities.DateTimeType lastDtStartDateTimeType()
public javafx.beans.property.ObjectProperty<java.time.temporal.Temporal> dateTimeStartProperty()
DTSTART: Date-Time Start, from RFC 5545 iCalendar 3.8.2.4 page 97 Start date/time of repeat rule. Used as a starting point for making the Stream<LocalDateTime> of valid start date/times of the repeating events. Can contain either a LocalDate (DATE) or LocalDateTime (DATE-TIME)
dateTimeStartProperty
in interface VComponent<I>
getDateTimeStart()
,
setDateTimeStart(Temporal)
public java.time.temporal.Temporal getDateTimeStart()
VComponent
DTSTART: Date-Time Start, from RFC 5545 iCalendar 3.8.2.4 page 97 Start date/time of repeat rule. Used as a starting point for making the Stream<LocalDateTime> of valid start date/times of the repeating events. Can be either type LocalDate or LocalDateTime
getDateTimeStart
in interface VComponent<I>
public void setDateTimeStart(java.time.temporal.Temporal dtStart)
setDateTimeStart
in interface VComponent<I>
public T withDateTimeStart(java.time.temporal.Temporal dtStart)
public javafx.beans.property.ObjectProperty<ExDate> exDateProperty()
EXDATE: Set of date/times exceptions for recurring events, to-dos, journal entries. 3.8.5.1, RFC 5545 iCalendar Is rarely used, so employs lazy initialization.
exDateProperty
in interface VComponent<I>
getExDate()
,
setExDate(ExDate)
public ExDate getExDate()
VComponent
EXDATE: Set of date/times exceptions for recurring events, to-dos, journal entries. 3.8.5.1, RFC 5545 iCalendar Is rarely used, so employs lazy initialization.
getExDate
in interface VComponent<I>
public void setExDate(ExDate exDate)
setExDate
in interface VComponent<I>
public boolean isExDatesOnOneLine()
true = put all Temporals on one line, false = use one line for each Temporal
isExDatesOnOneLine
in interface VComponent<I>
public void setExDatesOnOneLine(boolean b)
true = put all Temporals on one line, false = use one line for each Temporal
public javafx.beans.property.ObjectProperty<java.time.ZonedDateTime> dateTimeLastModifiedProperty()
LAST-MODIFIED: Date-Time Last Modified, from RFC 5545 iCalendar 3.8.7.3 page 138 This property specifies the date and time that the information associated with the calendar component was last revised.
The property value MUST be specified in the UTC time format.
dateTimeLastModifiedProperty
in interface VComponent<I>
getDateTimeLastModified()
,
setDateTimeLastModified(ZonedDateTime)
public java.time.ZonedDateTime getDateTimeLastModified()
VComponent
LAST-MODIFIED: Date-Time Last Modified, from RFC 5545 iCalendar 3.8.7.3 page 138 This property specifies the date and time that the information associated with the calendar component was last revised.
The property value MUST be specified in the UTC time format.
getDateTimeLastModified
in interface VComponent<I>
public void setDateTimeLastModified(java.time.ZonedDateTime dtLastModified)
setDateTimeLastModified
in interface VComponent<I>
public T withDateTimeLastModified(java.time.ZonedDateTime dtLastModified)
public javafx.beans.property.StringProperty organizerProperty()
ORGANIZER: RFC 5545 iCalendar 3.8.4.3. page 111 This property defines the organizer for a calendar component Example: ORGANIZER;CN=John Smith:mailto:jsmith@example.com
The property is stored as a simple string. The implementation is responsible to extract any contained data elements such as CN, DIR, SENT-BY
organizerProperty
in interface VComponent<I>
getOrganizer()
,
setOrganizer(String)
public java.lang.String getOrganizer()
VComponent
ORGANIZER: RFC 5545 iCalendar 3.8.4.3. page 111 This property defines the organizer for a calendar component Example: ORGANIZER;CN=John Smith:mailto:jsmith@example.com
The property is stored as a simple string. The implementation is responsible to extract any contained data elements such as CN, DIR, SENT-BY
getOrganizer
in interface VComponent<I>
public void setOrganizer(java.lang.String organizer)
setOrganizer
in interface VComponent<I>
public T withOrganizer(java.lang.String organizer)
public javafx.beans.property.ObjectProperty<RDate> rDateProperty()
RDATE: Set of date/times for recurring events, to-dos, journal entries. 3.8.5.2, RFC 5545 iCalendar
rDateProperty
in interface VComponent<I>
getRDate()
,
setRDate(RDate)
public RDate getRDate()
VComponent
RDATE: Set of date/times for recurring events, to-dos, journal entries. 3.8.5.2, RFC 5545 iCalendar
getRDate
in interface VComponent<I>
public void setRDate(RDate rDate)
setRDate
in interface VComponent<I>
public javafx.beans.property.StringProperty relatedToProperty()
RELATED-TO: This property is used to represent a relationship or reference between one calendar component and another. By default, the property value points to another calendar component’s UID that has a PARENT relationship to the referencing object. This field is null unless the object contains as RECURRENCE-ID value. 3.8.4.5, RFC 5545 iCalendar
relatedToProperty
in interface VComponent<I>
getRelatedTo()
,
setRelatedTo(String)
public java.lang.String getRelatedTo()
VComponent
RELATED-TO: This property is used to represent a relationship or reference between one calendar component and another. By default, the property value points to another calendar component’s UID that has a PARENT relationship to the referencing object. This field is null unless the object contains as RECURRENCE-ID value. 3.8.4.5, RFC 5545 iCalendar
getRelatedTo
in interface VComponent<I>
public void setRelatedTo(java.lang.String uid)
setRelatedTo
in interface VComponent<I>
public T withRelatedTo(java.lang.String uid)
public boolean isGoogleRecurrenceUID()
Use Google UID extension instead of RELATED-TO to express
isGoogleRecurrenceUID
in interface VComponent<I>
public void setGoogleRecurrenceUID(boolean b)
setGoogleRecurrenceUID
in interface VComponent<I>
public javafx.beans.property.ObjectProperty<java.time.temporal.Temporal> dateTimeRecurrenceProperty()
RECURRENCE-ID: Date-Time recurrence, from RFC 5545 iCalendar 3.8.4.4 page 112 The property value is the original value of the "DTSTART" property of the recurrence instance.
dateTimeRecurrenceProperty
in interface VComponent<I>
getDateTimeRecurrence()
,
setDateTimeRecurrence(Temporal)
public java.time.temporal.Temporal getDateTimeRecurrence()
VComponent
RECURRENCE-ID: date or date-time recurrence, from RFC 5545 iCalendar 3.8.4.4 page 112 The property value is the original value of the "DTSTART" property of the recurrence instance.
getDateTimeRecurrence
in interface VComponent<I>
public void setDateTimeRecurrence(java.time.temporal.Temporal dtRecurrence)
setDateTimeRecurrence
in interface VComponent<I>
public T withDateTimeRecurrence(java.time.temporal.Temporal dtRecurrence)
public VComponent<I> getParent()
VComponent
If VComponent has RECURRENCE-ID this returns its parent component
getParent
in interface VComponent<I>
public void setParent(VComponent<I> parent)
setParent
in interface VComponent<I>
public T withParent(VComponent<I> parent)
public javafx.beans.property.ObjectProperty<RRule> rRuleProperty()
Recurrence Rule, RRULE, as defined in RFC 5545 iCalendar 3.8.5.3, page 122. If event is not repeating value is null
rRuleProperty
in interface VComponent<I>
getRRule()
,
setRRule(RRule)
public RRule getRRule()
VComponent
RRULE, Recurrence Rule as defined in RFC 5545 iCalendar 3.8.5.3, page 122. This property defines a rule or repeating pattern for recurring events, to-dos, journal entries, or time zone definitions If component is not repeating the value is null.
getRRule
in interface VComponent<I>
public void setRRule(RRule rRule)
setRRule
in interface VComponent<I>
public javafx.beans.property.IntegerProperty sequenceProperty()
SEQUENCE: RFC 5545 iCalendar 3.8.7.4. page 138 This property defines the revision sequence number of the calendar component within a sequence of revisions. Example: The following is an example of this property for a calendar component that was just created by the "Organizer":
SEQUENCE:0
The following is an example of this property for a calendar component that has been revised two different times by the "Organizer":
SEQUENCE:2
sequenceProperty
in interface VComponent<I>
getSequence()
,
setSequence(int)
public int getSequence()
VComponent
SEQUENCE: RFC 5545 iCalendar 3.8.7.4. page 138 This property defines the revision sequence number of the calendar component within a sequence of revisions. Example: The following is an example of this property for a calendar component that was just created by the "Organizer":
SEQUENCE:0
The following is an example of this property for a calendar component that has been revised two different times by the "Organizer":
SEQUENCE:2
getSequence
in interface VComponent<I>
public void setSequence(int value)
setSequence
in interface VComponent<I>
public T withSequence(int value)
public javafx.beans.property.ObjectProperty<Summary> summaryProperty()
SUMMARY: RFC 5545 iCalendar 3.8.1.12. page 83 This property defines a short summary or subject for the calendar component Example: SUMMARY:Department Party
summaryProperty
in interface VComponent<I>
getSummary()
,
setSummary(Summary)
public Summary getSummary()
VComponent
SUMMARY: RFC 5545 iCalendar 3.8.1.12. page 83 This property defines a short summary or subject for the calendar component Example: SUMMARY:Department Party
getSummary
in interface VComponent<I>
public void setSummary(Summary summary)
setSummary
in interface VComponent<I>
public T withSummary(java.lang.String summaryText)
public javafx.beans.property.StringProperty uniqueIdentifierProperty()
Unique identifier, UID as defined by RFC 5545, iCalendar 3.8.4.7 page 117 A globally unique identifier for the calendar component. Included is an example UID generator. Other UID generators can be provided by setting the UID callback.
uniqueIdentifierProperty
in interface VComponent<I>
getUniqueIdentifier()
,
setUniqueIdentifier(String)
public java.lang.String getUniqueIdentifier()
VComponent
UID, Unique identifier, as defined by RFC 5545, iCalendar 3.8.4.7 page 117 A globally unique identifier for the calendar component. Included is an example UID generator. Other UID generators can be provided by setting the UID callback.
getUniqueIdentifier
in interface VComponent<I>
public void setUniqueIdentifier(java.lang.String uid)
setUniqueIdentifier
in interface VComponent<I>
public void setUniqueIdentifier()
Set uniqueIdentifier by calling uidGeneratorCallback
public T withUniqueIdentifier(java.lang.String uid)
public javafx.util.Callback<java.lang.Void,java.lang.String> getUidGeneratorCallback()
Callback for creating unique uid values
getUidGeneratorCallback
in interface VComponent<I>
public void setUidGeneratorCallback(javafx.util.Callback<java.lang.Void,java.lang.String> uidCallback)
setUidGeneratorCallback
in interface VComponent<I>
public java.time.temporal.Temporal getStartRange()
Start of range for which recurrence instances are generated. Should match the dates displayed on the calendar. This property is not a part of the iCalendar standard
getStartRange
in interface VComponent<I>
public void setStartRange(java.time.temporal.Temporal start)
VComponent
Start of range for which recurrence instances are generated. Should match the start date displayed on the calendar. This is not a part of an iCalendar VComponent.
setStartRange
in interface VComponent<I>
public T withStartRange(java.time.temporal.Temporal start)
public java.time.temporal.Temporal getEndRange()
End of range for which recurrence instances are generated. Should match the dates displayed on the calendar.
getEndRange
in interface VComponent<I>
public void setEndRange(java.time.temporal.Temporal end)
VComponent
End of range for which recurrence instances are generated. Should match the end date displayed on the calendar. This is not a part of an iCalendar VComponent.
setEndRange
in interface VComponent<I>
public T withEndRange(java.time.temporal.Temporal end)
public java.util.Collection<I> instances()
The currently generated instances of the recurrence set. 3.8.5.2 defines the recurrence set as the complete set of recurrence instances for a calendar component. As many RRule definitions are infinite sets, a complete representation is not possible. The set only contains the events inside the bounds of
instances
in interface VComponent<I>
makeRecurrenceSet
public boolean handleEdit(VComponent<I> vComponentOriginal, java.util.Collection<VComponent<I>> vComponents, java.time.temporal.Temporal startOriginalInstance, java.time.temporal.Temporal startInstance, java.time.temporal.Temporal endInstance, java.util.Collection<I> instances, javafx.util.Callback<java.util.Map<ICalendarUtilities.ChangeDialogOption,VComponent.StartEndRange>,ICalendarUtilities.ChangeDialogOption> dialogCallback)
VComponent
Handles how an edited VComponent is processed. For a VComponent with a recurrence rule (RRULE) the user is given a dialog to select ONE, THIS_AND_FUTURE, or ALL instances to edit. For a VComponent without a RRULE there is no dialog.
This VComponent should have all changes made to it by the controller, except date-time changes that depend on the answer to the dialog question
handleEdit
in interface VComponent<I>
vComponentOriginal
- - copy of this VComponent before changesvComponents
- - collection of all VComponentsstartOriginalInstance
- - date or date/time of selected instance before changesstartInstance
- - date or date/time of selected instance after changesendInstance
- - date or date/time of selected instance after changes (null for VTODO and VJOURNAL)instances
- - all instances being rendered by all VComponentsdialogCallback
- - callback to generate dialog to select ONE, THIS_AND_FUTURE, or ALL.
Note: Can use a stub for testing (e.g. (m) → ChangeDialogOption.ALL).protected java.util.Collection<java.lang.String> changedStartAndEndDateTime(java.time.temporal.Temporal startOriginalInstance, java.time.temporal.Temporal startInstance, java.time.temporal.Temporal endInstance)
returns list of date-time properties that have been edited (DTSTART)
protected void becomingIndividual(VComponent<I> vComponentOriginal, java.time.temporal.Temporal startInstance, java.time.temporal.Temporal endInstance)
Part of handleEdit. Changes a VComponent with a RRULE to be an individual,
vComponentOriginal
- startInstance
- endInstance
- handleEdit(VComponent, Collection, Temporal, Temporal, Temporal, Collection, Callback)
protected java.util.Collection<I> editOne(VComponent<I> vComponentOriginal, java.util.Collection<VComponent<I>> vComponents, java.time.temporal.Temporal startOriginalInstance, java.time.temporal.Temporal startInstance, java.time.temporal.Temporal endInstance, java.util.Collection<I> instances)
Edit one instance of a VEvent with a RRule. The instance becomes a new VEvent without a RRule as with the same UID as the parent and a recurrence-id for the replaced date or date/time.
#handleEdit(VComponent, Collection, Temporal, Temporal, Temporal, Collection)
protected java.util.Collection<I> editThisAndFuture(VComponent<I> vComponentOriginal, java.util.Collection<VComponent<I>> vComponents, java.time.temporal.Temporal startOriginalInstance, java.time.temporal.Temporal startInstance, java.time.temporal.Temporal endInstance, java.util.Collection<I> instances)
Changing this and future instances in VComponent is done by ending the previous VComponent with a UNTIL date or date/time and starting a new VComponent from the selected instance. EXDATE, RDATE and RECURRENCES are split between both VComponents. vEventNew has new settings, vEvent has former settings.
endInstance
- <T>
- VComponent#handleEdit(VComponent, Collection, Temporal, Temporal, Temporal, Collection)
public void handleDelete(java.util.Collection<VComponent<I>> vComponents, java.time.temporal.Temporal startInstance, I instance, java.util.Collection<I> instances, javafx.util.Callback<java.util.Map<ICalendarUtilities.ChangeDialogOption,VComponent.StartEndRange>,ICalendarUtilities.ChangeDialogOption> dialogCallback)
VComponent
Deletes a VComponent. For a VComponent with a recurrence rule (RRULE) the user is given a dialog to select ONE, THIS_AND_FUTURE, or ALL instances to delete.
handleDelete
in interface VComponent<I>
vComponents
- - collection of all VComponentsstartInstance
- - start date or date/time of instanceinstance
- - selected recurrence instanceinstances
- - collection of all instances across all VComponentsdialogCallback
- - callback to generate dialog to select ONE, THIS_AND_FUTURE, or ALL.
Note: Can use a stub for testing (e.g. (m) → ChangeDialogOption.ALL).public void copyTo(VComponent<I> destination)
Deep copy all fields from source to destination
copyTo
in interface VComponent<I>
public java.time.temporal.Temporal previousStreamValue(java.time.temporal.Temporal value)
finds previous stream Temporal before input parameter value
value
- public java.util.stream.Stream<java.time.temporal.Temporal> stream(java.time.temporal.Temporal start)
VComponent
Stream of dates or date-times that indicate the series of start date-times of the event(s). iCalendar calls this series the recurrence set. For a VEvent without RRULE or RDATE the stream will contain only one element. In a VEvent with a RRULE the stream should contain more than one date/time element. It is possible to define a single-event RRULE, but it is not advisable. The stream will be infinite if COUNT or UNTIL is not present. The stream has an end when COUNT or UNTIL condition is met. The stream starts on startDateTime, which must be a valid event date/time, not necessarily the first date/time (DTSTART) in the sequence.
Start date/times are only produced between the ranges set by setDateTimeRanges
stream
in interface VComponent<I>
start
- - start dates or date/times produced after this date. If not on an occurrence,
it will be adjusted to be the next occurrence