iCal4j Extensions is a Java library that provides support for widely used non-standard iCalendar objects (i.e. properties and parameters). These model extensions are implemented via the custom object registry support in iCal4j.
To add support for extensions you may register the required factories with your CalendarBuilder instance:
CalendarParser parser = CalendarParserFactory.getInstance().createParser();
PropertyFactoryRegistry propertyFactoryRegistry = new PropertyFactoryRegistry();
propertyFactoryRegistry.register(WrTimezone.PROPERTY_NAME, WrTimezone.FACTORY);
propertyFactoryRegistry.register(WrCalName.PROPERTY_NAME, WrCalName.FACTORY);
ParameterFactoryRegistry parameterFactoryRegistry = new ParameterFactoryRegistry();
TimeZoneRegistry tzRegistry = TimeZoneRegistryFactory.getInstance().createRegistry();
builder = new CalendarBuilder(parser, propertyFactoryRegistry, parameterFactoryRegistry, tzRegistry);
iCal4j Extensions requires a minimum of Java 5 due to the use of features introduced in this version.
-
draft-ietf-calext-eventpub-extensions - Event Publishing Extensions to iCalendar
-
draft-ietf-calext-valarm-extensions - VALARM Extensions for iCalendar
-
draft-apthorp-ical-tasks - Task Extensions to iCalendar
-
draft-ietf-calext-ical-relations - Support for iCalendar Relationships
-
draft-ietf-calext-icalendar-series - Support for Series in iCalendar
-
RFC6638 - Scheduling Extensions to CalDAV
-
RFC8607 - Calendaring Extensions to WebDAV (CalDAV): Managed Attachments