blob: 94646da733627244f07857d285db21aacc79e87b [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--
#**************************************************************
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
#**************************************************************
-->
<html>
<head>
<title>org.openoffice.xmerge.util.registry package</title>
</head>
<body bgcolor="white">
<p>Provides an interface for plug-in registration. Each plug-in must
have a corresponding Plugin Configuration XML File which is named
converter.xml. If the plug-in is stored in a jarfile, this
converter.xml file is typically stored in the following location in
the jarfile:</p>
<blockquote>
META-INF/converter.xml
</blockquote>
<p>The Plugin Configuration XML File must validate against the
converter.dtd file provided with this package. Since a jarfile
can contain multiple plug-ins, this DTD supports specifying multiple
plug-ins per jarfile. Please refer to the SDK document for more
information about how to implement a Plugin Configuration XML File
for a specific plugin.</p>
<p>All information in the Plugin Configuratino XML File is bundled
into one or more <code>ConverterInfo</code> object. The
<code>ConverterInfoReader</code> object is used to build a
<code>Vector</code> of <code>ConverterInfo</code> objects from a
jarfile.</p>
<p>The <code>ConverterInfoMgr</code> manages the registry of
<code>ConverterInfo</code>. It is a singleton class, so that only one
registry manager will ever exist. It is the client program's
responsibility to register <code>ConverterInfo</code> objects that
correspond to the plug-ins that are to be used.</p>
<h2>TODO/IDEAS list</h2>
<p><ol>
<li>The <code>ConverterInfo</code> object could contain
<code>org.w3c.dom.Document</code> fragments that are accessed in a
generic fashion rather than get/set methods for each item in the DTD.
This would provide a more flexible approach, especially for adding
custom tags to a specific Plugin Configuration XML file (tags that
are only used by its associated plug-in).
<li><code>ConverterInfo</code> should allow the merge/serialize/deserialize
logic to be included in separate plug-ins, if desired.</li>
<li><code>ConverterInfoMgr</code> could use the Java Activation
Framework (JAF) to manage registration.</li>
</ol></p>
</body>
</html>