The Dotify API provides interfaces for:

The API supports both SPI and OSGi runtime contexts.

Using the API

Implementations must be added to the class/module path in order to use this API, except for the {@link org.daisy.dotify.api.graphics} package (which provides some standalone functionality) and the {@link org.daisy.dotify.api.factory} package (which provides a foundation for a type of factory that several of the other factories in the API are built on).

Adding implementations

See the package descriptions for information about interfaces that may be implemented. Note that both SPI and OSGi require some configuration in order for an implementation to be discovered.

Default implementations

For convenience, some interfaces come with a default implementation. In an OSGi context, the implementation can be retrieved from the service registry using the corresponding interface. In an SPI context, the implementation can be accessed directly.

Interfaces and their default implementations.
Interface Default implementation
{@link org.daisy.dotify.api.embosser.EmbosserCatalogService} {@link org.daisy.dotify.api.embosser.EmbosserCatalog}
{@link org.daisy.dotify.api.hyphenator.HyphenatorFactoryMakerService} {@link org.daisy.dotify.api.hyphenator.HyphenatorFactoryMaker}
{@link org.daisy.dotify.api.paper.PaperCatalogService} {@link org.daisy.dotify.api.paper.PaperCatalog}
{@link org.daisy.dotify.api.table.TableCatalogService} {@link org.daisy.dotify.api.table.TableCatalog}
{@link org.daisy.dotify.api.text.Integer2TextFactoryMakerService} {@link org.daisy.dotify.api.text.Integer2TextFactoryMaker}
{@link org.daisy.dotify.api.translator.BrailleFilterFactoryMakerService} {@link org.daisy.dotify.api.translator.BrailleFilterFactoryMaker}
{@link org.daisy.dotify.api.translator.BrailleTranslatorFactoryMakerService} {@link org.daisy.dotify.api.translator.BrailleTranslatorFactoryMaker}
{@link org.daisy.dotify.api.translator.TextBorderFactoryMakerService} {@link org.daisy.dotify.api.translator.TextBorderFactoryMaker}
{@link org.daisy.dotify.api.writer.PagedMediaWriterFactoryMakerService} {@link org.daisy.dotify.api.writer.PagedMediaWriterFactoryMaker}