From f255053959e93876cb9345d905c0b1846c84959d Mon Sep 17 00:00:00 2001 From: "Andreas L. Delmelle" Date: Sun, 5 Mar 2006 19:50:28 +0000 Subject: Add dynamic lookup of the RendererMakers to RendererFactory (as suggested by Nils Meier; proposed patch slightly altered to make use of org.apache.fop.util.Service instead of sun.misc.Service) git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@383384 13f79535-47bb-0310-9956-ffa450edef68 --- .../services/org.apache.fop.render.AbstractRendererMaker | 9 +++++++++ src/java/org/apache/fop/render/RendererFactory.java | 15 ++++++--------- 2 files changed, 15 insertions(+), 9 deletions(-) create mode 100644 src/java/META-INF/services/org.apache.fop.render.AbstractRendererMaker (limited to 'src') diff --git a/src/java/META-INF/services/org.apache.fop.render.AbstractRendererMaker b/src/java/META-INF/services/org.apache.fop.render.AbstractRendererMaker new file mode 100644 index 000000000..7a5cac9a9 --- /dev/null +++ b/src/java/META-INF/services/org.apache.fop.render.AbstractRendererMaker @@ -0,0 +1,9 @@ +org.apache.fop.render.pdf.PDFRendererMaker +org.apache.fop.render.ps.PSRendererMaker +org.apache.fop.render.txt.TXTRendererMaker +org.apache.fop.render.bitmap.PNGRendererMaker +org.apache.fop.render.bitmap.TIFFRendererMaker +org.apache.fop.render.bitmap.TIFFRendererMaker +org.apache.fop.render.xml.XMLRendererMaker +org.apache.fop.render.awt.AWTRendererMaker +org.apache.fop.render.print.PrintRendererMaker \ No newline at end of file diff --git a/src/java/org/apache/fop/render/RendererFactory.java b/src/java/org/apache/fop/render/RendererFactory.java index c6ed0f641..264d34edf 100644 --- a/src/java/org/apache/fop/render/RendererFactory.java +++ b/src/java/org/apache/fop/render/RendererFactory.java @@ -62,15 +62,12 @@ public class RendererFactory { } private void registerStandardRenderers() { - addRendererMaker(new org.apache.fop.render.pdf.PDFRendererMaker()); - addRendererMaker(new org.apache.fop.render.ps.PSRendererMaker()); - addRendererMaker(new org.apache.fop.render.txt.TXTRendererMaker()); - addRendererMaker(new org.apache.fop.render.bitmap.PNGRendererMaker()); - addRendererMaker(new org.apache.fop.render.bitmap.TIFFRendererMaker()); - addRendererMaker(new org.apache.fop.render.bitmap.TIFFRendererMaker()); - addRendererMaker(new org.apache.fop.render.xml.XMLRendererMaker()); - addRendererMaker(new org.apache.fop.render.awt.AWTRendererMaker()); - addRendererMaker(new org.apache.fop.render.print.PrintRendererMaker()); + Iterator rendererMakers = Service.providers(AbstractRendererMaker.class); + if (rendererMakers != null) { + while (rendererMakers.hasNext()) { + addRendererMaker((String) rendererMakers.next()); + } + } } private void registerStandardEventHandlers() { -- cgit v1.2.3