Skip to content

ical4j/ical4j-extensions

Repository files navigation

iCal4j Extensions

Java support for non-standard extensions to the iCalendar and vCard format specifications.

Overview

iCal4j Extensions is a Java library that provides additional properties and parameters for iCalendar and vCard object models. These model extensions are implemented via the custom registry support in iCal4j.

This library also includes a collection of strategies for object model construction using opinionated fields designed to be more intuitive and easier to use.

Usage

Factory Support

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);

Strategies

TBD.

Minimum requirements

iCal4j Extensions requires a minimum of Java 11.

References: