public class VCalendar extends VParentBase
iCalendar Object RFC 5545, 3.4, page 50
Parent calendar object represents a collection of calendaring and scheduling information
Type | Property and Description |
---|---|
javafx.beans.property.ObjectProperty<javafx.collections.ObservableList<NonStandardProperty>> |
nonStandard
Provides a framework for defining non-standard properties.
|
Constructor and Description |
---|
VCalendar()
Creates an empty VCalendar
|
VCalendar(VCalendar source)
Copy constructor
|
Modifier and Type | Method and Description |
---|---|
boolean |
addAllVComponents(java.util.Collection<? extends VComponent> newVComponents)
Add a collection of
VComponent to the correct ObservableList based on
its type, such as VEVENT, VTODO, etc. |
boolean |
addAllVComponents(VComponent... newVComponents)
Add a varargs of
VComponent to the correct ObservableList based on
its type, such as VEVENT, VTODO, etc. |
void |
addVComponent(java.lang.String contentText)
Deprecated.
|
boolean |
addVComponent(VComponent newVComponent)
A convenience method that adds a VComponent to one of the ObservableLists based on
its type such as VEVENT, VTODO, etc.
|
void |
copyInto(VParent destination)
|
protected javafx.util.Callback<VChild,java.lang.Void> |
copyIntoCallback()
Deprecated.
|
java.util.List<java.lang.String> |
errors()
Produces a list of error messages indicating problems with calendar element
VElement.errors() is invoked recursively to return errors of child elements in addition to errors in parent |
java.util.List<VComponent> |
getAllVComponents()
Convenience method that returns all
VComponents regardless of type (e.g. |
CalendarScale |
getCalendarScale() |
AbstractITIPFactory |
getITIPFactory()
get AbstractITIPFactory to handle processing input VCalendar based on
Method |
Method |
getMethod() |
javafx.collections.ObservableList<NonStandardProperty> |
getNonStandard() |
ProductIdentifier |
getProductIdentifier() |
java.util.List<? extends VComponent> |
getVComponents(java.lang.Class<? extends VComponent> vComponentClass)
Convenience method that returns all
VComponents regardless of type (e.g. |
java.util.List<? extends VComponent> |
getVComponents(VComponent vComponent)
A convenience method that returns parent list of the
VComponent parameter. |
Version |
getVersion() |
javafx.collections.ObservableList<VEvent> |
getVEvents()
VEVENT: RFC 5545 iCalendar 3.6.1.
|
javafx.collections.ObservableList<VFreeBusy> |
getVFreeBusies()
VFREEBUSY: RFC 5545 iCalendar 3.6.4.
|
javafx.collections.ObservableList<VJournal> |
getVJournals()
VJOURNAL: RFC 5545 iCalendar 3.6.3.
|
javafx.collections.ObservableList<VTimeZone> |
getVTimeZones()
VTIMEZONE: RFC 5545 iCalendar 3.6.5.
|
javafx.collections.ObservableList<VTodo> |
getVTodos()
VTODO: RFC 5545 iCalendar 3.6.2.
|
VComponent |
importVComponent(java.lang.String contentText)
Deprecated.
|
java.util.List<java.lang.String> |
importVComponent(VComponent newVComponent)
Deprecated.
|
java.lang.String |
name()
<p>Returns the name of the component as it would appear in the iCalendar content line.</p>
<p>Examples:
<ul>
<li>VEVENT
<li>SUMMARY
<li>LANGUAGE
</ul>
</p>
|
javafx.beans.property.ObjectProperty<javafx.collections.ObservableList<NonStandardProperty>> |
nonStandardProperty()
Provides a framework for defining non-standard properties.
|
static VCalendar |
parse(java.nio.file.Path icsFilePath)
Creates a new VCalendar from an ics file
|
static VCalendar |
parse(java.io.Reader reader) |
static VCalendar |
parse(java.lang.String contentLines) |
java.util.Map<VElement,java.util.List<java.lang.String>> |
parseContent(java.util.Iterator<java.lang.String> unfoldedLineIterator)
Parse unfolded content line iterator into calendar object
|
java.util.Map<VElement,java.util.List<java.lang.String>> |
parseContent(java.util.Iterator<java.lang.String> lineIterator,
boolean collectErrorMessages)
Parse unfolded content lines into calendar object
|
java.util.List<java.lang.String> |
parseContent(java.lang.String content)
Parse content line into calendar element.
|
static VCalendar |
parseICalendarFile(java.nio.file.Path icsFilePath)
Creates a new VCalendar from an ics file
|
static VCalendar |
parseICalendarFile(java.nio.file.Path icsFilePath,
boolean useResourceStatus)
Creates a new VCalendar from an ics file
|
java.util.List<java.lang.String> |
processITIPMessage(java.util.Collection<VCalendar> iTIPMessages)
Process the exchange of iCalendar object according to the iTIP methods identifies in RFC 5546
based on the methods in
getITIPFactory() |
java.util.List<java.lang.String> |
processITIPMessage(java.lang.String iTIPMessages)
Process the exchange of iCalendar object according to the iTIP methods identifies in RFC 5546.
|
java.util.List<java.lang.String> |
processITIPMessage(VCalendar... iTIPMessages)
Process the exchange of iCalendar object according to the iTIP methods identifies in RFC 5546
based on the methods in
getITIPFactory() |
boolean |
removeVComponent(VComponent vComponent) |
void |
setCalendarScale(CalendarScale calendarScale) |
void |
setCalendarScale(java.lang.String calendarScale) |
void |
setMethod(Method.MethodType method) |
void |
setMethod(Method method) |
void |
setMethod(java.lang.String method) |
void |
setMethodProcessFactory(AbstractITIPFactory iTIPFactory)
set AbstractITIPFactory to handle processing input VCalendar based on
Method |
void |
setNonStandard(javafx.collections.ObservableList<NonStandardProperty> nonStandardProps) |
void |
setProductIdentifier(ProductIdentifier productIdentifier) |
void |
setProductIdentifier(java.lang.String productIdentifier) |
void |
setVersion(java.lang.String version) |
void |
setVersion(Version version) |
void |
setVEvents(javafx.collections.ObservableList<VEvent> vEvents) |
void |
setVFreeBusys(javafx.collections.ObservableList<VFreeBusy> vFreeBusys) |
void |
setVJournals(javafx.collections.ObservableList<VJournal> vJournals) |
void |
setVTimeZones(javafx.collections.ObservableList<VTimeZone> vTimeZones) |
void |
setVTodos(javafx.collections.ObservableList<VTodo> vTodos) |
java.lang.String |
toString() |
java.util.Map<java.lang.String,java.util.List<VDisplayable<?>>> |
uidComponentsMap()
Map of Related Components - UID is key and List of all related VComponents is value.
|
VCalendar |
withCalendarScale(CalendarScale calendarScale) |
VCalendar |
withCalendarScale(java.lang.String calendarScale) |
VCalendar |
withMethod(Method.MethodType method) |
VCalendar |
withMethod(Method method) |
VCalendar |
withMethod(java.lang.String method) |
VCalendar |
withNonStandard(NonStandardProperty... nonStandardProps)
Sets the value of the
nonStandardProperty() from a vararg of NonStandardProperty objects. |
VCalendar |
withNonStandard(javafx.collections.ObservableList<NonStandardProperty> nonStandardProps)
Sets the value of the
nonStandardProperty() |
VCalendar |
withNonStandard(java.lang.String... nonStandardProps)
Sets the value of the
nonStandardProperty() by parsing a vararg of
iCalendar content text representing individual NonStandardProperty objects. |
VCalendar |
withProductIdentifier(ProductIdentifier productIdentifier) |
VCalendar |
withProductIdentifier(java.lang.String productIdentifier) |
VCalendar |
withVersion() |
VCalendar |
withVersion(java.lang.String version) |
VCalendar |
withVersion(Version version) |
VCalendar |
withVEvent(javafx.collections.ObservableList<VEvent> vEvents) |
VCalendar |
withVEvent(java.lang.String... vEvents) |
VCalendar |
withVEvents(VEvent... vEvents) |
VCalendar |
withVFreeBusy(javafx.collections.ObservableList<VFreeBusy> vFreeBusys) |
VCalendar |
withVFreeBusy(java.lang.String... vFreeBusys) |
VCalendar |
withVFreeBusys(VFreeBusy... vFreeBusys) |
VCalendar |
withVJournal(javafx.collections.ObservableList<VJournal> vJournals) |
VCalendar |
withVJournal(java.lang.String... vJournals) |
VCalendar |
withVJournals(VJournal... vJournals) |
VCalendar |
withVTimeZones(javafx.collections.ObservableList<VTimeZone> vTimeZones) |
VCalendar |
withVTimeZones(java.lang.String... vTimeZones) |
VCalendar |
withVTimeZones(VTimeZone... vTimeZones) |
VCalendar |
withVTodo(javafx.collections.ObservableList<VTodo> vTodos) |
VCalendar |
withVTodo(java.lang.String... vTodos) |
VCalendar |
withVTodos(VTodo... vTodos) |
childrenUnmodifiable, equals, hashCode, orderer, setContentLineGenerator, toContent
public javafx.beans.property.ObjectProperty<javafx.collections.ObservableList<NonStandardProperty>> nonStandardProperty
Provides a framework for defining non-standard properties.
getNonStandard()
,
setNonStandard(ObservableList)
public VCalendar()
Creates an empty VCalendar
public VCalendar(VCalendar source)
Copy constructor
public java.lang.String name()
VElement
<p>Returns the name of the component as it would appear in the iCalendar content line.</p> <p>Examples: <ul> <li>VEVENT <li>SUMMARY <li>LANGUAGE </ul> </p>
public CalendarScale getCalendarScale()
public void setCalendarScale(java.lang.String calendarScale)
public void setCalendarScale(CalendarScale calendarScale)
public VCalendar withCalendarScale(CalendarScale calendarScale)
public VCalendar withCalendarScale(java.lang.String calendarScale)
public Method getMethod()
public void setMethod(java.lang.String method)
public void setMethod(Method method)
public void setMethod(Method.MethodType method)
public VCalendar withMethod(Method.MethodType method)
public VCalendar withMethod(java.lang.String method)
public ProductIdentifier getProductIdentifier()
public void setProductIdentifier(java.lang.String productIdentifier)
public void setProductIdentifier(ProductIdentifier productIdentifier)
public VCalendar withProductIdentifier(ProductIdentifier productIdentifier)
public VCalendar withProductIdentifier(java.lang.String productIdentifier)
public Version getVersion()
public void setVersion(java.lang.String version)
public void setVersion(Version version)
public VCalendar withVersion(java.lang.String version)
public VCalendar withVersion()
public javafx.beans.property.ObjectProperty<javafx.collections.ObservableList<NonStandardProperty>> nonStandardProperty()
Provides a framework for defining non-standard properties.
getNonStandard()
,
setNonStandard(ObservableList)
public javafx.collections.ObservableList<NonStandardProperty> getNonStandard()
public void setNonStandard(javafx.collections.ObservableList<NonStandardProperty> nonStandardProps)
public VCalendar withNonStandard(java.lang.String... nonStandardProps)
Sets the value of the nonStandardProperty()
by parsing a vararg of
iCalendar content text representing individual NonStandardProperty
objects.
public VCalendar withNonStandard(javafx.collections.ObservableList<NonStandardProperty> nonStandardProps)
Sets the value of the nonStandardProperty()
public VCalendar withNonStandard(NonStandardProperty... nonStandardProps)
Sets the value of the nonStandardProperty()
from a vararg of NonStandardProperty
objects.
public javafx.collections.ObservableList<VEvent> getVEvents()
VEVENT: RFC 5545 iCalendar 3.6.1. page 52
A grouping of component properties that describe an event.
public void setVEvents(javafx.collections.ObservableList<VEvent> vEvents)
public VCalendar withVEvent(java.lang.String... vEvents)
public javafx.collections.ObservableList<VTodo> getVTodos()
VTODO: RFC 5545 iCalendar 3.6.2. page 55
A grouping of component properties that describe a task that needs to be completed.
public void setVTodos(javafx.collections.ObservableList<VTodo> vTodos)
public VCalendar withVTodo(java.lang.String... vTodos)
public javafx.collections.ObservableList<VJournal> getVJournals()
VJOURNAL: RFC 5545 iCalendar 3.6.3. page 57
A grouping of component properties that describe a task that needs to be completed.
VComponent
,
VJournal
public void setVJournals(javafx.collections.ObservableList<VJournal> vJournals)
public VCalendar withVJournal(java.lang.String... vJournals)
public javafx.collections.ObservableList<VFreeBusy> getVFreeBusies()
VFREEBUSY: RFC 5545 iCalendar 3.6.4. page 59
VFreeBusy
public void setVFreeBusys(javafx.collections.ObservableList<VFreeBusy> vFreeBusys)
public VCalendar withVFreeBusy(javafx.collections.ObservableList<VFreeBusy> vFreeBusys)
public VCalendar withVFreeBusy(java.lang.String... vFreeBusys)
public javafx.collections.ObservableList<VTimeZone> getVTimeZones()
VTIMEZONE: RFC 5545 iCalendar 3.6.5. page 62
VTimeZone
public void setVTimeZones(javafx.collections.ObservableList<VTimeZone> vTimeZones)
public VCalendar withVTimeZones(javafx.collections.ObservableList<VTimeZone> vTimeZones)
public VCalendar withVTimeZones(java.lang.String... vTimeZones)
public boolean addVComponent(VComponent newVComponent)
A convenience method that adds a VComponent to one of the ObservableLists based on its type such as VEVENT, VTODO, etc.
newVComponent
- - VComponent to addpublic boolean removeVComponent(VComponent vComponent)
@Deprecated public void addVComponent(java.lang.String contentText)
Create a VComponent by parsing component text and add it to the appropriate list
addVComponent(VComponent)
public boolean addAllVComponents(java.util.Collection<? extends VComponent> newVComponents)
Add a collection of VComponent
to the correct ObservableList based on
its type, such as VEVENT, VTODO, etc.
newVComponents
- collection of VComponent
to addpublic boolean addAllVComponents(VComponent... newVComponents)
Add a varargs of VComponent
to the correct ObservableList based on
its type, such as VEVENT, VTODO, etc.
newVComponents
- collection of VComponent
to addpublic java.util.List<VComponent> getAllVComponents()
Convenience method that returns all VComponents
regardless of type (e.g.
VEvent
, VTodo
, etc.)
VComponents
public java.util.List<? extends VComponent> getVComponents(java.lang.Class<? extends VComponent> vComponentClass)
Convenience method that returns all VComponents
regardless of type (e.g.
VEvent
, VTodo
, etc.)
VComponents
public java.util.List<? extends VComponent> getVComponents(VComponent vComponent)
A convenience method that returns parent list of the VComponent
parameter.
Returns null if component is not in any VComponent
list.
vComponent
- - VComponent to look uppublic void setMethodProcessFactory(AbstractITIPFactory iTIPFactory)
set AbstractITIPFactory to handle processing input VCalendar based on Method
public AbstractITIPFactory getITIPFactory()
get AbstractITIPFactory to handle processing input VCalendar based on Method
public java.util.List<java.lang.String> processITIPMessage(VCalendar... iTIPMessages)
Process the exchange of iCalendar object according to the iTIP methods identifies in RFC 5546
based on the methods in getITIPFactory()
iTIPMessages
- iTIP VCalendars to process with Method
populatedpublic java.util.List<java.lang.String> processITIPMessage(java.util.Collection<VCalendar> iTIPMessages)
Process the exchange of iCalendar object according to the iTIP methods identifies in RFC 5546
based on the methods in getITIPFactory()
iTIPMessages
- iTIP VCalendars to process with Method
populatedpublic java.util.List<java.lang.String> processITIPMessage(java.lang.String iTIPMessages)
Process the exchange of iCalendar object according to the iTIP methods identifies in RFC 5546. Input string can contain multiple iTIP VCALENDAR messages.
iTIPMessages
- iTIP VCalendar Message strings@Deprecated public VComponent importVComponent(java.lang.String contentText)
Parse component text to new VComponent with REQUEST-STATUS
properties containing
the result of the process, such as success message or error report.
contentText
- iCalendar content linesREQUEST-STATUS
populated to indicate success or failuer.@Deprecated public java.util.List<java.lang.String> importVComponent(VComponent newVComponent)
Import new VComponent with REQUEST-STATUS
properties containing
the result of the process, such as success message or error report.
contentText
- iCalendar content linespublic java.util.Map<java.lang.String,java.util.List<VDisplayable<?>>> uidComponentsMap()
Map of Related Components - UID is key and List of all related VComponents is value. Note: if you only want child components you need to filter the list to only include components that have a RECURRENCE-ID
@Deprecated protected javafx.util.Callback<VChild,java.lang.Void> copyIntoCallback()
VParentBase
Strategy to copy subclass’s children This method MUST be overridden in subclasses
copyIntoCallback
in class VParentBase
public void copyInto(VParent destination)
VParent
copyInto
in interface VParent
copyInto
in class VParentBase
public java.util.List<java.lang.String> errors()
VElement
Produces a list of error messages indicating problems with calendar element
VElement.errors()
is invoked recursively to return errors of child elements in addition to errors in parent
errors
in interface VElement
errors
in class VParentBase
public java.lang.String toString()
toString
in class java.lang.Object
public java.util.List<java.lang.String> parseContent(java.lang.String content)
VElement
Parse content line into calendar element.
If element contains children VElement.parseContent(String)
is invoked recursively to parse child elements also
content
- calendar content string to parsepublic java.util.Map<VElement,java.util.List<java.lang.String>> parseContent(java.util.Iterator<java.lang.String> unfoldedLineIterator)
Parse unfolded content line iterator into calendar object
public java.util.Map<VElement,java.util.List<java.lang.String>> parseContent(java.util.Iterator<java.lang.String> lineIterator, boolean collectErrorMessages)
Parse unfolded content lines into calendar object
public static VCalendar parse(java.io.Reader reader) throws java.io.IOException
java.io.IOException
public static VCalendar parse(java.nio.file.Path icsFilePath) throws java.io.IOException
Creates a new VCalendar from an ics file
icsFilePath
- path of ics file to parsejava.io.IOException
public static VCalendar parseICalendarFile(java.nio.file.Path icsFilePath, boolean useResourceStatus) throws java.io.IOException
Creates a new VCalendar from an ics file
icsFilePath
- path of ics file to parsejava.io.IOException
public static VCalendar parseICalendarFile(java.nio.file.Path icsFilePath) throws java.io.IOException
Creates a new VCalendar from an ics file
icsFilePath
- path of ics file to parsejava.io.IOException
public static VCalendar parse(java.lang.String contentLines)