[prev in list] [next in list] [prev in thread] [next in thread] 

List:       fop-cvs
Subject:    svn commit: r1344594 [9/15] - in /xmlgraphics/fop/branches/Temp_URI_Unification: ./
From:       mehdi () apache ! org
Date:       2012-05-31 8:33:50
Message-ID: 20120531083428.053982388C1F () eris ! apache ! org
[Download RAW message or body]

Added: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRendererConfig.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRendererConfig.java?rev=1344594&view=auto
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRendererConfig.java \
                (added)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRendererConfig.java \
Thu May 31 08:33:36 2012 @@ -0,0 +1,141 @@
+/*
+ * 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.
+ */
+
+/* $Id$ */
+
+package org.apache.fop.render.ps;
+
+import java.util.EnumMap;
+import java.util.Locale;
+
+import org.apache.avalon.framework.configuration.Configuration;
+import org.apache.avalon.framework.configuration.ConfigurationException;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import org.apache.fop.apps.FOPException;
+import org.apache.fop.apps.FOUserAgent;
+import org.apache.fop.apps.MimeConstants;
+import org.apache.fop.fonts.DefaultFontConfig;
+import org.apache.fop.fonts.DefaultFontConfig.DefaultFontConfigParser;
+import org.apache.fop.render.RendererConfig;
+import org.apache.fop.util.LogUtil;
+
+import static org.apache.fop.render.ps.PSRendererConfigurationOptions.AUTO_ROTATE_LANDSCAPE;
 +import static org.apache.fop.render.ps.PSRendererConfigurationOptions.DSC_COMPLIANT;
 +import static org.apache.fop.render.ps.PSRendererConfigurationOptions.LANGUAGE_LEVEL;
 +import static org.apache.fop.render.ps.PSRendererConfigurationOptions.OPTIMIZE_RESOURCES;
 +import static org.apache.fop.render.ps.PSRendererConfigurationOptions.RENDERING_MODE;
 +import static org.apache.fop.render.ps.PSRendererConfigurationOptions.SAFE_SET_PAGE_DEVICE;
 +
+public final class PSRendererConfig implements RendererConfig {
+
+    private final EnumMap<PSRendererConfigurationOptions, Object> params
+            = new EnumMap<PSRendererConfigurationOptions, \
Object>(PSRendererConfigurationOptions.class); +
+    private final DefaultFontConfig fontConfig;
+
+    private PSRendererConfig(DefaultFontConfig fontConfig) {
+        this.fontConfig = fontConfig;
+    }
+
+    public DefaultFontConfig getFontInfoConfig() {
+        return fontConfig;
+    }
+
+    public Boolean isAutoRotateLandscape() {
+        return (Boolean) params.get(AUTO_ROTATE_LANDSCAPE);
+    }
+
+    public Integer getLanguageLevel() {
+        return (Integer) params.get(LANGUAGE_LEVEL);
+    }
+
+    public Boolean isOptimizeResources() {
+        return (Boolean) params.get(OPTIMIZE_RESOURCES);
+    }
+
+    public Boolean isSafeSetPageDevice() {
+        return (Boolean) params.get(SAFE_SET_PAGE_DEVICE);
+    }
+
+    public Boolean isDscComplianceEnabled() {
+        return (Boolean) params.get(DSC_COMPLIANT);
+    }
+
+    public PSRenderingMode getRenderingMode() {
+        return (PSRenderingMode) params.get(RENDERING_MODE);
+    }
+
+    public static final class PSRendererConfigParser implements RendererConfigParser \
{ +
+        private static final Log LOG = \
LogFactory.getLog(PSRendererConfigParser.class); +
+        public PSRendererConfig build(FOUserAgent userAgent, Configuration cfg) \
throws FOPException { +            PSRendererConfig config = null;
+            try {
+                config = new ParserHelper(cfg, userAgent).config;
+            } catch (ConfigurationException e) {
+                LogUtil.handleException(LOG, e, false);
+            }
+            return config;
+        }
+
+        public String getMimeType() {
+            return MimeConstants.MIME_POSTSCRIPT;
+        }
+    }
+
+    private static final class ParserHelper {
+
+        private PSRendererConfig config;
+
+        private ParserHelper(Configuration cfg, FOUserAgent userAgent)
+                throws ConfigurationException, FOPException {
+            config = new PSRendererConfig(new DefaultFontConfigParser().parse(cfg,
+                    userAgent.validateStrictly()));
+            if (cfg != null) {
+                setBoolConfigParam(cfg, AUTO_ROTATE_LANDSCAPE);
+                setConfigParameter(LANGUAGE_LEVEL,
+                        cfg.getChild(LANGUAGE_LEVEL.getName())
+                           .getValueAsInteger((Integer) \
LANGUAGE_LEVEL.getDefaultValue())); +                setBoolConfigParam(cfg, \
OPTIMIZE_RESOURCES); +                setBoolConfigParam(cfg, SAFE_SET_PAGE_DEVICE);
+                setBoolConfigParam(cfg, DSC_COMPLIANT);
+                Configuration child = cfg.getChild("rendering");
+                if (child != null) {
+                    config.params.put(RENDERING_MODE,
+                            PSRenderingMode.valueOf(child.getValue(
+                                                   \
RENDERING_MODE.getDefaultValue().toString()) +                                        \
.toUpperCase(Locale.ENGLISH))); +                }
+            }
+        }
+
+        private void setConfigParameter(PSRendererConfigurationOptions option,
+                Object value) {
+            config.params.put(option, value != null ? value : \
option.getDefaultValue()); +        }
+
+        private void setBoolConfigParam(Configuration cfg, \
PSRendererConfigurationOptions option) { +            setConfigParameter(option, \
cfg.getChild( +                    option.getName()).getValueAsBoolean((Boolean) \
option.getDefaultValue())); +        }
+
+    }
+
+}

Propchange: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRendererConfig.java
                
------------------------------------------------------------------------------
    svn:eol-style = native

Added: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRendererConfigurationOptions.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/render/ps/PSRendererConfigurationOptions.java?rev=1344594&view=auto \
                ==============================================================================
                
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRendererConfigurationOptions.java \
                (added)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRendererConfigurationOptions.java \
Thu May 31 08:33:36 2012 @@ -0,0 +1,57 @@
+/*
+ * 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.
+ */
+
+/* $Id$ */
+
+package org.apache.fop.render.ps;
+
+import org.apache.xmlgraphics.ps.PSGenerator;
+
+import org.apache.fop.render.RendererConfigOptions;
+
+/**
+ * An enumeration of the PostScript renderer configuration options along with their \
default values. + */
+public enum PSRendererConfigurationOptions implements RendererConfigOptions {
+    /** Indicates whether landscape pages should be rotated, default: false */
+    AUTO_ROTATE_LANDSCAPE("auto-rotate-landscape", false),
+    /** Sets the PostScript language leven, default: {@see \
PSGenerator#DEFAULT_LANGUAGE_LEVEL}*/ +    LANGUAGE_LEVEL("language-level", \
PSGenerator.DEFAULT_LANGUAGE_LEVEL), +    /** Whether resources should be optimized \
in a post-processing run, default: false */ +    \
OPTIMIZE_RESOURCES("optimize-resources", false), +    /** Indicates whether the "safe \
setpagedevice" mode is active, default: false */ +    \
SAFE_SET_PAGE_DEVICE("safe-set-page-device", false), +    /** Indicates whether the \
PostScript output should be DSC compliant, default: true*/ +    \
DSC_COMPLIANT("dsc-compliant", true), +    RENDERING_MODE("rendering", \
PSRenderingMode.QUALITY); +
+    private final String name;
+    private final Object defaultValue;
+
+    private PSRendererConfigurationOptions(String name, Object defaultValue) {
+        this.name = name;
+        this.defaultValue = defaultValue;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public Object getDefaultValue() {
+        return defaultValue;
+    }
+}

Propchange: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRendererConfigurationOptions.java
                
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRendererConfigurator.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/render/ps/PSRendererConfigurator.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRendererConfigurator.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRendererConfigurator.java \
Thu May 31 08:33:36 2012 @@ -19,75 +19,56 @@
 
 package org.apache.fop.render.ps;
 
-import java.util.Locale;
-
-import org.apache.avalon.framework.configuration.Configuration;
-
-import org.apache.xmlgraphics.ps.PSGenerator;
-
 import org.apache.fop.apps.FOPException;
 import org.apache.fop.apps.FOUserAgent;
-import org.apache.fop.render.PrintRendererConfigurator;
-import org.apache.fop.render.Renderer;
+import org.apache.fop.render.RendererConfig.RendererConfigParser;
+import org.apache.fop.render.adobe.AdobeRendererConfigurator;
 import org.apache.fop.render.intermediate.IFDocumentHandler;
 import org.apache.fop.render.intermediate.IFDocumentHandlerConfigurator;
 
+
 /**
  * Postscript renderer config
  */
-public class PSRendererConfigurator extends PrintRendererConfigurator
-            implements IFDocumentHandlerConfigurator {
+public class PSRendererConfigurator extends AdobeRendererConfigurator
+        implements IFDocumentHandlerConfigurator {
 
     /**
      * Default constructor
      * @param userAgent user agent
      */
-    public PSRendererConfigurator(FOUserAgent userAgent) {
-        super(userAgent);
-    }
-
-    /**
-     * Throws an UnsupportedOperationException.
-     *
-     * @param renderer not used
-     */
-    public void configure(Renderer renderer) {
-        throw new UnsupportedOperationException();
+    public PSRendererConfigurator(FOUserAgent userAgent, RendererConfigParser \
rendererConfigParser) { +        super(userAgent, rendererConfigParser);
     }
 
-    private void configure(PSRenderingUtil psUtil, Configuration cfg) {
-        psUtil.setAutoRotateLandscape(
-            cfg.getChild("auto-rotate-landscape").getValueAsBoolean(false));
-        Configuration child;
-        child = cfg.getChild("language-level");
-        if (child != null) {
-            psUtil.setLanguageLevel(child.getValueAsInteger(
-                    PSGenerator.DEFAULT_LANGUAGE_LEVEL));
-        }
-        child = cfg.getChild("optimize-resources");
-        if (child != null) {
-            psUtil.setOptimizeResources(child.getValueAsBoolean(false));
-        }
-        child = cfg.getChild("rendering");
-        if (child != null) {
-            psUtil.setRenderingMode(PSRenderingMode.valueOf(
-                    child.getValue(psUtil.getRenderingMode().toString())
-                    .toUpperCase(Locale.ENGLISH)));
-        }
-        psUtil.setSafeSetPageDevice(
-            cfg.getChild("safe-set-page-device").getValueAsBoolean(false));
-        psUtil.setDSCComplianceEnabled(
-            cfg.getChild("dsc-compliant").getValueAsBoolean(true));
+    private void configure(PSRenderingUtil psUtil, PSRendererConfig psConfig) {
+        if (psConfig.isAutoRotateLandscape() != null) {
+            psUtil.setAutoRotateLandscape(psConfig.isAutoRotateLandscape());
+        }
+        if (psConfig.getLanguageLevel() != null) {
+            psUtil.setLanguageLevel(psConfig.getLanguageLevel());
+        }
+        if (psConfig.isOptimizeResources() != null) {
+            psUtil.setOptimizeResources(psConfig.isOptimizeResources());
+        }
+        if (psConfig.isSafeSetPageDevice() != null) {
+            psUtil.setSafeSetPageDevice(psConfig.isSafeSetPageDevice());
+        }
+        if (psConfig.isDscComplianceEnabled() != null) {
+            psUtil.setDSCComplianceEnabled(psConfig.isDscComplianceEnabled());
+        }
+        if (psConfig.getRenderingMode() != null) {
+            psUtil.setRenderingMode(psConfig.getRenderingMode());
+        }
     }
 
-    /** {@inheritDoc} */
+    @Override
     public void configure(IFDocumentHandler documentHandler) throws FOPException {
-        Configuration cfg = super.getRendererConfig(documentHandler.getMimeType());
-        if (cfg != null) {
-            PSDocumentHandler psDocumentHandler = \
                (PSDocumentHandler)documentHandler;
-            configure(psDocumentHandler.getPSUtil(), cfg);
+        PSRendererConfig psConfig = (PSRendererConfig) \
getRendererConfig(documentHandler); +        if (psConfig != null) {
+            PSDocumentHandler psDocumentHandler = (PSDocumentHandler) \
documentHandler; +            PSRenderingUtil psUtil = psDocumentHandler.getPSUtil();
+            configure(psUtil, psConfig);
         }
-
     }
-
 }

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRenderingUtil.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/render/ps/PSRenderingUtil.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRenderingUtil.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSRenderingUtil.java \
Thu May 31 08:33:36 2012 @@ -33,11 +33,15 @@ import org.apache.fop.render.ps.extensio
 import org.apache.fop.render.ps.extensions.PSExtensionAttachment;
 import org.apache.fop.render.ps.extensions.PSSetupCode;
 
+import static org.apache.fop.render.ps.PSRendererConfigurationOptions.AUTO_ROTATE_LANDSCAPE;
 +import static org.apache.fop.render.ps.PSRendererConfigurationOptions.LANGUAGE_LEVEL;
 +import static org.apache.fop.render.ps.PSRendererConfigurationOptions.OPTIMIZE_RESOURCES;
 +
 /**
  * Utility class which enables all sorts of features that are not directly connected \
                to the
  * normal rendering process.
  */
-public class PSRenderingUtil implements PSConfigurationConstants {
+public class PSRenderingUtil {
 
     private FOUserAgent userAgent;
 
@@ -64,20 +68,21 @@ public class PSRenderingUtil implements 
 
     PSRenderingUtil(FOUserAgent userAgent) {
         this.userAgent = userAgent;
+        //PSRendererConfig confi = \
userAgent.getRendererConfig(rendererConfiguration, configCreator)  initialize();
     }
 
     private void initialize() {
         Object obj;
-        obj = userAgent.getRendererOptions().get(AUTO_ROTATE_LANDSCAPE);
+        obj = userAgent.getRendererOptions().get(AUTO_ROTATE_LANDSCAPE.getName());
         if (obj != null) {
             setAutoRotateLandscape(booleanValueOf(obj));
         }
-        obj = userAgent.getRendererOptions().get(LANGUAGE_LEVEL);
+        obj = userAgent.getRendererOptions().get(LANGUAGE_LEVEL.getName());
         if (obj != null) {
             setLanguageLevel(intValueOf(obj));
         }
-        obj = userAgent.getRendererOptions().get(OPTIMIZE_RESOURCES);
+        obj = userAgent.getRendererOptions().get(OPTIMIZE_RESOURCES.getName());
         if (obj != null) {
             setOptimizeResources(booleanValueOf(obj));
         }

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSSVGHandler.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/render/ps/PSSVGHandler.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSSVGHandler.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/PSSVGHandler.java \
Thu May 31 08:33:36 2012 @@ -257,7 +257,7 @@ public class PSSVGHandler extends Abstra
 
         BridgeContext ctx = new PSBridgeContext(ua,
                 (strokeText ? null : psInfo.fontInfo),
-                context.getUserAgent().getFactory().getImageManager(),
+                context.getUserAgent().getImageManager(),
                 context.getUserAgent().getImageSessionContext());
 
         //Cloning SVG DOM as Batik attaches non-thread-safe facilities (like the CSS \
engine)

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/ResourceHandler.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/render/ps/ResourceHandler.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/ResourceHandler.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/ps/ResourceHandler.java \
Thu May 31 08:33:36 2012 @@ -283,7 +283,7 @@ public class ResourceHandler implements 
                 throws IOException {
         final String uri = form.getImageURI();
 
-        ImageManager manager = userAgent.getFactory().getImageManager();
+        ImageManager manager = userAgent.getImageManager();
         ImageInfo info = null;
         try {
             ImageSessionContext sessionContext = userAgent.getImageSessionContext();
@@ -295,7 +295,7 @@ public class ResourceHandler implements 
 
             ImageFlavor[] flavors;
             ImageHandlerRegistry imageHandlerRegistry
-                = userAgent.getFactory().getImageHandlerRegistry();
+                = userAgent.getImageHandlerRegistry();
             flavors = imageHandlerRegistry.getSupportedFlavors(formContext);
 
             Map hints = ImageUtil.getDefaultHints(sessionContext);

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/rtf/RTFHandler.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/render/rtf/RTFHandler.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/rtf/RTFHandler.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/rtf/RTFHandler.java \
Thu May 31 08:33:36 2012 @@ -97,7 +97,6 @@ import org.apache.fop.fo.properties.Enum
 import org.apache.fop.fonts.FontSetup;
 import org.apache.fop.layoutmgr.inline.ImageLayout;
 import org.apache.fop.layoutmgr.table.ColumnSetup;
-import org.apache.fop.render.DefaultFontResolver;
 import org.apache.fop.render.RendererEventProducer;
 import org.apache.fop.render.rtf.rtflib.exceptions.RtfException;
 import org.apache.fop.render.rtf.rtflib.rtfdoc.IRtfAfterContainer;
@@ -169,7 +168,7 @@ public class RTFHandler extends FOEventH
         bDefer = true;
 
         boolean base14Kerning = false;
-        FontSetup.setup(fontInfo, null, new DefaultFontResolver(userAgent), \
base14Kerning); +        FontSetup.setup(fontInfo, null, \
userAgent.getNewURIResolver(), base14Kerning);  }
 
     /**
@@ -1086,7 +1085,7 @@ public class RTFHandler extends FOEventH
 
             //set image data
             FOUserAgent userAgent = eg.getUserAgent();
-            ImageManager manager = userAgent.getFactory().getImageManager();
+            ImageManager manager = userAgent.getImageManager();
             info = manager.getImageInfo(uri, userAgent.getImageSessionContext());
 
             putGraphic(eg, info);
@@ -1140,7 +1139,7 @@ public class RTFHandler extends FOEventH
             ImageXMLDOM image = new ImageXMLDOM(info, doc, ns);
 
             FOUserAgent userAgent = ifo.getUserAgent();
-            ImageManager manager = userAgent.getFactory().getImageManager();
+            ImageManager manager = userAgent.getImageManager();
             Map hints = ImageUtil.getDefaultHints(ua.getImageSessionContext());
             Image converted = manager.convertImage(image, FLAVORS, hints);
             putGraphic(ifo, converted);
@@ -1170,7 +1169,7 @@ public class RTFHandler extends FOEventH
             throws IOException {
         try {
             FOUserAgent userAgent = abstractGraphic.getUserAgent();
-            ImageManager manager = userAgent.getFactory().getImageManager();
+            ImageManager manager = userAgent.getImageManager();
             ImageSessionContext sessionContext = userAgent.getImageSessionContext();
             Map hints = ImageUtil.getDefaultHints(sessionContext);
             Image image = manager.getImage(info, FLAVORS, hints, sessionContext);
@@ -1701,7 +1700,7 @@ public class RTFHandler extends FOEventH
 
             Region regionBefore = pagemaster.getRegion(Constants.FO_REGION_BEFORE);
             if (regionBefore != null) {
-                FONode staticBefore = (FONode) pageSequence.getFlowMap().get(
+                FONode staticBefore = pageSequence.getFlowMap().get(
                         regionBefore.getRegionName());
                 if (staticBefore != null) {
                     recurseFONode(staticBefore);
@@ -1709,7 +1708,7 @@ public class RTFHandler extends FOEventH
             }
             Region regionAfter = pagemaster.getRegion(Constants.FO_REGION_AFTER);
             if (regionAfter != null) {
-                FONode staticAfter = (FONode) pageSequence.getFlowMap().get(
+                FONode staticAfter = pageSequence.getFlowMap().get(
                         regionAfter.getRegionName());
                 if (staticAfter != null) {
                     recurseFONode(staticAfter);

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/txt/TXTRendererConfigurator.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/render/txt/TXTRendererConfigurator.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/txt/TXTRendererConfigurator.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/txt/TXTRendererConfigurator.java \
Thu May 31 08:33:36 2012 @@ -19,24 +19,23 @@
 
 package org.apache.fop.render.txt;
 
-import org.apache.avalon.framework.configuration.Configuration;
-
 import org.apache.fop.apps.FOPException;
 import org.apache.fop.apps.FOUserAgent;
-import org.apache.fop.render.PrintRendererConfigurator;
 import org.apache.fop.render.Renderer;
+import org.apache.fop.render.RendererConfig.RendererConfigParser;
+import org.apache.fop.render.adobe.AdobeRendererConfigurator;
 
 /**
  * TXT Renderer configurator
  */
-public class TXTRendererConfigurator extends PrintRendererConfigurator {
+public class TXTRendererConfigurator extends AdobeRendererConfigurator {
 
     /**
      * Default constructor
      * @param userAgent user agent
      */
-    public TXTRendererConfigurator(FOUserAgent userAgent) {
-        super(userAgent);
+    public TXTRendererConfigurator(FOUserAgent userAgent, RendererConfigParser \
rendererConfigParser) { +        super(userAgent, rendererConfigParser);
     }
 
     /**
@@ -45,10 +44,11 @@ public class TXTRendererConfigurator ext
      * @throws FOPException fop exception
      */
     public void configure(Renderer renderer) throws FOPException {
-        Configuration cfg = super.getRendererConfig(renderer);
-        if (cfg != null) {
-            TXTRenderer txtRenderer = (TXTRenderer)renderer;
-            txtRenderer.setEncoding(cfg.getChild("encoding", true).getValue(null));
+        TxtRendererConfig config = (TxtRendererConfig) getRendererConfig(renderer);
+        if (config != null) {
+            TXTRenderer txtRenderer = (TXTRenderer) renderer;
+            txtRenderer.setEncoding(config.getEncoding());
         }
     }
+
 }

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/txt/TXTRendererMaker.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/render/txt/TXTRendererMaker.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/txt/TXTRendererMaker.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/txt/TXTRendererMaker.java \
Thu May 31 08:33:36 2012 @@ -19,11 +19,12 @@
 
 package org.apache.fop.render.txt;
 
+import org.apache.fop.apps.FOPException;
 import org.apache.fop.apps.FOUserAgent;
 import org.apache.fop.apps.MimeConstants;
 import org.apache.fop.render.AbstractRendererMaker;
 import org.apache.fop.render.Renderer;
-import org.apache.fop.render.RendererConfigurator;
+import org.apache.fop.render.txt.TxtRendererConfig.TxtRendererConfigParser;
 
 /**
  * RendererMaker for the Plain Text Renderer.
@@ -32,22 +33,22 @@ public class TXTRendererMaker extends Ab
 
     private static final String[] MIMES = new String[] \
{MimeConstants.MIME_PLAIN_TEXT};  
-    /**{@inheritDoc} */
+    @Override
     public Renderer makeRenderer(FOUserAgent userAgent) {
         return new TXTRenderer(userAgent);
     }
 
-    /**{@inheritDoc} */
-    public RendererConfigurator getConfigurator(FOUserAgent userAgent) {
-        return new TXTRendererConfigurator(userAgent);
+    @Override
+    public void configureRenderer(FOUserAgent userAgent, Renderer renderer) throws \
FOPException { +        new TXTRendererConfigurator(userAgent, new \
TxtRendererConfigParser()).configure(renderer);  }
 
-    /** {@inheritDoc} */
+    @Override
     public boolean needsOutputStream() {
         return true;
     }
 
-    /** {@inheritDoc} */
+    @Override
     public String[] getSupportedMimeTypes() {
         return MIMES;
     }

Added: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/txt/TxtRendererConfig.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/txt/TxtRendererConfig.java?rev=1344594&view=auto
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/txt/TxtRendererConfig.java \
                (added)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/txt/TxtRendererConfig.java \
Thu May 31 08:33:36 2012 @@ -0,0 +1,91 @@
+/*
+ * 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.
+ */
+
+/* $Id$ */
+
+package org.apache.fop.render.txt;
+
+import java.util.EnumMap;
+
+import org.apache.avalon.framework.configuration.Configuration;
+
+import org.apache.fop.apps.FOPException;
+import org.apache.fop.apps.FOUserAgent;
+import org.apache.fop.apps.MimeConstants;
+import org.apache.fop.fonts.DefaultFontConfig;
+import org.apache.fop.fonts.DefaultFontConfig.DefaultFontConfigParser;
+import org.apache.fop.render.RendererConfig;
+import org.apache.fop.render.RendererConfigOptions;
+
+public class TxtRendererConfig implements RendererConfig {
+
+    public enum TxtRendererConfigOptions implements RendererConfigOptions {
+        ENCODING("encoding", "UTF-8");
+
+        private final String name;
+        private final Object defaultValue;
+
+        private TxtRendererConfigOptions(String name, Object defaultValue) {
+            this.name = name;
+            this.defaultValue = defaultValue;
+        }
+
+        public String getName() {
+            return name;
+        }
+
+        public Object getDefaultValue() {
+            return defaultValue;
+        }
+    }
+
+    private final EnumMap<TxtRendererConfigOptions, Object> params
+            = new EnumMap<TxtRendererConfigOptions, \
Object>(TxtRendererConfigOptions.class); +
+    private final DefaultFontConfig fontConfig;
+
+    private TxtRendererConfig(DefaultFontConfig fontConfig) {
+        this.fontConfig = fontConfig;
+    }
+
+    public DefaultFontConfig getFontInfoConfig() {
+        return fontConfig;
+    }
+
+    public String getEncoding() {
+        return (String) params.get(TxtRendererConfigOptions.ENCODING);
+    }
+
+    public static final class TxtRendererConfigParser implements \
RendererConfigParser { +
+        public TxtRendererConfig build(FOUserAgent userAgent, Configuration cfg) \
throws FOPException { +            TxtRendererConfig config = new \
TxtRendererConfig(new DefaultFontConfigParser().parse(cfg, +                    \
userAgent.validateStrictly())); +            if (cfg != null) {
+                TxtRendererConfigOptions option = TxtRendererConfigOptions.ENCODING;
+                String value = cfg.getChild(option.getName(), true).getValue(null);
+                config.params.put(option, value != null ? value : \
option.getDefaultValue()); +            }
+            return config;
+        }
+
+        public String getMimeType() {
+            return MimeConstants.MIME_PLAIN_TEXT;
+        }
+    }
+
+}

Propchange: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/txt/TxtRendererConfig.java
                
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/xml/XMLRendererMaker.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/render/xml/XMLRendererMaker.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/xml/XMLRendererMaker.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/render/xml/XMLRendererMaker.java \
Thu May 31 08:33:36 2012 @@ -19,12 +19,15 @@
 
 package org.apache.fop.render.xml;
 
+import java.util.List;
+
+import org.apache.fop.apps.FOPException;
 import org.apache.fop.apps.FOUserAgent;
 import org.apache.fop.apps.MimeConstants;
+import org.apache.fop.fonts.FontCollection;
 import org.apache.fop.render.AbstractRendererMaker;
 import org.apache.fop.render.PrintRendererConfigurator;
 import org.apache.fop.render.Renderer;
-import org.apache.fop.render.RendererConfigurator;
 
 /**
  * RendererMaker for the Area Tree XML Renderer.
@@ -33,22 +36,28 @@ public class XMLRendererMaker extends Ab
 
     private static final String[] MIMES = new String[] \
{MimeConstants.MIME_FOP_AREA_TREE};  
-    /**{@inheritDoc} */
+    @Override
     public Renderer makeRenderer(FOUserAgent userAgent) {
         return new XMLRenderer(userAgent);
     }
 
-    /**{@inheritDoc} */
-    public RendererConfigurator getConfigurator(FOUserAgent userAgent) {
-        return new PrintRendererConfigurator(userAgent);
+    @Override
+    public void configureRenderer(FOUserAgent userAgent, Renderer renderer) throws \
FOPException { +        // TODO what constructor params?
+        new PrintRendererConfigurator(userAgent, null) {
+            @Override
+            protected List<FontCollection> getDefaultFontCollection() {
+                throw new UnsupportedOperationException();
+            }
+        } .configure(renderer);
     }
 
-    /** {@inheritDoc} */
+    @Override
     public boolean needsOutputStream() {
         return true;
     }
 
-    /** {@inheritDoc} */
+    @Override
     public String[] getSupportedMimeTypes() {
         return MIMES;
     }

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/servlet/FopServlet.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/servlet/FopServlet.java?rev=1344594&r1=1344593&r2=1344594&view=diff \
                ==============================================================================
                
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/servlet/FopServlet.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/servlet/FopServlet.java \
Thu May 31 08:33:36 2012 @@ -21,7 +21,11 @@ package org.apache.fop.servlet;
 
 import java.io.File;
 import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
 import java.io.PrintWriter;
+import java.net.URI;
+import java.net.URL;
 
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
@@ -42,7 +46,10 @@ import org.apache.fop.apps.FOPException;
 import org.apache.fop.apps.FOUserAgent;
 import org.apache.fop.apps.Fop;
 import org.apache.fop.apps.FopFactory;
+import org.apache.fop.apps.FopFactoryBuilder;
 import org.apache.fop.apps.MimeConstants;
+import org.apache.fop.apps.io.Resource;
+import org.apache.fop.apps.io.ResourceResolver;
 
 /**
  * Example servlet to generate a PDF from a servlet.
@@ -91,16 +98,27 @@ public class FopServlet extends HttpServ
         this.transFactory = TransformerFactory.newInstance();
         this.transFactory.setURIResolver(this.uriResolver);
         //Configure FopFactory as desired
-        this.fopFactory = FopFactory.newInstance();
-        this.fopFactory.setURIResolver(this.uriResolver);
-        configureFopFactory();
+        // TODO: Double check this behaves properly!!
+        ResourceResolver resolver = new ResourceResolver() {
+            public OutputStream getOutputStream(URI uri) throws IOException {
+                URL url = getServletContext().getResource(uri.toASCIIString());
+                return url.openConnection().getOutputStream();
+            }
+
+            public Resource getResource(URI uri) throws IOException {
+                return new \
Resource(getServletContext().getResourceAsStream(uri.toASCIIString())); +            \
} +        };
+        FopFactoryBuilder builder = new FopFactoryBuilder(new File(".").toURI(), \
resolver); +        configureFopFactory(builder);
+        fopFactory = builder.build();
     }
 
     /**
      * This method is called right after the FopFactory is instantiated and can be \
                overridden
      * by subclasses to perform additional configuration.
      */
-    protected void configureFopFactory() {
+    protected void configureFopFactory(FopFactoryBuilder builder) {
         //Subclass and override this method to perform additional configuration
     }
 

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/svg/PDFDocumentGraphics2DConfigurator.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/svg/PDFDocumentGraphics2DConfigurator.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/svg/PDFDocumentGraphics2DConfigurator.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/svg/PDFDocumentGraphics2DConfigurator.java \
Thu May 31 08:33:36 2012 @@ -25,17 +25,20 @@ import org.apache.avalon.framework.confi
 import org.apache.avalon.framework.configuration.ConfigurationException;
 
 import org.apache.fop.apps.FOPException;
-import org.apache.fop.fonts.CustomFontCollection;
-import org.apache.fop.fonts.FontCollection;
+import org.apache.fop.apps.io.DefaultResourceResolver;
+import org.apache.fop.apps.io.URIResolverWrapper;
+import org.apache.fop.fonts.DefaultFontConfig;
+import org.apache.fop.fonts.DefaultFontConfigurator;
+import org.apache.fop.fonts.EmbedFontInfo;
+import org.apache.fop.fonts.FontCacheManagerFactory;
+import org.apache.fop.fonts.FontDetectorFactory;
 import org.apache.fop.fonts.FontEventListener;
 import org.apache.fop.fonts.FontInfo;
-import org.apache.fop.fonts.FontInfoConfigurator;
 import org.apache.fop.fonts.FontManager;
-import org.apache.fop.fonts.FontManagerConfigurator;
-import org.apache.fop.fonts.FontResolver;
-import org.apache.fop.fonts.base14.Base14FontCollection;
+import org.apache.fop.fonts.FontSetup;
 import org.apache.fop.pdf.PDFDocument;
-import org.apache.fop.render.pdf.PDFRendererConfigurator;
+import org.apache.fop.render.pdf.PDFRendererConfig;
+import org.apache.fop.render.pdf.PDFRendererConfig.PDFRendererConfigParser;
 
 /**
  * Configurator class for PDFDocumentGraphics2D.
@@ -53,10 +56,13 @@ public class PDFDocumentGraphics2DConfig
                           boolean useComplexScriptFeatures )
             throws ConfigurationException {
         PDFDocument pdfDoc = graphics.getPDFDocument();
-
-        //Filter map
-        pdfDoc.setFilterMap(
-                PDFRendererConfigurator.buildFilterMapFromConfiguration(cfg));
+        try {
+            //Filter map
+            PDFRendererConfig pdfConfig = new PDFRendererConfigParser().build(null, \
cfg); +            pdfDoc.setFilterMap(pdfConfig.getFilterMap());
+        } catch (FOPException e) {
+            throw new RuntimeException(e);
+        }
 
         //Fonts
         try {
@@ -78,30 +84,28 @@ public class PDFDocumentGraphics2DConfig
         throws FOPException {
         FontInfo fontInfo = new FontInfo();
         final boolean strict = false;
-        FontResolver fontResolver = \
                FontManager.createMinimalFontResolver(useComplexScriptFeatures);
-        //TODO The following could be optimized by retaining the FontManager \
                somewhere
-        FontManager fontManager = new FontManager();
-        if (cfg != null) {
-            FontManagerConfigurator fmConfigurator = new \
                FontManagerConfigurator(cfg);
-            fmConfigurator.configure(fontManager, strict);
-        }
-
-        List fontCollections = new java.util.ArrayList();
-        fontCollections.add(new \
                Base14FontCollection(fontManager.isBase14KerningEnabled()));
-
         if (cfg != null) {
             //TODO Wire in the FontEventListener
-            FontEventListener listener = null; //new \
                FontEventAdapter(eventBroadcaster);
-            FontInfoConfigurator fontInfoConfigurator
-                = new FontInfoConfigurator(cfg, fontManager, fontResolver, listener, \
                strict);
-            List/*<EmbedFontInfo>*/ fontInfoList = new \
                java.util.ArrayList/*<EmbedFontInfo>*/();
-            fontInfoConfigurator.configure(fontInfoList);
-            fontCollections.add(new CustomFontCollection(fontResolver, fontInfoList,
-                                fontResolver.isComplexScriptFeaturesEnabled()));
+            URIResolverWrapper resolver = \
DefaultResourceResolver.createDefaultWrapper(); +            //TODO The following \
could be optimized by retaining the FontManager somewhere +            FontManager \
fontManager = new FontManager(resolver, FontDetectorFactory.createDefault(), +        \
FontCacheManagerFactory.createDefault()); +
+            //TODO Make use of fontBaseURL, font substitution and referencing \
configuration +            //Requires a change to the expected configuration layout
+
+            final FontEventListener listener = null;
+            DefaultFontConfig.DefaultFontConfigParser parser
+                    = new DefaultFontConfig.DefaultFontConfigParser();
+            DefaultFontConfig fontInfoConfig = parser.parse(cfg, strict);
+            DefaultFontConfigurator fontInfoConfigurator
+                    = new DefaultFontConfigurator(fontManager, listener, strict);
+            List<EmbedFontInfo> fontInfoList = \
fontInfoConfigurator.configure(fontInfoConfig); +            fontManager.saveCache();
+            FontSetup.setup(fontInfo, fontInfoList, resolver, \
useComplexScriptFeatures); +        } else {
+            FontSetup.setup(fontInfo, useComplexScriptFeatures);
         }
-        fontManager.setup(fontInfo,
-                (FontCollection[])fontCollections.toArray(
-                        new FontCollection[fontCollections.size()]));
         return fontInfo;
     }
 

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/svg/PDFTranscoder.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/svg/PDFTranscoder.java?rev=1344594&r1=1344593&r2=1344594&view=diff \
                ==============================================================================
                
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/svg/PDFTranscoder.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/svg/PDFTranscoder.java \
Thu May 31 08:33:36 2012 @@ -133,7 +133,7 @@ public class PDFTranscoder extends Abstr
             }
         } catch (Exception e) {
             throw new TranscoderException(
-                "Error while setting up PDFDocumentGraphics2D", e);
+                    "Error while setting up PDFDocumentGraphics2D", e);
         }
 
         super.transcode(document, uri, output);

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/tools/TestConverter.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/tools/TestConverter.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/tools/TestConverter.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/tools/TestConverter.java \
Thu May 31 08:33:36 2012 @@ -21,6 +21,7 @@ package org.apache.fop.tools;
 
 import java.io.File;
 import java.io.OutputStream;
+import java.net.URI;
 import java.util.Map;
 
 import javax.xml.parsers.DocumentBuilder;
@@ -50,9 +51,6 @@ import org.apache.fop.tools.anttasks.Fil
  */
 public class TestConverter {
 
-    // configure fopFactory as desired
-    private FopFactory fopFactory = FopFactory.newInstance();
-
     private boolean failOnly = false;
     private String outputFormat = MimeConstants.MIME_FOP_AREA_TREE;
     private File destdir;
@@ -273,24 +271,17 @@ public class TestConverter {
         }
         try {
             File xmlFile = new File(baseDir + "/" + xml);
-            String baseURL = null;
-            try {
-                baseURL = xmlFile.getParentFile().toURI().toURL().toExternalForm();
-            } catch (Exception e) {
-                logger.error("Error setting base directory");
-            }
+            URI baseUri = xmlFile.getParentFile().toURI();
 
             InputHandler inputHandler = null;
             if (xsl == null) {
                 inputHandler = new InputHandler(xmlFile);
             } else {
-                inputHandler = new InputHandler(xmlFile,
-                                                new File(baseDir + "/"
-                                                         + xsl), null);
+                inputHandler = new InputHandler(xmlFile, new File(baseDir + "/" + \
xsl), null);  }
 
+            FopFactory fopFactory = FopFactory.newInstance(baseUri);
             FOUserAgent userAgent = fopFactory.newFOUserAgent();
-            userAgent.setBaseURL(baseURL);
 
             userAgent.getRendererOptions().put("fineDetail", new Boolean(false));
             userAgent.getRendererOptions().put("consistentOutput", new \
Boolean(true));

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/tools/anttasks/Fop.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/tools/anttasks/Fop.java?rev=1344594&r1=1344593&r2=1344594&view=diff \
                ==============================================================================
                
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/tools/anttasks/Fop.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/tools/anttasks/Fop.java \
Thu May 31 08:33:36 2012 @@ -24,7 +24,7 @@ import java.io.BufferedOutputStream;
 import java.io.File;
 import java.io.IOException;
 import java.io.OutputStream;
-import java.net.MalformedURLException;
+import java.net.URI;
 import java.util.List;
 import java.util.Vector;
 
@@ -41,7 +41,9 @@ import org.apache.tools.ant.util.GlobPat
 
 import org.apache.fop.apps.FOPException;
 import org.apache.fop.apps.FOUserAgent;
+import org.apache.fop.apps.FopConfParser;
 import org.apache.fop.apps.FopFactory;
+import org.apache.fop.apps.FopFactoryBuilder;
 import org.apache.fop.apps.MimeConstants;
 import org.apache.fop.cli.InputHandler;
 
@@ -379,10 +381,10 @@ public class Fop extends Task {
 class FOPTaskStarter {
 
     // configure fopFactory as desired
-    private FopFactory fopFactory = FopFactory.newInstance();
+    private final FopFactory fopFactory;
 
     private Fop task;
-    private String baseURL = null;
+    private URI baseUri;
 
     /**
      * logging instance
@@ -408,8 +410,21 @@ class FOPTaskStarter {
 
     FOPTaskStarter(Fop task) throws SAXException, IOException {
         this.task = task;
+        //Set base directory
+        if (task.getBasedir() != null) {
+            this.baseUri = task.getBasedir().toURI();
+        } else {
+            if (task.getFofile() != null) {
+                this.baseUri = task.getFofile().getParentFile().toURI();
+            }
+        }
         if (task.getUserconfig() != null) {
-            fopFactory.setUserConfig(task.getUserconfig());
+            FopFactoryBuilder confBuilder = new FopConfParser(
+                    task.getUserconfig()).getFopFactoryBuilder();
+            confBuilder.setBaseURI(baseUri);
+            fopFactory = confBuilder.build();
+        } else {
+            fopFactory = FopFactory.newInstance(baseUri);
         }
     }
 
@@ -488,25 +503,7 @@ class FOPTaskStarter {
     }
 
     public void run() throws FOPException {
-        //Set base directory
-        if (task.getBasedir() != null) {
-            try {
-                this.baseURL = task.getBasedir().toURI().toURL().toExternalForm();
-            } catch (MalformedURLException mfue) {
-                logger.error("Error creating base URL from base directory", mfue);
-            }
-        } else {
-            try {
-                if (task.getFofile() != null) {
-                    this.baseURL =  task.getFofile().getParentFile().toURI().toURL()
-                                      .toExternalForm();
-                }
-            } catch (MalformedURLException mfue) {
-                logger.error("Error creating base URL from XSL-FO input file", \
                mfue);
-            }
-        }
-
-        task.log("Using base URL: " + baseURL, Project.MSG_DEBUG);
+        task.log("Using base URI: " + baseUri, Project.MSG_DEBUG);
 
         String outputFormat = normalizeOutputFormat(task.getFormat());
         String newExtension = determineExtension(outputFormat);
@@ -598,12 +595,10 @@ class FOPTaskStarter {
                 }
                 try {
                     if (task.getRelativebase()) {
-                        this.baseURL = f.getParentFile().toURI().toURL()
-                                         .toExternalForm();
+                        this.baseUri = f.getParentFile().toURI();
                     }
-                    if (this.baseURL == null) {
-                        this.baseURL = fs.getDir(task.getProject()).toURI().toURL()
-                                          .toExternalForm();
+                    if (this.baseUri == null) {
+                        this.baseUri = fs.getDir(task.getProject()).toURI();
                     }
 
                 } catch (Exception e) {
@@ -649,7 +644,6 @@ class FOPTaskStarter {
         boolean success = false;
         try {
             FOUserAgent userAgent = fopFactory.newFOUserAgent();
-            userAgent.setBaseURL(this.baseURL);
             inputHandler.renderTo(userAgent, outputFormat, out);
             success = true;
         } catch (Exception ex) {

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/tools/fontlist/FontListGenerator.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/tools/fontlist/FontListGenerator.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/tools/fontlist/FontListGenerator.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/tools/fontlist/FontListGenerator.java \
Thu May 31 08:33:36 2012 @@ -68,7 +68,8 @@ public class FontListGenerator {
         IFDocumentHandlerConfigurator configurator = \
documentHandler.getConfigurator();  
         FontInfo fontInfo = new FontInfo();
-        configurator.setupFontInfo(documentHandler, fontInfo);
+        configurator.setupFontInfo(documentHandler.getMimeType(), fontInfo);
+        documentHandler.setFontInfo(fontInfo);
         return fontInfo;
     }
 

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/tools/fontlist/FontListMain.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/tools/fontlist/FontListMain.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/tools/fontlist/FontListMain.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/tools/fontlist/FontListMain.java \
Thu May 31 08:33:36 2012 @@ -64,7 +64,7 @@ public final class FontListMain {
     private static final int GENERATE_FO = 2;
     private static final int GENERATE_RENDERED = 3;
 
-    private FopFactory fopFactory = FopFactory.newInstance();
+    private FopFactory fopFactory;
 
     private File configFile;
     private File outputFile;
@@ -78,7 +78,9 @@ public final class FontListMain {
 
     private void prepare() throws SAXException, IOException {
         if (this.configFile != null) {
-            fopFactory.setUserConfig(this.configFile);
+            fopFactory = FopFactory.newInstance(configFile);
+        } else {
+            fopFactory = FopFactory.newInstance(new File(".").toURI());
         }
     }
 

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/util/ColorSpaceCache.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/util/ColorSpaceCache.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/util/ColorSpaceCache.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/util/ColorSpaceCache.java \
Thu May 31 08:33:36 2012 @@ -21,6 +21,8 @@ package org.apache.fop.util;
 
 import java.awt.color.ColorSpace;
 import java.awt.color.ICC_Profile;
+import java.net.URI;
+import java.net.URISyntaxException;
 import java.util.Collections;
 import java.util.Map;
 
@@ -35,6 +37,8 @@ import org.apache.xmlgraphics.java2d.col
 import org.apache.xmlgraphics.java2d.color.RenderingIntent;
 import org.apache.xmlgraphics.java2d.color.profile.ColorProfileUtil;
 
+import org.apache.fop.apps.io.URIResolverWrapper;
+
 /**
  * Map with cached ICC based ColorSpace objects.
  */
@@ -72,6 +76,13 @@ public class ColorSpaceCache {
     public ColorSpace get(String profileName, String base, String iccProfileSrc,
             RenderingIntent renderingIntent) {
         String key = profileName + ":" + base + iccProfileSrc;
+        // TODO: This stuff needs some TLC, fix it!!
+        try {
+            URI uri = URIResolverWrapper.getBaseURI(base);
+            key = uri.resolve(URIResolverWrapper.cleanURI(iccProfileSrc)).toASCIIString();
 +        } catch (URISyntaxException e) {
+            // TODO: handle this
+        }
         ColorSpace colorSpace = null;
         if (!colorSpaceMap.containsKey(key)) {
             try {

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/util/ColorUtil.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/ja \
va/org/apache/fop/util/ColorUtil.java?rev=1344594&r1=1344593&r2=1344594&view=diff \
                ==============================================================================
                
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/util/ColorUtil.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/java/org/apache/fop/util/ColorUtil.java \
Thu May 31 08:33:36 2012 @@ -404,10 +404,10 @@ public final class ColorUtil {
                 if (foUserAgent != null && iccProfileSrc != null) {
                     RenderingIntent renderingIntent = RenderingIntent.AUTO;
                     //TODO connect to fo:color-profile/@rendering-intent
-                    colorSpace = foUserAgent.getFactory().getColorSpaceCache().get(
+                    colorSpace = foUserAgent.getColorSpaceCache().get(
                             iccProfileName,
-                            foUserAgent.getBaseURL(), iccProfileSrc,
-                            renderingIntent);
+                            \
foUserAgent.getNewURIResolver().getBaseURI().toASCIIString(), +                       \
iccProfileSrc, renderingIntent);  }
                 if (colorSpace != null) {
                     // ColorSpace is available
@@ -488,10 +488,10 @@ public final class ColorUtil {
                 if (foUserAgent != null && iccProfileSrc != null) {
                     RenderingIntent renderingIntent = RenderingIntent.AUTO;
                     //TODO connect to fo:color-profile/@rendering-intent
-                    colorSpace = \
(ICC_ColorSpace)foUserAgent.getFactory().getColorSpaceCache().get( +                  \
colorSpace = (ICC_ColorSpace)foUserAgent.getColorSpaceCache().get(  iccProfileName,
-                            foUserAgent.getBaseURL(), iccProfileSrc,
-                            renderingIntent);
+                            \
foUserAgent.getNewURIResolver().getBaseURI().toASCIIString(), +                       \
iccProfileSrc, renderingIntent);  }
                 if (colorSpace != null) {
                     ICC_Profile profile = colorSpace.getProfile();

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/mif/MIFHandler.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/sa \
ndbox/org/apache/fop/render/mif/MIFHandler.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/mif/MIFHandler.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/mif/MIFHandler.java \
Thu May 31 08:33:36 2012 @@ -52,7 +52,6 @@ import org.apache.fop.fo.pagination.Page
 import org.apache.fop.fo.pagination.PageSequenceMaster;
 import org.apache.fop.fo.pagination.SimplePageMaster;
 import org.apache.fop.fonts.FontSetup;
-import org.apache.fop.render.DefaultFontResolver;
 
 // TODO: do we really want every method throwing a SAXException
 
@@ -86,7 +85,7 @@ public class MIFHandler extends FOEventH
         super(ua);
         outStream = os;
         boolean base14Kerning = false; //TODO - FIXME
-        FontSetup.setup(fontInfo, null, new DefaultFontResolver(ua), base14Kerning);
+        FontSetup.setup(fontInfo, null, ua.getNewURIResolver(), base14Kerning);
     }
 
     /** {@inheritDoc} */

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/AbstractSVGDocumentHandler.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/sa \
ndbox/org/apache/fop/render/svg/AbstractSVGDocumentHandler.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/AbstractSVGDocumentHandler.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/AbstractSVGDocumentHandler.java \
Thu May 31 08:33:36 2012 @@ -28,6 +28,7 @@ import org.apache.xmlgraphics.xmp.Metada
 
 import org.apache.fop.fonts.FontInfo;
 import org.apache.fop.render.intermediate.AbstractXMLWritingIFDocumentHandler;
+import org.apache.fop.render.intermediate.IFContext;
 import org.apache.fop.render.intermediate.IFDocumentHandlerConfigurator;
 import org.apache.fop.render.intermediate.IFException;
 import org.apache.fop.render.intermediate.IFState;
@@ -53,6 +54,10 @@ public abstract class AbstractSVGDocumen
 
     private int mode = MODE_NORMAL;
 
+    public AbstractSVGDocumentHandler(IFContext context) {
+        super(context);
+    }
+
     /** {@inheritDoc} */
     protected String getMainNamespace() {
         return NAMESPACE;

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGDocumentHandler.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/sa \
ndbox/org/apache/fop/render/svg/SVGDocumentHandler.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGDocumentHandler.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGDocumentHandler.java \
Thu May 31 08:33:36 2012 @@ -38,7 +38,6 @@ import javax.xml.transform.sax.Transform
 import javax.xml.transform.stream.StreamResult;
 
 import org.w3c.dom.Document;
-
 import org.xml.sax.ContentHandler;
 import org.xml.sax.SAXException;
 import org.xml.sax.helpers.AttributesImpl;
@@ -48,6 +47,8 @@ import org.apache.commons.io.IOUtils;
 import org.apache.fop.render.bitmap.BitmapRendererEventProducer;
 import org.apache.fop.render.bitmap.MultiFileRenderingUtil;
 import org.apache.fop.render.intermediate.DelegatingFragmentContentHandler;
+import org.apache.fop.render.intermediate.IFContext;
+import org.apache.fop.render.intermediate.IFDocumentHandler;
 import org.apache.fop.render.intermediate.IFException;
 import org.apache.fop.render.intermediate.IFPainter;
 import org.apache.fop.util.GenerationHelperContentHandler;
@@ -72,8 +73,8 @@ public class SVGDocumentHandler extends 
     /**
      * Default constructor.
      */
-    public SVGDocumentHandler() {
-        //nop
+    public SVGDocumentHandler(IFContext context) {
+        super(context);
     }
 
     /** {@inheritDoc} */

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGDocumentHandlerMaker.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/sa \
ndbox/org/apache/fop/render/svg/SVGDocumentHandlerMaker.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGDocumentHandlerMaker.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGDocumentHandlerMaker.java \
Thu May 31 08:33:36 2012 @@ -19,7 +19,6 @@
 
 package org.apache.fop.render.svg;
 
-import org.apache.fop.apps.FOUserAgent;
 import org.apache.fop.render.intermediate.AbstractIFDocumentHandlerMaker;
 import org.apache.fop.render.intermediate.IFContext;
 import org.apache.fop.render.intermediate.IFDocumentHandler;
@@ -32,10 +31,8 @@ public class SVGDocumentHandlerMaker ext
     private static final String[] MIMES = new String[] {SVGConstants.MIME_TYPE};
 
     /** {@inheritDoc} */
-    public IFDocumentHandler makeIFDocumentHandler(FOUserAgent ua) {
-        SVGDocumentHandler handler = new SVGDocumentHandler();
-        handler.setContext(new IFContext(ua));
-        return handler;
+    public IFDocumentHandler makeIFDocumentHandler(IFContext ifContext) {
+        return new SVGDocumentHandler(ifContext);
     }
 
     /** {@inheritDoc} */

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGPainter.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/sa \
ndbox/org/apache/fop/render/svg/SVGPainter.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGPainter.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGPainter.java \
Thu May 31 08:33:36 2012 @@ -30,7 +30,6 @@ import java.io.IOException;
 import java.util.Map;
 
 import org.w3c.dom.Document;
-
 import org.xml.sax.SAXException;
 import org.xml.sax.helpers.AttributesImpl;
 
@@ -191,7 +190,7 @@ public class SVGPainter extends Abstract
         try {
             establish(MODE_NORMAL);
 
-            ImageManager manager = getUserAgent().getFactory().getImageManager();
+            ImageManager manager = getUserAgent().getImageManager();
             ImageInfo info = null;
             try {
                 ImageSessionContext sessionContext = \
getUserAgent().getImageSessionContext();

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGPrintDocumentHandler.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/sa \
ndbox/org/apache/fop/render/svg/SVGPrintDocumentHandler.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGPrintDocumentHandler.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGPrintDocumentHandler.java \
Thu May 31 08:33:36 2012 @@ -21,12 +21,12 @@ package org.apache.fop.render.svg;
 
 import java.awt.Dimension;
 
-import javax.xml.transform.Result;
-
 import org.xml.sax.SAXException;
 import org.xml.sax.helpers.AttributesImpl;
 
 import org.apache.fop.render.intermediate.IFConstants;
+import org.apache.fop.render.intermediate.IFContext;
+import org.apache.fop.render.intermediate.IFDocumentHandler;
 import org.apache.fop.render.intermediate.IFException;
 import org.apache.fop.render.intermediate.IFPainter;
 import org.apache.fop.util.XMLUtil;
@@ -39,18 +39,8 @@ public class SVGPrintDocumentHandler ext
     /**
      * Default constructor.
      */
-    public SVGPrintDocumentHandler() {
-        //nop
-    }
-
-    /**
-     * Creates a new SVGPrintPainter that sends the XML content it generates to the \
                given
-     * SAX ContentHandler.
-     * @param result the JAXP Result object to receive the generated content
-     * @throws IFException if an error occurs setting up the output
-     */
-    public SVGPrintDocumentHandler(Result result) throws IFException {
-        setResult(result);
+    public SVGPrintDocumentHandler(IFContext context) {
+        super(context);
     }
 
     /** {@inheritDoc} */

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGPrintDocumentHandlerMaker.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/sa \
ndbox/org/apache/fop/render/svg/SVGPrintDocumentHandlerMaker.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGPrintDocumentHandlerMaker.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGPrintDocumentHandlerMaker.java \
Thu May 31 08:33:36 2012 @@ -19,7 +19,6 @@
 
 package org.apache.fop.render.svg;
 
-import org.apache.fop.apps.FOUserAgent;
 import org.apache.fop.render.intermediate.AbstractIFDocumentHandlerMaker;
 import org.apache.fop.render.intermediate.IFContext;
 import org.apache.fop.render.intermediate.IFDocumentHandler;
@@ -32,10 +31,8 @@ public class SVGPrintDocumentHandlerMake
     private static final String[] MIMES = new String[] \
{SVGConstants.MIME_SVG_PRINT};  
     /** {@inheritDoc} */
-    public IFDocumentHandler makeIFDocumentHandler(FOUserAgent ua) {
-        SVGPrintDocumentHandler handler = new SVGPrintDocumentHandler();
-        handler.setContext(new IFContext(ua));
-        return handler;
+    public IFDocumentHandler makeIFDocumentHandler(IFContext ifContext) {
+        return new SVGPrintDocumentHandler(ifContext);
     }
 
     /** {@inheritDoc} */

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGRendererMaker.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/src/sa \
ndbox/org/apache/fop/render/svg/SVGRendererMaker.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGRendererMaker.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/src/sandbox/org/apache/fop/render/svg/SVGRendererMaker.java \
Thu May 31 08:33:36 2012 @@ -19,6 +19,7 @@
 
 package org.apache.fop.render.svg;
 
+import org.apache.fop.apps.FOPException;
 import org.apache.fop.apps.FOUserAgent;
 import org.apache.fop.apps.MimeConstants;
 import org.apache.fop.render.AbstractRendererMaker;
@@ -31,20 +32,23 @@ public class SVGRendererMaker extends Ab
 
     private static final String[] MIMES = new String[] {MimeConstants.MIME_SVG};
 
-
-    /** {@inheritDoc} */
+    @Override
     public Renderer makeRenderer(FOUserAgent ua) {
         return new SVGRenderer(ua);
     }
 
-    /** {@inheritDoc} */
+    @Override
     public boolean needsOutputStream() {
         return true;
     }
 
-    /** {@inheritDoc} */
+    @Override
     public String[] getSupportedMimeTypes() {
         return MIMES;
     }
 
+    @Override
+    public void configureRenderer(FOUserAgent userAgent, Renderer renderer) throws \
FOPException { +        // No-Op
+    }
 }

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/test/config/afp-invalid-characterset.xconf
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/test/config/afp-invalid-characterset.xconf?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/test/config/afp-invalid-characterset.xconf \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/test/config/afp-invalid-characterset.xconf \
Thu May 31 08:33:36 2012 @@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <fop version="1.0">
   <base>.</base>
+  <strict-validation>false</strict-validation>
   <renderers>
    <renderer mime="application/x-afp">
       <fonts>

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/test/config/afp-invalid-config.xconf
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/test/config/afp-invalid-config.xconf?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/test/config/afp-invalid-config.xconf \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/test/config/afp-invalid-config.xconf \
Thu May 31 08:33:36 2012 @@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <fop version="1.0">
   <base>.</base>
+  <strict-validation>false</strict-validation>
   <renderers>
    <renderer mime="application/x-afp">
       <fonts>

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/test/config/afp-raster-font-missing.xconf
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/test/config/afp-raster-font-missing.xconf?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/test/config/afp-raster-font-missing.xconf \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/test/config/afp-raster-font-missing.xconf \
Thu May 31 08:33:36 2012 @@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <fop version="1.0">
   <base>.</base>
+  <strict-validation>false</strict-validation>
   <renderers>
    <renderer mime="application/x-afp">
       <fonts>

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/test/fotree/testcases/background-position-shorthand-test.fo
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/test/f \
otree/testcases/background-position-shorthand-test.fo?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/test/fotree/testcases/background-position-shorthand-test.fo \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/test/fotree/testcases/background-position-shorthand-test.fo \
Thu May 31 08:33:36 2012 @@ -24,56 +24,56 @@
   </fo:layout-master-set>
   <fo:page-sequence master-reference="simpleA4">
     <fo:flow flow-name="xsl-region-body">
-      <fo:block background-image="../../resources/images/bgimg72dpi.jpg">
+      <fo:block background-image="test/resources/images/bgimg72dpi.jpg">
         <test:assert property="background-position-horizontal" expected="0mpt"/>
         <test:assert property="background-position-vertical" expected="0mpt"/>
         Test background-position shorthand: initial values
       </fo:block>
-      <fo:block background-image="../../resources/images/bgimg72dpi.jpg"
+      <fo:block background-image="test/resources/images/bgimg72dpi.jpg"
                 background-position="50% 50%">
         <test:assert property="background-position-horizontal" expected="50.0%"/>
         <test:assert property="background-position-vertical" expected="50.0%"/>
         Test background-position shorthand: "50% 50%"
       </fo:block>
-      <fo:block background-image="../../resources/images/bgimg72dpi.jpg"
+      <fo:block background-image="test/resources/images/bgimg72dpi.jpg"
                 background-position="2in 50%">
         <test:assert property="background-position-horizontal" \
                expected="144000mpt"/>
         <test:assert property="background-position-vertical" expected="50.0%"/>
         Test background-position shorthand: "2in 50%"
       </fo:block>
-      <fo:block background-image="../../resources/images/bgimg72dpi.jpg"
+      <fo:block background-image="test/resources/images/bgimg72dpi.jpg"
                 background-position="100%">
         <test:assert property="background-position-horizontal" expected="100.0%"/>
         <test:assert property="background-position-vertical" expected="50.0%"/>
         Test background-position shorthand: "100%"
       </fo:block>
-      <fo:block background-image="../../resources/images/bgimg72dpi.jpg"
+      <fo:block background-image="test/resources/images/bgimg72dpi.jpg"
                 background-position="top center">
         <test:assert property="background-position-horizontal" expected="50.0%"/>
         <test:assert property="background-position-vertical" expected="0mpt"/>
         Test background-position shorthand: "top center"
       </fo:block>
-      <fo:block background-image="../../resources/images/bgimg72dpi.jpg"
+      <fo:block background-image="test/resources/images/bgimg72dpi.jpg"
                 background-position="right bottom">
         <test:assert property="background-position-horizontal" expected="100.0%"/>
         <test:assert property="background-position-vertical" expected="100.0%"/>
         Test background-position shorthand: "right bottom"
       </fo:block>
       <fo:block background-position="right bottom">
-        <fo:block background-image="../../resources/images/bgimg72dpi.jpg"
+        <fo:block background-image="test/resources/images/bgimg72dpi.jpg"
                   background-position="inherit">
           <test:assert property="background-position-horizontal" expected="100.0%"/>
           <test:assert property="background-position-vertical" expected="100.0%"/>
           Test background-position shorthand: "inherit"
         </fo:block>
       </fo:block>
-      <fo:block background-image="../../resources/images/bgimg72dpi.jpg"
+      <fo:block background-image="test/resources/images/bgimg72dpi.jpg"
                 background-position="top right">
         <test:assert property="background-position-horizontal" expected="100.0%"/>
         <test:assert property="background-position-vertical" expected="0mpt"/>
         Test background-position shorthand: "top right"
       </fo:block>
-      <fo:block background-image="../../resources/images/bgimg72dpi.jpg"
+      <fo:block background-image="test/resources/images/bgimg72dpi.jpg"
                 background-position="center">
         <test:assert property="background-position-horizontal" expected="50.0%"/>
         <test:assert property="background-position-vertical" expected="50.0%"/>

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/AbstractBasicTranscoderTest.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/test/j \
ava/org/apache/fop/AbstractBasicTranscoderTest.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/AbstractBasicTranscoderTest.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/AbstractBasicTranscoderTest.java \
Thu May 31 08:33:36 2012 @@ -19,22 +19,24 @@
 
 package org.apache.fop;
 
-import static org.junit.Assert.assertTrue;
-
 import java.io.File;
 import java.io.InputStream;
 
+import org.junit.Test;
+
 import org.apache.batik.transcoder.Transcoder;
 import org.apache.batik.transcoder.TranscoderInput;
 import org.apache.batik.transcoder.TranscoderOutput;
 import org.apache.commons.io.output.ByteArrayOutputStream;
-import org.junit.Test;
+
+import static org.apache.fop.FOPTestUtils.getBaseDir;
+import static org.junit.Assert.assertTrue;
 
 /**
  * Basic runtime test for FOP's transcoders. It is used to verify that
  * nothing obvious is broken after compiling.
  */
-public abstract class AbstractBasicTranscoderTest extends AbstractFOPTest {
+public abstract class AbstractBasicTranscoderTest {
 
     /**
      * Creates the transcoder to test.

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/BasicDriverTestCase.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/test/j \
ava/org/apache/fop/BasicDriverTestCase.java?rev=1344594&r1=1344593&r2=1344594&view=diff
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/BasicDriverTestCase.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/BasicDriverTestCase.java \
Thu May 31 08:33:36 2012 @@ -19,8 +19,6 @@
 
 package org.apache.fop;
 
-import static org.junit.Assert.assertTrue;
-
 import java.io.File;
 
 import javax.xml.transform.Result;
@@ -30,21 +28,26 @@ import javax.xml.transform.TransformerFa
 import javax.xml.transform.sax.SAXResult;
 import javax.xml.transform.stream.StreamSource;
 
+import org.junit.Test;
+
 import org.apache.commons.io.output.ByteArrayOutputStream;
+
 import org.apache.fop.apps.FOUserAgent;
 import org.apache.fop.apps.Fop;
 import org.apache.fop.apps.FopFactory;
 import org.apache.fop.apps.MimeConstants;
 import org.apache.fop.cli.InputHandler;
-import org.junit.Test;
+
+import static org.apache.fop.FOPTestUtils.getBaseDir;
+import static org.junit.Assert.assertTrue;
 
 /**
  * Basic runtime test for the old Fop class. It is used to verify that
  * nothing obvious is broken after compiling.
  */
-public class BasicDriverTestCase extends AbstractFOPTest {
+public class BasicDriverTestCase {
 
-    private FopFactory fopFactory = FopFactory.newInstance();
+    private FopFactory fopFactory = FopFactory.newInstance(new File(".").toURI());
 
     /**
      * Tests Fop with JAXP and OutputStream generating PDF.

Added: xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/FOPTestUtils.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/FOPTestUtils.java?rev=1344594&view=auto
 ==============================================================================
--- xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/FOPTestUtils.java \
                (added)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/FOPTestUtils.java \
Thu May 31 08:33:36 2012 @@ -0,0 +1,40 @@
+/*
+ * 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.
+ */
+
+/* $Id$ */
+
+package org.apache.fop;
+
+import java.io.File;
+
+/**
+ * Abstract base test class for FOP's tests.
+ */
+public final class FOPTestUtils {
+
+    private FOPTestUtils() {
+    }
+
+    /**
+     * Returns the base directory to use for the tests.
+     * @return the base directory
+     */
+    public static File getBaseDir() {
+        return new File(".").getAbsoluteFile();
+    }
+
+}

Propchange: xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/FOPTestUtils.java
                
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/StandardTestSuite.java
                
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_URI_Unification/test/j \
ava/org/apache/fop/StandardTestSuite.java?rev=1344594&r1=1344593&r2=1344594&view=diff \
                ==============================================================================
                
--- xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/StandardTestSuite.java \
                (original)
+++ xmlgraphics/fop/branches/Temp_URI_Unification/test/java/org/apache/fop/StandardTestSuite.java \
Thu May 31 08:33:36 2012 @@ -26,8 +26,6 @@ import org.junit.runners.Suite.SuiteClas
 import org.apache.fop.afp.fonts.CharactersetEncoderTestCase;
 import org.apache.fop.afp.parser.MODCAParserTestCase;
 import org.apache.fop.area.ViewportTestSuite;
-import org.apache.fop.fonts.DejaVuLGCSerifTestCase;
-import org.apache.fop.fonts.FontEventProcessingTestCase;
 import org.apache.fop.fonts.truetype.GlyfTableTestCase;
 import org.apache.fop.fonts.type1.AFMParserTestCase;
 import org.apache.fop.fonts.type1.AdobeStandardEncodingTestCase;
@@ -58,7 +56,6 @@ import org.apache.fop.traits.MinOptMaxTe
         PDFEncodingTestCase.class,
         PDFCMapTestCase.class,
         PDFsRGBSettingsTestCase.class,
-        DejaVuLGCSerifTestCase.class,
         RichTextFormatTestSuite.class,
         ImageLoaderTestCase.class,
         ImagePreloaderTestCase.class,
@@ -78,8 +75,8 @@ import org.apache.fop.traits.MinOptMaxTe
         MinOptMaxTestCase.class,
         AdobeStandardEncodingTestCase.class,
         AFMParserTestCase.class,
-        FontEventProcessingTestCase.class,
-        org.apache.fop.render.intermediate.IFStructureTreeBuilderTestCase.class
+        org.apache.fop.render.intermediate.IFStructureTreeBuilderTestCase.class,
+        org.apache.fop.fonts.FontsTestSuite.class
 })
 public class StandardTestSuite {
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: fop-commits-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: fop-commits-help@xmlgraphics.apache.org


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic