diff options
author | William Victor Mote <vmote@apache.org> | 2003-08-28 17:27:42 +0000 |
---|---|---|
committer | William Victor Mote <vmote@apache.org> | 2003-08-28 17:27:42 +0000 |
commit | be54e3f36b8b03b02c1c274e578dc12509f686c3 (patch) | |
tree | 9dee2185b480da94a8a66e26bf55e9b5957e4e68 /src/java/org | |
parent | c52ee3903708f476112e2e2328b3954f42f5c04a (diff) | |
download | xmlgraphics-fop-be54e3f36b8b03b02c1c274e578dc12509f686c3.tar.gz xmlgraphics-fop-be54e3f36b8b03b02c1c274e578dc12509f686c3.zip |
move renderXML() from apps/FOUserAgent to render/AbstractRenderer
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@196868 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/java/org')
6 files changed, 41 insertions, 43 deletions
diff --git a/src/java/org/apache/fop/apps/FOUserAgent.java b/src/java/org/apache/fop/apps/FOUserAgent.java index 27a3a7532..cbd0ba978 100644 --- a/src/java/org/apache/fop/apps/FOUserAgent.java +++ b/src/java/org/apache/fop/apps/FOUserAgent.java @@ -55,17 +55,12 @@ import java.util.Map; import java.io.IOException; import java.io.InputStream; -// XML -import org.w3c.dom.Document; - // Avalon import org.apache.avalon.framework.logger.LogEnabled; import org.apache.avalon.framework.logger.Logger; // FOP import org.apache.fop.pdf.PDFEncryptionParams; -import org.apache.fop.render.XMLHandler; -import org.apache.fop.render.RendererContext; /** * The User Agent for fo. @@ -188,39 +183,5 @@ public class FOUserAgent implements LogEnabled { return true; } - /** - * Render the xml document with the given xml namespace. - * The Render Context is by the handle to render into the current - * rendering target. - * @param ctx rendering context - * @param doc DOM Document containing the source document - * @param namespace Namespace URI of the document - */ - public void renderXML(RendererContext ctx, Document doc, - String namespace) { - String mime = ctx.getMimeType(); - Map mh = (Map) handlers.get(mime); - XMLHandler handler = null; - if (mh != null) { - handler = (XMLHandler) mh.get(namespace); - } - if (handler == null) { - handler = (XMLHandler) defaults.get(mime); - } - if (handler != null) { - try { - handler.handleXML(ctx, doc, namespace); - } catch (Throwable t) { - // could not handle document - getLogger().error("Some XML content will be ignored. " - + "Could not render XML", t); - } - } else { - // no handler found for document - getLogger().warn("Some XML content will be ignored. " - + "No handler defined for XML: " + namespace); - } - } - } diff --git a/src/java/org/apache/fop/render/AbstractRenderer.java b/src/java/org/apache/fop/render/AbstractRenderer.java index a9de32be6..5becb0f6b 100644 --- a/src/java/org/apache/fop/render/AbstractRenderer.java +++ b/src/java/org/apache/fop/render/AbstractRenderer.java @@ -58,6 +58,9 @@ import java.util.Map; import java.util.List; import java.util.Iterator; +// XML +import org.w3c.dom.Document; + // FOP import org.apache.fop.apps.FOPException; import org.apache.fop.area.Area; @@ -702,5 +705,39 @@ public abstract class AbstractRenderer extends AbstractLogEnabled mh.put(ns, handler); } + /** + * Render the xml document with the given xml namespace. + * The Render Context is by the handle to render into the current + * rendering target. + * @param ctx rendering context + * @param doc DOM Document containing the source document + * @param namespace Namespace URI of the document + */ + public void renderXML(FOUserAgent foua, RendererContext ctx, Document doc, + String namespace) { + String mime = ctx.getMimeType(); + Map mh = (Map) foua.handlers.get(mime); + XMLHandler handler = null; + if (mh != null) { + handler = (XMLHandler) mh.get(namespace); + } + if (handler == null) { + handler = (XMLHandler) foua.defaults.get(mime); + } + if (handler != null) { + try { + handler.handleXML(ctx, doc, namespace); + } catch (Throwable t) { + // could not handle document + getLogger().error("Some XML content will be ignored. " + + "Could not render XML", t); + } + } else { + // no handler found for document + getLogger().warn("Some XML content will be ignored. " + + "No handler defined for XML: " + namespace); + } + } + } diff --git a/src/java/org/apache/fop/render/pdf/PDFRenderer.java b/src/java/org/apache/fop/render/pdf/PDFRenderer.java index 42c917315..2770b9a75 100644 --- a/src/java/org/apache/fop/render/pdf/PDFRenderer.java +++ b/src/java/org/apache/fop/render/pdf/PDFRenderer.java @@ -1190,7 +1190,7 @@ public class PDFRenderer extends PrintRenderer { new Integer((int) pos.getWidth())); context.setProperty(PDFXMLHandler.PDF_HEIGHT, new Integer((int) pos.getHeight())); - userAgent.renderXML(context, doc, ns); + renderXML(userAgent, context, doc, ns); } diff --git a/src/java/org/apache/fop/render/ps/PSRenderer.java b/src/java/org/apache/fop/render/ps/PSRenderer.java index c71b08373..97551e29b 100644 --- a/src/java/org/apache/fop/render/ps/PSRenderer.java +++ b/src/java/org/apache/fop/render/ps/PSRenderer.java @@ -885,7 +885,7 @@ public class PSRenderer extends AbstractRenderer { context.setProperty(PDFXMLHandler.PDF_HEIGHT, new Integer((int) pos.getHeight())); */ - userAgent.renderXML(context, doc, ns); + renderXML(userAgent, context, doc, ns); } diff --git a/src/java/org/apache/fop/render/svg/SVGRenderer.java b/src/java/org/apache/fop/render/svg/SVGRenderer.java index 5bed6232e..97a3ee758 100644 --- a/src/java/org/apache/fop/render/svg/SVGRenderer.java +++ b/src/java/org/apache/fop/render/svg/SVGRenderer.java @@ -354,7 +354,7 @@ public class SVGRenderer extends AbstractRenderer implements XMLHandler { public void renderForeignObject(ForeignObject fo) { org.w3c.dom.Document doc = fo.getDocument(); String ns = fo.getNameSpace(); - userAgent.renderXML(context, doc, ns); + renderXML(userAgent, context, doc, ns); } /** diff --git a/src/java/org/apache/fop/render/xml/XMLRenderer.java b/src/java/org/apache/fop/render/xml/XMLRenderer.java index 6d6af46f3..43f065cf9 100644 --- a/src/java/org/apache/fop/render/xml/XMLRenderer.java +++ b/src/java/org/apache/fop/render/xml/XMLRenderer.java @@ -429,7 +429,7 @@ public class XMLRenderer extends AbstractRenderer { org.w3c.dom.Document doc = fo.getDocument(); String ns = fo.getNameSpace(); context.setProperty(XMLXMLHandler.WRITER, writer); - userAgent.renderXML(context, doc, ns); + renderXML(userAgent, context, doc, ns); writeEndTag("</foreignObject>"); } |