public class Calendar
extends java.lang.Object
implements java.io.Serializable
4.6 Calendar Components The body of the iCalendar object consists of a sequence of calendar properties and one or more calendar components. The calendar properties are attributes that apply to the calendar as a whole. The calendar components are collections of properties that express a particular calendar semantic. For example, the calendar component can specify an event, a to-do, a journal entry, time zone information, or free/busy time information, or an alarm. The body of the iCalendar object is defined by the following notation: icalbody = calprops component calprops = 2*( ; 'prodid' and 'version' are both REQUIRED, ; but MUST NOT occur more than once prodid /version / ; 'calscale' and 'method' are optional, ; but MUST NOT occur more than once calscale / method / x-prop ) component = 1*(eventc / todoc / journalc / freebusyc / / timezonec / iana-comp / x-comp) iana-comp = "BEGIN" ":" iana-token CRLF 1*contentline "END" ":" iana-token CRLF x-comp = "BEGIN" ":" x-name CRLF 1*contentline "END" ":" x-name CRLFExample 1 - Creating a new calendar:
Calendar calendar = new Calendar();
calendar.getProperties().add(new ProdId("-//Ben Fortuna//iCal4j 1.0//EN"));
calendar.getProperties().add(Version.VERSION_2_0);
calendar.getProperties().add(CalScale.GREGORIAN);
// Add events, etc..
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
BEGIN
Begin token.
|
static java.lang.String |
END
End token.
|
static java.lang.String |
VCALENDAR
Calendar token.
|
Constructor and Description |
---|
Calendar()
Default constructor.
|
Calendar(Calendar c)
Creates a deep copy of the specified calendar.
|
Calendar(ComponentList<CalendarComponent> components)
Constructs a new calendar with no properties and the specified components.
|
Calendar(PropertyList p,
ComponentList<CalendarComponent> c)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object arg0) |
CalScale |
getCalendarScale()
Returns the optional calscale property.
|
CalendarComponent |
getComponent(java.lang.String name)
Convenience method for retrieving a named component.
|
ComponentList<CalendarComponent> |
getComponents() |
<C extends CalendarComponent> |
getComponents(java.lang.String name)
Convenience method for retrieving a list of named components.
|
Method |
getMethod()
Returns the optional method property.
|
ProdId |
getProductId()
Returns the mandatory prodid property.
|
PropertyList |
getProperties() |
PropertyList |
getProperties(java.lang.String name)
Convenience method for retrieving a list of named properties.
|
Property |
getProperty(java.lang.String name)
Convenience method for retrieving a named property.
|
Version |
getVersion()
Returns the mandatory version property.
|
int |
hashCode() |
java.lang.String |
toString() |
void |
validate()
Perform validation on the calendar, its properties and its components in its current state.
|
void |
validate(boolean recurse)
Perform validation on the calendar in its current state.
|
public static final java.lang.String BEGIN
public static final java.lang.String VCALENDAR
public static final java.lang.String END
public Calendar()
public Calendar(ComponentList<CalendarComponent> components)
components
- a list of components to add to the calendarpublic Calendar(PropertyList p, ComponentList<CalendarComponent> c)
p
- a list of propertiesc
- a list of componentspublic Calendar(Calendar c) throws java.text.ParseException, java.io.IOException, java.net.URISyntaxException
c
- the calendar to copyjava.io.IOException
- where an error occurs reading calendar datajava.text.ParseException
- where calendar parsing failsjava.net.URISyntaxException
- where an invalid URI string is encounteredpublic final java.lang.String toString()
toString
in class java.lang.Object
public final ComponentList<CalendarComponent> getComponents()
public final <C extends CalendarComponent> ComponentList<C> getComponents(java.lang.String name)
name
- name of components to retrievepublic final CalendarComponent getComponent(java.lang.String name)
name
- name of the component to retrievepublic final PropertyList getProperties()
public final PropertyList getProperties(java.lang.String name)
name
- name of properties to retrievepublic final Property getProperty(java.lang.String name)
name
- name of the property to retrievepublic final void validate() throws ValidationException
ValidationException
- where the calendar is not in a valid statepublic void validate(boolean recurse) throws ValidationException
recurse
- indicates whether to validate the calendar's properties and componentsValidationException
- where the calendar is not in a valid statepublic final ProdId getProductId()
public final Version getVersion()
public final CalScale getCalendarScale()
public final Method getMethod()
public final boolean equals(java.lang.Object arg0)
equals
in class java.lang.Object
public final int hashCode()
hashCode
in class java.lang.Object