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<Property> properties,
ComponentList<CalendarComponent> components)
Initialise a Calendar object using the default configured validator.
|
Calendar(PropertyList<Property> p,
ComponentList<CalendarComponent> c,
Validator<Calendar> validator)
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<Property> |
getProperties() |
PropertyList<Property> |
getProperties(java.lang.String name)
Convenience method for retrieving a list of named properties.
|
<T extends 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<Property> properties, ComponentList<CalendarComponent> components)
properties
- a list of initial calendar propertiescomponents
- a list of initial calendar componentspublic Calendar(PropertyList<Property> p, ComponentList<CalendarComponent> c, Validator<Calendar> validator)
p
- a list of propertiesc
- a list of componentsvalidator
- used to ensure the validity of the calendar instancepublic 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<Property> getProperties()
public final PropertyList<Property> getProperties(java.lang.String name)
name
- name of properties to retrievepublic final <T extends Property> T 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