LibreOffice Module xmerge (master) 1
Public Member Functions | Private Attributes | List of all members
org.openoffice.xmerge.PluginFactory Class Referenceabstract

A PluginFactory encapsulates the conversions from one Document format to another. More...

Inheritance diagram for org.openoffice.xmerge.PluginFactory:
[legend]
Collaboration diagram for org.openoffice.xmerge.PluginFactory:
[legend]

Public Member Functions

 PluginFactory (ConverterInfo ci)
 Constructor that caches the ConvertInfo that corresponds to the registry information for this plug-in. More...
 
ConverterInfo getConverterInfo ()
 Returns the ConvertInfo that corresponds to this plug-in. More...
 
abstract Document createOfficeDocument (String name, InputStream is) throws IOException
 Create a Document object that corresponds to the Office data passed in via the InputStream object. More...
 
abstract Document createOfficeDocument (String name, InputStream is, boolean isZip) throws IOException
 Create a Document object that corresponds to the Office data passed in via the InputStream object. More...
 
abstract Document createDeviceDocument (String name, InputStream is) throws IOException
 Create a Document object that corresponds to the device data passed in via the InputStream object. More...
 

Private Attributes

final ConverterInfo ciCache
 Cached ConvertInfo object. More...
 

Detailed Description

A PluginFactory encapsulates the conversions from one Document format to another.

It provides conversions in both directions. Refer to the package description for its usage.

Conversion from the "Office" Document format to a "Device" Document format may be lossy, i.e. some information may be lost. If a plug-in implements the DocumentMergerFactory interface, then there is the possibility for merging the changes done on the "Device" Document back to the original "Office" Document via the DocumentMerger interface.

Plug-ins that convert from the "Device" Document format to the "Office" Document format must implement the DocumentDeserializerFactory interface. Plug-ins that convert from the "Office" Document format to the "Device" format must implement the DocumentSerializerFactory interface.

All plug-ins should have an associated Plug-in Configuration XML File which describes the capabilities of the plug-in. If the plug-in is bundled in a jarfile, then this XML file is also bundled with the jarfile. The data in the XML file is managed by the ConverterInfo object. The ConverterInfoMgr manages a registry of all ConverterInfo objects. For more information about this XML file, refer to org.openoffice.xmerge.util.registry.

See also
Document
DocumentSerializer
DocumentSerializerFactory
DocumentDeserializer
DocumentDeserializerFactory
DocumentMerger
DocumentMergerFactory
ConverterInfo
org.openoffice.xmerge.util.registry.ConverterInfoMgr

Definition at line 67 of file PluginFactory.java.

Constructor & Destructor Documentation

◆ PluginFactory()

org.openoffice.xmerge.PluginFactory.PluginFactory ( ConverterInfo  ci)
inline

Constructor that caches the ConvertInfo that corresponds to the registry information for this plug-in.

Parameters
ciConvertInfo object.

Definition at line 80 of file PluginFactory.java.

References org.openoffice.xmerge.PluginFactory.ciCache.

Member Function Documentation

◆ createDeviceDocument()

abstract Document org.openoffice.xmerge.PluginFactory.createDeviceDocument ( String  name,
InputStream  is 
) throws IOException
abstract

Create a Document object that corresponds to the device data passed in via the InputStream object.

This abstract method must be implemented for each plug-in.

This method will read from the given InputStream object. The returned Document object will contain the necessary data for the other objects created by the PluginFactory to process, like a DocumentSerializer object and a DocumentMerger object.

Parameters
nameThe Document name.
isInputStream object corresponding to the Document.
Returns
A Document object representing the particular Document format for the PluginFactory.
Exceptions
IOExceptionIf any I/O error occurs.

Referenced by org.openoffice.xmerge.Convert.addInputStream().

◆ createOfficeDocument() [1/2]

abstract Document org.openoffice.xmerge.PluginFactory.createOfficeDocument ( String  name,
InputStream  is 
) throws IOException
abstract

Create a Document object that corresponds to the Office data passed in via the InputStream object.

This abstract method must be implemented for each plug-in.

This method will read from the given InputStream object. The returned Document object will contain the necessary data for the other objects created by the PluginFactory to process, like a DocumentSerializer object and a DocumentMerger object.

Parameters
nameThe Document name.
isInputStream object corresponding to the Document.
Returns
A Document object representing the particular Document format for the PluginFactory.
Exceptions
IOExceptionIf any I/O error occurs.

Reimplemented in org.openoffice.xmerge.converter.xml.sxc.SxcPluginFactory, org.openoffice.xmerge.converter.xml.sxw.SxwPluginFactory, and org.openoffice.xmerge.converter.xml.xslt.PluginFactoryImpl.

Referenced by org.openoffice.xmerge.Convert.addInputStream(), and org.openoffice.xmerge.Convert.getOfficeDocument().

◆ createOfficeDocument() [2/2]

abstract Document org.openoffice.xmerge.PluginFactory.createOfficeDocument ( String  name,
InputStream  is,
boolean  isZip 
) throws IOException
abstract

Create a Document object that corresponds to the Office data passed in via the InputStream object.

This abstract method must be implemented for each plug-in.

This method will read from the given InputStream object. The returned Document object will contain the necessary data for the other objects created by the PluginFactory to process, like a DocumentSerializer object and a DocumentMerger object.

Parameters
nameThe Document name.
isInputStream object corresponding to the Document.
isZipboolean to show that the created office document is to be zipped.
Returns
A Document object representing the particular Document format for the PluginFactory.
Exceptions
IOExceptionIf any I/O error occurs.

Reimplemented in org.openoffice.xmerge.converter.xml.sxc.SxcPluginFactory, org.openoffice.xmerge.converter.xml.sxw.SxwPluginFactory, and org.openoffice.xmerge.converter.xml.xslt.PluginFactoryImpl.

◆ getConverterInfo()

ConverterInfo org.openoffice.xmerge.PluginFactory.getConverterInfo ( )
inline

Member Data Documentation

◆ ciCache

final ConverterInfo org.openoffice.xmerge.PluginFactory.ciCache
private

The documentation for this class was generated from the following file: