All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.daisy.dotify.api.writer.PagedMediaWriterFactory Maven / Gradle / Ivy

package org.daisy.dotify.api.writer;


/**
 * Provides a PagedMediaWriter factory interface. This interface is used to retrieve
 * a PagedMediaWriter instance.
 *
 * @author Joel Håkansson
 */
public interface PagedMediaWriterFactory {

    /**
     * Returns a new PagedMediaWriter.
     *
     * @return returns a new PagedMediaWriter
     * @throws PagedMediaWriterConfigurationException if the media type is not supported
     */
    public PagedMediaWriter newPagedMediaWriter() throws PagedMediaWriterConfigurationException;

    /**
     * Gets the value of a PagedMediaWriter feature.
     *
     * @param key the feature to get the value for
     * @return returns the value, or null if not set
     */
    public Object getFeature(String key);

    /**
     * Sets the value of a PagedMediaWriter feature.
     *
     * @param key   the feature to set the value for
     * @param value the value for the feature
     * @throws PagedMediaWriterConfigurationException if the feature is not supported
     */
    public void setFeature(String key, Object value) throws PagedMediaWriterConfigurationException;
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy