diff options
author | Jeremias Maerki <jeremias@apache.org> | 2006-02-14 09:11:27 +0000 |
---|---|---|
committer | Jeremias Maerki <jeremias@apache.org> | 2006-02-14 09:11:27 +0000 |
commit | 7c6c1e28af215a6b3710a274c7163e3d196bfd2c (patch) | |
tree | 49b9122b8b0fe32c474667e5885ef9d8ef23b024 | |
parent | 5d7852dbfaab7b6a4af460edd093777f42bb81d8 (diff) | |
download | xmlgraphics-fop-7c6c1e28af215a6b3710a274c7163e3d196bfd2c.tar.gz xmlgraphics-fop-7c6c1e28af215a6b3710a274c7163e3d196bfd2c.zip |
Hooking the ContentHandlerFactoryRegistry into the FopFactor.
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_API_Finalization@377672 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | src/java/org/apache/fop/apps/FopFactory.java | 10 | ||||
-rw-r--r-- | src/java/org/apache/fop/area/AreaTreeParser.java | 5 | ||||
-rw-r--r-- | src/java/org/apache/fop/util/ContentHandlerFactoryRegistry.java | 12 |
3 files changed, 13 insertions, 14 deletions
diff --git a/src/java/org/apache/fop/apps/FopFactory.java b/src/java/org/apache/fop/apps/FopFactory.java index 0196f4ece..1b1a9e3ff 100644 --- a/src/java/org/apache/fop/apps/FopFactory.java +++ b/src/java/org/apache/fop/apps/FopFactory.java @@ -34,6 +34,7 @@ import org.apache.fop.fo.ElementMappingRegistry; import org.apache.fop.layoutmgr.LayoutManagerMaker; import org.apache.fop.render.RendererFactory; import org.apache.fop.render.XMLHandlerRegistry; +import org.apache.fop.util.ContentHandlerFactoryRegistry; import org.xml.sax.SAXException; /** @@ -61,6 +62,10 @@ public class FopFactory { /** The registry for ElementMapping instances */ private ElementMappingRegistry elementMappingRegistry; + + /** The registry for ContentHandlerFactory instance */ + private ContentHandlerFactoryRegistry contentHandlerFactoryRegistry + = new ContentHandlerFactoryRegistry(); /** user configuration */ private Configuration userConfig = null; @@ -180,6 +185,11 @@ public class FopFactory { return this.elementMappingRegistry; } + /** @return the content handler factory registry */ + public ContentHandlerFactoryRegistry getContentHandlerFactoryRegistry() { + return this.contentHandlerFactoryRegistry; + } + /** * Add the element mapping with the given class name. * @param elementMapping the class name representing the element mapping. diff --git a/src/java/org/apache/fop/area/AreaTreeParser.java b/src/java/org/apache/fop/area/AreaTreeParser.java index 0f2cd0a43..e81896a3e 100644 --- a/src/java/org/apache/fop/area/AreaTreeParser.java +++ b/src/java/org/apache/fop/area/AreaTreeParser.java @@ -250,8 +250,9 @@ public class AreaTreeParser { handled = false; } } else { - ContentHandlerFactory factory - = ContentHandlerFactoryRegistry.getInstance().getFactory(uri); + ContentHandlerFactoryRegistry registry + = userAgent.getFactory().getContentHandlerFactoryRegistry(); + ContentHandlerFactory factory = registry.getFactory(uri); if (factory != null) { delegate = factory.createContentHandler(); delegateStack.push(qName); diff --git a/src/java/org/apache/fop/util/ContentHandlerFactoryRegistry.java b/src/java/org/apache/fop/util/ContentHandlerFactoryRegistry.java index 68e215b45..5fd68fd2b 100644 --- a/src/java/org/apache/fop/util/ContentHandlerFactoryRegistry.java +++ b/src/java/org/apache/fop/util/ContentHandlerFactoryRegistry.java @@ -36,22 +36,10 @@ public class ContentHandlerFactoryRegistry { /** the logger */ private static Log log = LogFactory.getLog(ContentHandlerFactoryRegistry.class); - private static ContentHandlerFactoryRegistry instance; - /** Map from namespace URIs to ContentHandlerFactories */ private Map factories = new java.util.HashMap(); /** - * @return a singleton instance of the ContentHandlerFactoryRegistry. - */ - public static ContentHandlerFactoryRegistry getInstance() { - if (instance == null) { - instance = new ContentHandlerFactoryRegistry(); - } - return instance; - } - - /** * Default constructor. */ public ContentHandlerFactoryRegistry() { |