Package net.fortuna.ical4j.model
Class Calendar
- java.lang.Object
-
- net.fortuna.ical4j.model.Calendar
-
- All Implemented Interfaces:
Serializable
public class Calendar extends Object implements Serializable
$Id$ [Apr 5, 2004] Defines an iCalendar calendar.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 CRLF
Example 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..
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor 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.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object arg0)
CalScale
getCalendarScale()
Returns the optional calscale property.CalendarComponent
getComponent(String name)
Convenience method for retrieving a named component.ComponentList<CalendarComponent>
getComponents()
<C extends CalendarComponent>
ComponentList<C>getComponents(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(String name)
Convenience method for retrieving a list of named properties.<T extends Property>
TgetProperty(String name)
Convenience method for retrieving a named property.Version
getVersion()
Returns the mandatory version property.int
hashCode()
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.
-
-
-
Field Detail
-
BEGIN
public static final String BEGIN
Begin token.- See Also:
- Constant Field Values
-
VCALENDAR
public static final String VCALENDAR
Calendar token.- See Also:
- Constant Field Values
-
END
public static final String END
End token.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Calendar
public Calendar()
Default constructor.
-
Calendar
public Calendar(ComponentList<CalendarComponent> components)
Constructs a new calendar with no properties and the specified components.- Parameters:
components
- a list of components to add to the calendar
-
Calendar
public Calendar(PropertyList<Property> properties, ComponentList<CalendarComponent> components)
Initialise a Calendar object using the default configured validator.- Parameters:
properties
- a list of initial calendar propertiescomponents
- a list of initial calendar components
-
Calendar
public Calendar(PropertyList<Property> p, ComponentList<CalendarComponent> c, Validator<Calendar> validator)
Constructor.- Parameters:
p
- a list of propertiesc
- a list of componentsvalidator
- used to ensure the validity of the calendar instance
-
Calendar
public Calendar(Calendar c) throws ParseException, IOException, URISyntaxException
Creates a deep copy of the specified calendar.- Parameters:
c
- the calendar to copy- Throws:
IOException
- where an error occurs reading calendar dataParseException
- where calendar parsing failsURISyntaxException
- where an invalid URI string is encountered
-
-
Method Detail
-
getComponents
public final ComponentList<CalendarComponent> getComponents()
- Returns:
- Returns the components.
-
getComponents
public final <C extends CalendarComponent> ComponentList<C> getComponents(String name)
Convenience method for retrieving a list of named components.- Parameters:
name
- name of components to retrieve- Returns:
- a component list containing only components with the specified name
-
getComponent
public final CalendarComponent getComponent(String name)
Convenience method for retrieving a named component.- Parameters:
name
- name of the component to retrieve- Returns:
- the first matching component in the component list with the specified name
-
getProperties
public final PropertyList<Property> getProperties()
- Returns:
- Returns the properties.
-
getProperties
public final PropertyList<Property> getProperties(String name)
Convenience method for retrieving a list of named properties.- Parameters:
name
- name of properties to retrieve- Returns:
- a property list containing only properties with the specified name
-
getProperty
public final <T extends Property> T getProperty(String name)
Convenience method for retrieving a named property.- Parameters:
name
- name of the property to retrieve- Returns:
- the first matching property in the property list with the specified name
-
validate
public final void validate() throws ValidationException
Perform validation on the calendar, its properties and its components in its current state.- Throws:
ValidationException
- where the calendar is not in a valid state
-
validate
public void validate(boolean recurse) throws ValidationException
Perform validation on the calendar in its current state.- Parameters:
recurse
- indicates whether to validate the calendar's properties and components- Throws:
ValidationException
- where the calendar is not in a valid state
-
getProductId
public final ProdId getProductId()
Returns the mandatory prodid property.- Returns:
- the PRODID property, or null if property doesn't exist
-
getVersion
public final Version getVersion()
Returns the mandatory version property.- Returns:
- the VERSION property, or null if property doesn't exist
-
getCalendarScale
public final CalScale getCalendarScale()
Returns the optional calscale property.- Returns:
- the CALSCALE property, or null if property doesn't exist
-
getMethod
public final Method getMethod()
Returns the optional method property.- Returns:
- the METHOD property, or null if property doesn't exist
-
-