]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
removed old configuration
authorKeiron Liddle <keiron@apache.org>
Wed, 4 Sep 2002 08:36:37 +0000 (08:36 +0000)
committerKeiron Liddle <keiron@apache.org>
Wed, 4 Sep 2002 08:36:37 +0000 (08:36 +0000)
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@195149 13f79535-47bb-0310-9956-ffa450edef68

25 files changed:
build.xml
conf/config.dtd [deleted file]
conf/config.xml [deleted file]
conf/userconfig.xml [deleted file]
src/org/apache/fop/apps/AWTStarter.java
src/org/apache/fop/apps/CommandLineOptions.java
src/org/apache/fop/apps/CommandLineStarter.java
src/org/apache/fop/apps/Driver.java
src/org/apache/fop/apps/Fop.java
src/org/apache/fop/apps/Options.java [deleted file]
src/org/apache/fop/apps/PrintStarter.java
src/org/apache/fop/apps/Starter.java
src/org/apache/fop/apps/Version.java
src/org/apache/fop/configuration/Configuration.java [deleted file]
src/org/apache/fop/configuration/ConfigurationParser.java [deleted file]
src/org/apache/fop/configuration/ConfigurationReader.java [deleted file]
src/org/apache/fop/layout/hyphenation/Hyphenator.java
src/org/apache/fop/mif/MIFHandler.java
src/org/apache/fop/render/PrintRenderer.java
src/org/apache/fop/render/pdf/FontReader.java
src/org/apache/fop/render/ps/PSRenderer.java
src/org/apache/fop/render/xml/XMLRenderer.java
src/org/apache/fop/tools/AreaTreeBuilder.java
src/org/apache/fop/tools/TestConverter.java
src/org/apache/fop/tools/anttasks/Fop.java

index 8e665fa1b98bfa5a12c12f614e473f86140971ba..f2de78ff4f4cc1a0f8309bb58cc1d477de21afed 100644 (file)
--- a/build.xml
+++ b/build.xml
@@ -186,7 +186,7 @@ Sometimes ant gives out this warnings, but the build is finished without any pro
     <property name="build.compiler" value="classic"/>
     <property name="debug" value="on"/>
     <property name="optimize" value="off"/>
-    <property name="deprecation" value="off"/>
+    <property name="deprecation" value="on"/>
 
     <property name="textfontencoding" value="WinAnsiEncoding"/>
 
@@ -308,11 +308,7 @@ Sometimes ant gives out this warnings, but the build is finished without any pro
     <mkdir dir="${build.src}/${properties.dir}"/>
     <mkdir dir="${build.src}/${fonts.dir}"/>
     <mkdir dir="${build.src}/${svg.dir}"/>
-    <mkdir dir="${build.dest}/conf"/>
     <mkdir dir="${build.dest}/hyph"/>
-    <copy todir="${build.dest}/conf" filtering="yes">
-       <fileset dir="./conf"/>
-    </copy>
   </target>
 
   <!-- =================================================================== -->
@@ -548,7 +544,7 @@ Sometimes ant gives out this warnings, but the build is finished without any pro
     </pathconvert>
     <jar jarfile="${build.dir}/${name}.jar"
          basedir="${build.dest}"
-         includes="org/**,conf/**,hyph/**">
+         includes="org/**,hyph/**">
     <manifest>
         <attribute name="Main-Class" value="${main.class}"/>
         <attribute name="Class-Path" value="${manifest-classpath}"/>
diff --git a/conf/config.dtd b/conf/config.dtd
deleted file mode 100644 (file)
index d51a1a9..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-<!ELEMENT configuration (entry+)>
-<!ELEMENT entry (key,(value | list))>
-<!ELEMENT key (#PCDATA)>
-<!ELEMENT value (#PCDATA)>
-<!ELEMENT list (value+ | subentry+)>
-<!ELEMENT subentry (key,value+)>
\ No newline at end of file
diff --git a/conf/config.xml b/conf/config.xml
deleted file mode 100644 (file)
index 6d75a58..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-<!--<!DOCTYPE configuration SYSTEM "config.dtd">-->
-<!-- to developers: have a look at the config.dtd to 
-     see how to structure your config entries -->
-
-<configuration>
-  <entry>
-    <key>version</key>
-    <value>FOP @version@</value>
-  </entry>
-
-  <!-- default values for commandline options -->
-  <!-- suppress all progress information, error message are still displayed -->
-  <entry>
-    <key>quiet</key>
-    <value>false</value>
-  </entry>
-<!-- sets debug mode on/off; debug mode hasm more progress 
-     information and a stacktrace in case of a fatal exception -->
-  <entry>
-    <key>debugMode</key>
-    <value>false</value>
-  </entry>
-  <!-- displays all configuration  settings and then exits -->
-  <entry>
-    <key>dumpConfiguration</key>
-    <value>false</value>
-  </entry>
-  <!--  -->
-  <entry>
-    <key>debugMode</key>
-    <value>false</value>
-  </entry>
-
-
-  <!-- stream-filter-list provides the default filters that are applied to all
-       stream objects within the PDF file. These are normally used for 
-       compression -->
-  <entry role="pdf">
-    <key>stream-filter-list</key>
-    <list>
-      <!-- provides compression using zlib flate (default is on)-->
-      <value>flate</value>
-      
-      <!-- encodes binary data into printable ascii characters (default off)
-           This provides about a 4:5 expansion of data size -->
-      <value>ascii-85</value>
-
-      <!-- encodes binary data with hex representation (default off)
-           This filter is not recommended as it doubles the data size -->
-      <!-- <value>ascii-hex</value> -->
-    </list>
-  </entry>
-  <fonts>
-  </fonts>
-</configuration>
diff --git a/conf/userconfig.xml b/conf/userconfig.xml
deleted file mode 100644 (file)
index 0ccc6e0..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-<!--<!DOCTYPE configuration SYSTEM "config.dtd">-->
-<!-- 
-     this file contains templates which allow an user easy 
-     configuration of Fop. Actually normally you don't need this configuration 
-     file, but if you need to change configuration, you should
-     always use this file and *not* config.xml. 
-     Usage: java org.apache.fop.apps.Fop -c userconfig.xml -fo fo-file -pdf pdf-file
--->
-
-
-<configuration>
-
-<!--  NOT IMPLEMENTED
-basedir: normally the base directory is the directory where the fo file is 
-         located. if you want to specify your own, uncomment this entry
--->
-<!-- 
-  <entry>
-    <key>baseDir</key>
-    <value></value>
-  </entry>
--->
-
-<!--
-************************************************************************
-                        HYPHENATION 
-************************************************************************
--->
-  
-<!--
-   hyphenation directory 
-   if you want to specify your own directory with hyphenation pattern
-   then uncomment the next entry and add the directory name
--->
-
-<!--
-  <entry>
-    <key>hyphenation-dir</key>
-    <value>/java/xml-fop/hyph</value>
-  </entry>
--->
-
-<!--
-************************************************************************
-  Add fonts here
-************************************************************************
--->
-
-<fonts>
- <!-- example -->
- <!--
- <font metrics-file="arial.xml" kerning="yes" embed-file="arial.ttf">
-    <font-triplet name="Arial" style="normal" weight="normal"/>
-    <font-triplet name="ArialMT" style="normal" weight="normal"/>
- </font>
- <font metrics-file="arialb.xml" kerning="yes" embed-file="arialb.ttf">
-    <font-triplet name="Arial" style="normal" weight="bold"/>
-    <font-triplet name="ArialMT" style="normal" weight="bold"/>
- </font>
- <font metrics-file="ariali.xml" kerning="yes" embed-file="ariali.ttf">
-    <font-triplet name="Arial" style="italic" weight="normal"/>
-    <font-triplet name="ArialMT" style="italic" weight="normal"/>
- </font>
- <font metrics-file="arialbi.xml" kerning="yes" embed-file="arialbi.ttf">
-    <font-triplet name="Arial" style="italic" weight="bold"/>
-    <font-triplet name="ArialMT" style="italic" weight="bold"/>
- </font>
- -->
-</fonts>
-
-
-</configuration>
-
-
-
index 6f2bc3c210a0fc3e25006b1df09757624f610aaf..3b661f2e705abe02d5788efbd067b70b82e2a544 100644 (file)
@@ -95,9 +95,6 @@ public class AWTStarter extends CommandLineStarter {
     public void run() throws FOPException {
         Driver driver = new Driver();
         setupLogger(driver);
-        if (errorDump) {
-            driver.setErrorDump(true);
-        }
 
         // init parser
         frame.progress(resource.getString("Init parser") + " ...");
index 0dc4d3990021e9b156b94f52734defca75b48684..764424308a5a4ea7c02ecb473b5d8250fece5b53 100644 (file)
@@ -13,7 +13,6 @@ import java.io.File;
 import java.io.FileNotFoundException;
 
 // FOP
-import org.apache.fop.configuration.Configuration;
 import org.apache.fop.apps.FOPException;
 
 // Avalon
@@ -52,8 +51,6 @@ public class CommandLineOptions {
     /* output: XML area tree */
     private static final int AREA_OUTPUT = 9;
 
-    /* use debug mode */
-    Boolean errorDump = Boolean.FALSE;
     /* show configuration information */
     Boolean dumpConfiguration = Boolean.FALSE;
     /* suppress any progress information */
@@ -92,9 +89,6 @@ public class CommandLineOptions {
             optionsParsed = parseOptions(args);
             if (optionsParsed) {
                 checkSettings();
-                if (errorDump != null && errorDump.booleanValue()) {
-                    debug();
-                }
             }
         } catch (FOPException e) {
             printUsage();
@@ -106,6 +100,10 @@ public class CommandLineOptions {
 
     }
 
+    public Logger getLogger() {
+        return log;
+    }
+
     /**
      * parses the commandline arguments
      * @return true if parse was successful and procesing can continue, false if processing should stop
@@ -114,7 +112,6 @@ public class CommandLineOptions {
     private boolean parseOptions(String args[]) throws FOPException {
         for (int i = 0; i < args.length; i++) {
             if (args[i].equals("-d") || args[i].equals("--full-error-dump")) {
-                errorDump = Boolean.TRUE;
                 log = new ConsoleLogger(ConsoleLogger.LEVEL_DEBUG);
             } else if (args[i].equals("-x")
                        || args[i].equals("--dump-config")) {
@@ -452,10 +449,6 @@ public class CommandLineOptions {
         return dumpConfiguration;
     }
 
-    public Boolean isDebugMode() {
-        return errorDump;
-    }
-
     public Boolean isCoarseAreaXml() {
         return suppressLowLevelAreas;
     }
@@ -598,11 +591,6 @@ public class CommandLineOptions {
         } else {
             log.debug("no user configuration file is used [default]");
         }
-        if (errorDump != null) {
-            log.debug("debug mode on");
-        } else {
-            log.debug("debug mode off [default]");
-        }
         if (dumpConfiguration != null) {
             log.debug("dump configuration");
         } else {
index 9a2543842b848f5717797ad4a98b809b8df9b4ca..46cd0cf369852d903537d3055570c35f7ab87da0 100644 (file)
@@ -18,9 +18,6 @@ import java.io.*;
 import java.net.URL;
 
 
-// FOP
-import org.apache.fop.configuration.Configuration;
-
 /**
  * super class for all classes which start Fop from the commandline
  *
@@ -29,14 +26,10 @@ import org.apache.fop.configuration.Configuration;
 public class CommandLineStarter extends Starter {
 
     CommandLineOptions commandLineOptions;
-    boolean errorDump;
 
     public CommandLineStarter(CommandLineOptions commandLineOptions)
     throws FOPException {
         this.commandLineOptions = commandLineOptions;
-        options.setCommandLineOptions(commandLineOptions);
-        errorDump =
-          Configuration.getBooleanValue("debugMode").booleanValue();
         super.setInputHandler(commandLineOptions.getInputHandler());
     }
 
@@ -56,10 +49,6 @@ public class CommandLineStarter extends Starter {
         setupLogger(driver);
         driver.initialize();
 
-        if (errorDump) {
-            driver.setErrorDump(true);
-        }
-
         try {
             driver.setRenderer(commandLineOptions.getRenderer());
             BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(
index 77270308849abdb6020212230eb06985e60b6432..5424bd715c3288ab6c9117a3dba4e9d62f40b9ec 100644 (file)
@@ -12,8 +12,6 @@ import org.apache.fop.fo.FOUserAgent;
 import org.apache.fop.fo.FOTreeBuilder;
 import org.apache.fop.fo.ElementMapping;
 import org.apache.fop.render.Renderer;
-import org.apache.fop.configuration.ConfigurationReader;
-import org.apache.fop.configuration.Configuration;
 import org.apache.fop.tools.DocumentInputSource;
 import org.apache.fop.tools.DocumentReader;
 
@@ -166,11 +164,6 @@ public class Driver implements LogEnabled {
      */
     private XMLReader _reader;
 
-    /**
-     * If true, full error stacks are reported
-     */
-    private boolean _errorDump = false;
-
     /**
      * the system resources that FOP will use
      */
@@ -215,8 +208,7 @@ public class Driver implements LogEnabled {
         if(userAgent == null) {
             userAgent = new FOUserAgent();
             userAgent.enableLogging(getLogger());
-            String base = org.apache.fop.configuration.Configuration.getStringValue("baseDir");
-            userAgent.setBaseURL(base);
+            userAgent.setBaseURL("file:/.");
         }
         return userAgent;
     }
@@ -255,14 +247,6 @@ public class Driver implements LogEnabled {
         return (_treeBuilder.hasData());
     }
 
-    /**
-     * Set the error dump option
-     * @param dump if true, full stacks will be reported to the error log
-     */
-    public void setErrorDump(boolean dump) {
-        _errorDump = dump;
-    }
-
     /**
      * Set the OutputStream to use to output the result of the Renderer
      * (if applicable)
@@ -517,27 +501,6 @@ public class Driver implements LogEnabled {
 
     }
 
-    /**
-     * Dumps an error
-     */
-    public void dumpError(Exception e) {
-        if (_errorDump) {
-            if (e instanceof SAXException) {
-                getLogger().error("", e);
-                if (((SAXException)e).getException() != null) {
-                    getLogger().error("", ((SAXException)e).getException());
-                }
-            } else if (e instanceof FOPException) {
-                e.printStackTrace();
-                if (((FOPException)e).getException() != null) {
-                    getLogger().error("", ((FOPException)e).getException());
-                }
-            } else {
-                getLogger().error("", e);
-            }
-        }
-    }
-
     /**
      * Runs the formatting and renderering process using the previously set
      * inputsource and outputstream
@@ -553,7 +516,11 @@ public class Driver implements LogEnabled {
 
         if (_reader == null) {
             if (!(_source instanceof DocumentInputSource)) {
-                _reader = ConfigurationReader.createParser();
+                try {
+                _reader = javax.xml.parsers.SAXParserFactory.newInstance().newSAXParser().getXMLReader();
+                } catch(Exception e) {
+                    throw new FOPException(e);
+                }
             }
         }
 
index 4a2352d51e4c5a5a2439f767dbed8be7c6e24d6c..91399e53acbddd83f0447e694dbe131486b62990 100644 (file)
@@ -21,14 +21,14 @@ public class Fop {
             } else {
                 System.err.println("" + e.getMessage());
             }
-            if (options != null && options.isDebugMode().booleanValue()) {
+            if (options != null && options.getLogger().isDebugEnabled()) {
                 e.printStackTrace();
             } else {
                 System.err.println("Turn on debugging for more information");
             }
         } catch (java.io.FileNotFoundException e) {
             System.err.println("" + e.getMessage());
-            if (options != null && options.isDebugMode().booleanValue()) {
+            if (options != null && options.getLogger().isDebugEnabled()) {
                 e.printStackTrace();
             } else {
                 System.err.println("Turn on debugging for more information");
diff --git a/src/org/apache/fop/apps/Options.java b/src/org/apache/fop/apps/Options.java
deleted file mode 100644 (file)
index bdccd96..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * $Id$
- * Copyright (C) 2001 The Apache Software Foundation. All rights reserved.
- * For details on use and redistribution please refer to the
- * LICENSE file included with these sources.
- */
-
-package org.apache.fop.apps;
-
-// sax
-import org.xml.sax.InputSource;
-
-// java
-import java.io.File;
-import java.io.InputStream;
-
-// fop
-import org.apache.fop.configuration.Configuration;
-import org.apache.fop.configuration.ConfigurationReader;
-
-/**
- * Options handles loading of configuration files and
- * additional setting of commandline options
- */
-public class Options {
-    boolean errorDump = false;
-
-    public Options() throws FOPException {
-        this.loadStandardConfiguration();
-        initOptions();
-    }
-
-    public Options(File userConfigFile) throws FOPException {
-        this();
-        this.loadUserconfiguration(userConfigFile);
-    }
-
-    public Options(CommandLineOptions clOptions) throws FOPException {
-        this();
-        this.setCommandLineOptions(clOptions);
-    }
-
-    // initializing option settings
-    void initOptions() {
-        if (Configuration.getBooleanValue("quiet").booleanValue()) {
-            //MessageHandler.setQuiet(true);
-        }
-        if (Configuration.getBooleanValue("debugMode").booleanValue()) {
-            errorDump = true;
-        }
-        if (Configuration.getBooleanValue("dumpConfiguration").booleanValue()) {
-            Configuration.put("dumpConfiguration", "true");
-            Configuration.dumpConfiguration();
-        }
-    }
-
-    // setting clOptions
-    void setCommandLineOptions(CommandLineOptions clOptions) {
-        // load user configuration file,if there is one
-        File userConfigFile = clOptions.getUserConfigFile();
-        if (userConfigFile != null) {
-            this.loadUserconfiguration(userConfigFile);
-        }
-
-        // debug mode
-        if (clOptions.isDebugMode() != null) {
-            errorDump = clOptions.isDebugMode().booleanValue();
-            Configuration.put("debugMode", new Boolean(errorDump));
-        }
-
-        // show configuration settings
-        boolean dumpConfiguration;
-        if (clOptions.dumpConfiguration() != null) {
-            dumpConfiguration = clOptions.dumpConfiguration().booleanValue();
-        } else {
-            dumpConfiguration =
-                Configuration.getBooleanValue("dumpConfiguration").booleanValue();
-        }
-        if (dumpConfiguration) {
-            Configuration.put("dumpConfiguration", "true");
-            Configuration.dumpConfiguration();
-        }
-
-        // quiet mode
-        if (clOptions.isQuiet() != null) {
-            //MessageHandler.setQuiet(clOptions.isQuiet().booleanValue());
-        }
-
-        // set base directory
-        String baseDir = Configuration.getStringValue("baseDir");
-        if (baseDir == null) {
-            try {
-                baseDir =
-                    new File(clOptions.getInputFile().getAbsolutePath()).getParentFile().toURL().toExternalForm();
-                Configuration.put("baseDir", baseDir);
-            } catch (Exception e) {}
-        }
-        if (errorDump) {
-            //log.debug("base directory: " + baseDir);
-        }
-    }
-
-    /**
-     * loads standard configuration file and a user file, if it has been specified
-     */
-    public void loadStandardConfiguration() throws FOPException {
-        String file = "config.xml";
-        InputStream configfile = null;
-
-        // Try to use Context Class Loader to load the properties file.
-        try {
-            java.lang.reflect.Method getCCL =
-                Thread.class.getMethod("getContextClassLoader", new Class[0]);
-            if (getCCL != null) {
-                ClassLoader contextClassLoader =
-                    (ClassLoader)getCCL.invoke(Thread.currentThread(),
-                                               new Object[0]);
-                configfile = contextClassLoader.getResourceAsStream("conf/"
-                        + file);
-            }
-        } catch (Exception e) {}
-
-        // the entry /conf/config.xml refers to a directory conf which is a sibling of org
-        if (configfile == null)
-            configfile =
-                ConfigurationReader.class.getResourceAsStream("/conf/"
-                    + file);
-        if (configfile == null) {
-            throw new FOPException("can't find default configuration file");
-        }
-        if (errorDump) {
-            //log.error("reading default configuration file");
-        }
-        ConfigurationReader reader =
-            new ConfigurationReader(new InputSource(configfile));
-        if (errorDump) {
-            reader.setDumpError(true);
-        }
-        reader.start();
-
-    }
-
-    public void loadUserconfiguration(String userConfigFile) {
-        loadUserconfiguration(new File(userConfigFile));
-    }
-
-    public void loadUserconfiguration(File userConfigFile) {
-        // read user configuration file
-        if (userConfigFile != null) {
-            //log.debug("reading user configuration file");
-            ConfigurationReader reader =
-                new ConfigurationReader(InputHandler.fileInputSource(userConfigFile));
-            if (errorDump) {
-                reader.setDumpError(true);
-            }
-            try {
-                reader.start();
-            } catch (org.apache.fop.apps.FOPException error) {
-                //log.error("Could not load user configuration file "
-                //                       + userConfigFile + " - error: "
-                //                       + error.getMessage());
-                //log.error("using default values");
-                if (errorDump) {
-                    reader.dumpError(error);
-                }
-            }
-        }
-    }
-
-}
-
-
index 11154f1e68bde30ba7980828f806f5ba1baaf93b..cb80c321061b4ff47a21ac318c53355b3ec6a0e8 100644 (file)
@@ -51,9 +51,6 @@ public class PrintStarter extends CommandLineStarter {
 
     public void run() throws FOPException {
         Driver driver = new Driver();
-        if (errorDump) {
-            driver.setErrorDump(true);
-        }
 
         String version = Version.getVersion();
         //log.debug(version);
index 3c280b27410b48f5902ff07d330e7971d3f184bb..9538cee29367420b0db8d1f4e9b57592f3465714 100644 (file)
@@ -25,11 +25,9 @@ import java.net.URL;
  */
 public abstract class Starter extends AbstractLogEnabled {
 
-    Options options;
     InputHandler inputHandler;
 
     public Starter() throws FOPException {
-        options = new Options();
     }
 
     public void setInputHandler(InputHandler inputHandler) {
index a7d64534b6b90c777323d13b5bfb4a892121125b..885012c9ebd22b6b3ffc38eb2454de2ba24bb0ed 100644 (file)
@@ -7,8 +7,6 @@
 
 package org.apache.fop.apps;
 
-import org.apache.fop.configuration.Configuration;
-
 /**
  * class representing the version of FOP.
  */
@@ -20,7 +18,7 @@ public class Version {
      * @return the version string
      */
     public static String getVersion() {
-        return Configuration.getStringValue("version");
+        return "1.0dev";
     }
 
 }
diff --git a/src/org/apache/fop/configuration/Configuration.java b/src/org/apache/fop/configuration/Configuration.java
deleted file mode 100644 (file)
index 002e795..0000000
+++ /dev/null
@@ -1,345 +0,0 @@
-/*
- * $Id$
- * Copyright (C) 2001 The Apache Software Foundation. All rights reserved.
- * For details on use and redistribution please refer to the
- * LICENSE file included with these sources.
- */
-
-package org.apache.fop.configuration;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-
-/**
- * a configuration class for all general configuration aspects except those
- * related to specific renderers. All configuration is stored
- * in key / value pairs. The value can be a String, a list of Strings
- * or a map, containing a list of key / value pairs.
- *
- */
-public class Configuration {
-
-    /**
-     * defines role types
-     */
-    public final static int STANDARD = 0;
-    public final static int PDF = 1;
-    public final static int AWT = 2;
-
-    /**
-     * stores the configuration information
-     */
-    private static HashMap standardConfiguration = new HashMap(30);
-    private static HashMap pdfConfiguration = new HashMap(20);
-    private static HashMap awtConfiguration = new HashMap(20);
-
-    /**
-     * contains a HashMap of existing HashMaps
-     */
-    private static HashMap configuration = new HashMap(3);
-
-    /**
-     * loads the configuration types into the configuration HashMap
-     */
-    static {
-        configuration.put("standard", standardConfiguration);
-        configuration.put("pdf", pdfConfiguration);
-        configuration.put("awt", awtConfiguration);
-    }
-
-    public static HashMap getConfiguration() {
-        return configuration;
-    }
-
-    /**
-     * general access method
-     *
-     * @param key a string containing the key value for the configuration value
-     * role detemines the configuration target
-     * @return Object containing the value; normally you would use one of the
-     * convenience methods, which return the correct form.
-     * null   if the key is not defined.
-     */
-    public static Object getValue(String key, int role) {
-        switch (role) {
-        case Configuration.STANDARD:
-            return standardConfiguration.get(key);
-        case Configuration.PDF:
-            return pdfConfiguration.get(key);
-        case Configuration.AWT:
-            return awtConfiguration.get(key);
-        default:
-            return standardConfiguration.get(key);
-        }
-    }
-
-    /**
-     * convenience methods to access strings values in the configuration
-     * @param key a string containing the key value for the configuration value
-     * role detemines the configuration target
-     * @return String a string containing the value
-     * null   if the key is not defined.
-     */
-    public static String getStringValue(String key, int role) {
-        Object obj = Configuration.getValue(key, role);
-        if (obj instanceof String) {
-            return (String)obj;
-        } else {
-            return null;
-        }
-    }
-
-    /**
-     * convenience methods to access int values in the configuration
-     * @param key a string containing the key value for the configuration value
-     * role detemines the configuration target
-     * @return int a int containing the value
-     * -1   if the key is not defined.
-     */
-    public static int getIntValue(String key, int role) {
-        Object obj = Configuration.getValue(key, role);
-        if (obj instanceof String) {
-            return Integer.parseInt((String)obj);
-        } else {
-            return -1;
-        }
-    }
-
-    /**
-     * convenience methods to access boolean values in the configuration
-     * @param key a string containing the key value for the configuration value
-     * role detemines the configuration target
-     * @return Boolean true or false as value
-     * null   if the key is not defined.
-     */
-    public static Boolean getBooleanValue(String key, int role) {
-        Object obj = Configuration.getValue(key, role);
-        if (obj instanceof String) {
-            return new Boolean((String)obj);
-        } else if (obj instanceof Boolean) {
-            return (Boolean)obj;
-        } else {
-            return null;
-        }
-    }
-
-    /**
-     * convenience methods to access list values in the configuration
-     * @param key a string containing the key value for the configuration value
-     * role detemines the configuration target
-     * @return ArrayList a ArrayList containing the values
-     * null   if the key is not defined.
-     */
-    public static ArrayList getListValue(String key, int role) {
-        Object obj = Configuration.getValue(key, role);
-        if (obj instanceof ArrayList) {
-            return (ArrayList)obj;
-        } else {
-            return null;
-        }
-    }
-
-    /**
-     * convenience methods to access hashmap values in the configuration
-     * @param key a string containing the key value for the configuration value
-     * role detemines the configuration target
-     * @return HashMap a HashMap containing the values
-     * null   if the key is not defined.
-     */
-    public static HashMap getHashMapValue(String key, int role) {
-        Object obj = Configuration.getValue(key, role);
-        if (obj instanceof HashMap) {
-            return (HashMap)obj;
-        } else {
-            return null;
-        }
-    }
-
-    /**
-     * convenience method which retrieves some configuration information
-     * from the standard configuration
-     *
-     * @param key a string containing the key value for the configuration value
-     * @return Object containing the value; normally you would use one of the
-     * convenience methods, which return the correct form.
-     * null   if the key is not defined.
-     */
-    public static Object getValue(String key) {
-        return Configuration.getValue(key, Configuration.STANDARD);
-    }
-
-    /**
-     * convenience methods to access strings values in the standard configuration
-     *
-     * @param key a string containing the key value for the configuration value
-     * @return String a string containing the value
-     * null   if the key is not defined.
-     */
-    public static String getStringValue(String key) {
-        return Configuration.getStringValue(key, Configuration.STANDARD);
-    }
-
-    /**
-     * convenience methods to access int values in the standard configuration
-     *
-     * @param key a string containing the key value for the configuration value
-     * @return int a int containing the value
-     * -1   if the key is not defined.
-     */
-    public static int getIntValue(String key) {
-        return Configuration.getIntValue(key, Configuration.STANDARD);
-    }
-
-    /**
-     * convenience methods to access boolean values in the configuration
-     *
-     * @param key a string containing the key value for the configuration value
-     * @return boolean true or false as value
-     * null   if the key is not defined.
-     */
-    public static Boolean getBooleanValue(String key) {
-        return Configuration.getBooleanValue(key, Configuration.STANDARD);
-    }
-
-    /**
-     * convenience methods to access list values in the standard configuration
-     *
-     * @param key a string containing the key value for the configuration value
-     * @return ArrayList a ArrayList containing the values
-     * null   if the key is not defined.
-     */
-    public static ArrayList getListValue(String key) {
-        return Configuration.getListValue(key, Configuration.STANDARD);
-    }
-
-    /**
-     * convenience methods to access hashmap values in the standard configuration
-     *
-     * @param key a string containing the key value for the configuration value
-     * @return HashMap a HashMap containing the values
-     * null   if the key is not defined.
-     */
-    public static HashMap getHashMapValue(String key) {
-        return Configuration.getHashMapValue(key, Configuration.STANDARD);
-    }
-
-
-    /**
-     * method to access fonts values in the standard configuration
-     *
-     * @param key a string containing the key value for the configuration value
-     * @return HashMap a HashMap containing the values
-     * null   if the key is not defined.
-     */
-    public static ArrayList getFonts() {
-        return (ArrayList)Configuration.getValue("fonts",
-                                              Configuration.STANDARD);
-    }
-
-    /**
-     * initializes this configuration
-     * @param config contains the configuration information
-     */
-    public static void setup(int role, HashMap config) {
-        switch (role) {
-        case Configuration.STANDARD:
-            standardConfiguration = config;
-            break;
-        case Configuration.PDF:
-            pdfConfiguration = config;
-            break;
-        case Configuration.AWT:
-            awtConfiguration = config;
-            break;
-        default:
-            //log.error("Can't setup configuration. Unknown configuration role/target");
-        }
-    }
-
-    /**
-     * adds information to the configuration hashmap in key,value form
-     * @param key a string containing the key value for the configuration value
-     * value the configuration information
-     * role detemines the configuration target
-     * @param value an Object containing the value; can be a String, a ArrayList or a HashMap
-     */
-    public static void put(String key, Object value, int role) {
-        switch (role) {
-        case Configuration.STANDARD:
-            standardConfiguration.put(key, value);
-            break;
-        case Configuration.PDF:
-            pdfConfiguration.put(key, value);
-            break;
-        case Configuration.AWT:
-            awtConfiguration.put(key, value);
-            break;
-        default:
-            standardConfiguration.put(key, value);
-            //log.error("Unknown role for new configuration entry. "
-            //                       + "Putting key:" + key + " - value:"
-            //                       + value + " into standard configuration.");
-        }
-    }
-
-    ;
-
-    /**
-     * adds information to the standard configuration hashmap in key,value form
-     * @param key a string containing the key value for the configuration value
-     * value the configuration information
-     * role detemines the configuration target
-     * @param value an Object containing the value; can be a String, a ArrayList or a HashMap
-     */
-
-    public static void put(String key, Object value) {
-        Configuration.put(key, value, Configuration.STANDARD);
-    }
-
-    /**
-     * debug methods, which writes out all information in this configuration
-     */
-    public static void dumpConfiguration() {
-        String key;
-        Object value;
-        ArrayList list;
-        HashMap map, configuration;
-        String tmp;
-        System.out.println("Dumping configuration: ");
-        HashMap[] configs = {
-            standardConfiguration, pdfConfiguration, awtConfiguration
-        };
-        for (int i = 0; i < configs.length; i++) {
-            //log.debug("----------------------");
-            configuration = configs[i];
-            Iterator iterator = configuration.keySet().iterator();
-            while (iterator.hasNext()) {
-                key = (String)iterator.next();
-                //log.debug("key: " + key);
-                value = configuration.get(key);
-                if (value instanceof String) {
-                    //log.debug("   value: " + value);
-                } else if (value instanceof ArrayList) {
-                    list = (ArrayList)value;
-                    //log.debug("   values: ");
-                    for (int count = 0; count < list.size(); count++) {
-                        //log.debug(list.get(count) + " - ");
-                    }
-                } else if (value instanceof HashMap) {
-                    map = (HashMap)value;
-                    Iterator iter = map.keySet().iterator();
-                    //log.debug("   values: ");
-                    while (iter.hasNext()) {
-                        tmp = (String)iter.next();
-                        //log.debug(" " + tmp + ":" + map.get(tmp));
-                    }
-                }
-            }
-        }
-    }
-
-
-
-}
-
diff --git a/src/org/apache/fop/configuration/ConfigurationParser.java b/src/org/apache/fop/configuration/ConfigurationParser.java
deleted file mode 100644 (file)
index 9d60352..0000000
+++ /dev/null
@@ -1,261 +0,0 @@
-/*
- * $Id$
- * Copyright (C) 2001 The Apache Software Foundation. All rights reserved.
- * For details on use and redistribution please refer to the
- * LICENSE file included with these sources.
- */
-
-
-package org.apache.fop.configuration;
-
-import org.apache.fop.render.pdf.EmbedFontInfo;
-import org.apache.fop.render.pdf.FontTriplet;
-
-// sax
-import org.xml.sax.helpers.DefaultHandler;
-import org.xml.sax.Attributes;
-import org.xml.sax.Locator;
-
-// java
-import java.util.HashMap;
-import java.util.ArrayList;
-
-/**
- * SAX2 Handler which retrieves the configuration information and stores them in Configuration.
- * Normally this class doesn't need to be accessed directly.
- */
-public class ConfigurationParser extends DefaultHandler {
-    private final int OUT = 0;
-    private final int IN_ENTRY = 1;
-    private final int IN_KEY = 2;
-    private final int IN_VALUE = 4;
-    private final int IN_LIST = 8;
-    private final int IN_SUBENTRY = 16;
-    private final int IN_SUBKEY = 32;
-    private final int IN_FONTS = 64;
-    private final int IN_FONT = 128;
-
-    private final int STRING = 0;
-    private final int LIST = 1;
-    private final int MAP = 2;
-
-    // state of parser
-    private int status = OUT;
-    private int datatype = -1;
-
-    // store the result configuration
-    private static HashMap configuration;
-    private static HashMap activeConfiguration;
-
-    // stores key for new config entry
-    private String key = "";
-    private ArrayList keyStack = new ArrayList();
-
-    // stores string value
-    private String value = "";
-
-    // stores key for new config entry
-    private String subkey = "";
-
-    // stores list value
-    private ArrayList list = new ArrayList(15);
-
-    // stores hashtable value
-    private HashMap map = new HashMap(15);
-
-    /**
-     * locator for line number information
-     */
-    private Locator locator;
-
-    /**
-     * determines role / target of configuration information, default is standard
-     */
-    private String role = "standard";
-
-    // stores fonts
-    private ArrayList fontList = null;
-
-    // stores information on one font
-    private EmbedFontInfo fontInfo = null;
-
-    // stores information on a font triplet
-    private FontTriplet fontTriplet = null;
-
-    // information on a font
-    private String fontName, metricsFile, embedFile, kerningAsString;
-    private boolean kerning;
-    private ArrayList fontTriplets;
-
-    // information on a font triplet
-    private String fontTripletName, weight, style;
-
-    public void startDocument() {
-        configuration = Configuration.getConfiguration();
-    }
-
-    /**
-     * get locator for position information
-     */
-    public void setDocumentLocator(Locator locator) {
-        this.locator = locator;
-    }
-
-    /**
-     * extracts the element and attribute name and sets the fitting status and datatype values
-     */
-    public void startElement(String uri, String localName, String qName,
-                             Attributes attributes) {
-        if (localName.equals("key")) {
-            status += IN_KEY;
-        } else if (localName.equals("value")) {
-            status += IN_VALUE;
-        } else if (localName.equals("list")) {
-            status += IN_LIST;
-        } else if (localName.equals("subentry")) {
-            status += IN_SUBENTRY;
-        } else if (localName.equals("entry")) {
-            // role=standard as default
-            if (attributes.getLength() == 0) {
-                role = "standard";
-                // retrieve attribute value for "role" which determines configuration target
-            } else {
-                role = attributes.getValue("role");
-            }
-        } else if (localName.equals("configuration")) {}
-        else if (localName.equals("fonts")) {    // list of fonts starts
-            fontList = new ArrayList(10);
-        } else if (localName.equals("font")) {
-            kerningAsString = attributes.getValue("kerning");
-            if (kerningAsString.equalsIgnoreCase("yes")) {
-                kerning = true;
-            } else {
-                kerning = false;
-            }
-            metricsFile = attributes.getValue("metrics-file");
-            embedFile = attributes.getValue("embed-file");
-            fontName = attributes.getValue("name");
-            fontTriplets = new ArrayList(5);
-        } else if (localName.equals("font-triplet")) {
-            fontTripletName = attributes.getValue("name");
-            weight = attributes.getValue("weight");
-            style = attributes.getValue("style");
-            fontTriplet = new FontTriplet(fontTripletName, weight, style);
-            fontTriplets.add(fontTriplet);
-        } else {
-            // to make sure that user knows about false tag
-            //log.error("Unknown tag in configuration file: "
-            //                       + localName);
-        }
-    }                                            // end startElement
-
-    /**
-     * stores subentries or entries into their hashes (map for subentries, configuration for entry)
-     */
-    public void endElement(String uri, String localName, String qName) {
-        if (localName.equals("entry")) {
-            switch (datatype) {
-            case STRING:
-                this.store(role, key, value);
-                break;
-            case LIST:
-                this.store(role, key, list);
-                break;
-            case MAP:
-                this.store(role, key, map);
-            }
-            status = OUT;
-            role = "standard";
-            if (keyStack.size() > 0) {
-                keyStack.remove(keyStack.size() - 1);
-            }
-            if (keyStack.size() > 0) {
-                key = (String)keyStack.get(keyStack.size() - 1);
-            } else {
-                key = "";
-            }
-            value = "";
-        } else if (localName.equals("subentry")) {
-            map.put(subkey, value);
-            status -= IN_SUBENTRY;
-            if (keyStack.size() > 0) {
-                keyStack.remove(keyStack.size() - 1);
-            }
-            if (keyStack.size() > 0) {
-                key = (String)keyStack.get(keyStack.size() - 1);
-            } else {
-                key = "";
-            }
-            value = "";
-        } else if (localName.equals("key")) {
-            status -= IN_KEY;
-            keyStack.add(key);
-        } else if (localName.equals("list")) {
-            status -= IN_LIST;
-            value = "";
-        } else if (localName.equals("value")) {
-            status -= IN_VALUE;
-        } else if (localName.equals("fonts")) {
-            this.store("standard", "fonts", fontList);
-        } else if (localName.equals("font")) {
-            fontInfo = new EmbedFontInfo(fontName, metricsFile, kerning,
-                                    fontTriplets, embedFile);
-            fontList.add(fontInfo);
-            fontTriplets = null;
-            metricsFile = null;
-            embedFile = null;
-            fontName = null;
-            kerningAsString = "";
-        } else if (localName.equals("font-triplet")) {}
-    }
-
-    /**
-     * extracts characters from text nodes and puts them into their respective
-     * variables
-     */
-    public void characters(char[] ch, int start, int length) {
-        char characters[] = new char[length];
-        System.arraycopy(ch, start, characters, 0, length);
-        String text = new String(characters);
-        switch (status) {
-        case IN_KEY:
-            key = text;
-            break;
-        case IN_LIST + IN_SUBENTRY + IN_KEY:
-            subkey = text;
-            break;
-        case IN_VALUE:
-            value = text;
-            datatype = STRING;
-            break;
-        case IN_LIST + IN_VALUE:
-            list.add(text);
-            datatype = LIST;
-            break;
-        case IN_LIST + IN_SUBENTRY + IN_VALUE:
-            value = text;
-            datatype = MAP;
-            break;
-        }
-    }    // end characters
-
-    /**
-     * stores configuration entry into configuration hashtable according to the role
-     *
-     * @param role a string containing the role / target for this configuration information
-     * @param key a string containing the key value for the configuration
-     * @param value a string containing the value for the configuration
-     */
-    private void store(String role, String key, Object value) {
-        activeConfiguration = (HashMap)configuration.get(role);
-        if (activeConfiguration != null) {
-            activeConfiguration.put(key, value);
-        } else {
-            //log.error("Unknown role >" + role
-            //                       + "< for new configuration entry. \n"
-            //                       + "Putting configuration with key:" + key
-            //                       + " into standard configuration.");
-        }
-    }
-
-}
diff --git a/src/org/apache/fop/configuration/ConfigurationReader.java b/src/org/apache/fop/configuration/ConfigurationReader.java
deleted file mode 100644 (file)
index 2f7d882..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * $Id$
- * Copyright (C) 2001 The Apache Software Foundation. All rights reserved.
- * For details on use and redistribution please refer to the
- * LICENSE file included with these sources.
- */
-
-package org.apache.fop.configuration;
-
-// sax
-import org.xml.sax.helpers.DefaultHandler;
-import org.xml.sax.XMLReader;
-import org.xml.sax.SAXException;
-import java.io.IOException;
-import org.xml.sax.InputSource;
-
-// fop
-import org.apache.fop.apps.Driver;
-import org.apache.fop.apps.FOPException;
-import org.apache.fop.configuration.Configuration;
-
-/**
- * entry class for reading configuration from file and creating a configuration
- * class. typical use looks like that: <br>
- *
- * <code>ConfigurationReader reader = new ConfigurationReader ("config.xml","standard");
- * try {
- * reader.start();
- * } catch (org.apache.fop.apps.FOPException error) {
- * reader.dumpError(error);
- * }
- * </code>
- * Once the configuration has been setup, the information can be accessed with
- * the methods of StandardConfiguration.
- */
-public class ConfigurationReader {
-
-    /**
-     * show a full dump on error
-     */
-    private static boolean errorDump = false;
-
-    /**
-     * inputsource for configuration file
-     */
-    private InputSource filename;
-
-
-    /**
-     * creates a configuration reader
-     * @param filename the file which contains the configuration information
-     */
-    public ConfigurationReader(InputSource filename) {
-        this.filename = filename;
-    }
-
-    /**
-     * intantiates parser and starts parsing of config file
-     */
-    public void start() throws FOPException {
-        XMLReader parser = createParser();
-
-        // setting the parser features
-        try {
-            parser.setFeature("http://xml.org/sax/features/namespace-prefixes",
-                              false);
-        } catch (SAXException e) {
-            throw new FOPException("You need a parser which supports SAX version 2",
-                                   e);
-        }
-        ConfigurationParser configurationParser = new ConfigurationParser();
-        parser.setContentHandler(configurationParser);
-
-        try {
-            parser.parse(filename);
-        } catch (SAXException e) {
-            if (e.getException() instanceof FOPException) {
-                throw (FOPException)e.getException();
-            } else {
-                throw new FOPException(e);
-            }
-        } catch (IOException e) {
-            throw new FOPException(e);
-        }
-    }
-
-    /**
-     * creates a SAX parser, using the value of org.xml.sax.parser
-     * defaulting to org.apache.xerces.parsers.SAXParser
-     *
-     * @return the created SAX parser
-     */
-    public static XMLReader createParser() throws FOPException {
-        String parserClassName = Driver.getParserClassName();
-        if (errorDump) {
-            //log.debug("configuration reader using SAX parser "
-            //                     + parserClassName);
-        }
-
-        try {
-            return (XMLReader)Class.forName(parserClassName).newInstance();
-        } catch (ClassNotFoundException e) {
-            throw new FOPException("Could not find " + parserClassName, e);
-        } catch (InstantiationException e) {
-            throw new FOPException("Could not instantiate "
-                                   + parserClassName, e);
-        } catch (IllegalAccessException e) {
-            throw new FOPException("Could not access " + parserClassName, e);
-        } catch (ClassCastException e) {
-            throw new FOPException(parserClassName + " is not a SAX driver",
-                                   e);
-        }
-    }
-
-    /**
-     * Dumps an error
-     */
-    public void dumpError(Exception e) {
-        if (errorDump) {
-            if (e instanceof SAXException) {
-                e.printStackTrace();
-                if (((SAXException)e).getException() != null) {
-                    ((SAXException)e).getException().printStackTrace();
-                }
-            } else {
-                e.printStackTrace();
-            }
-        }
-    }
-
-    /**
-     * long or short error messages
-     *
-     */
-    public void setDumpError(boolean dumpError) {
-        errorDump = dumpError;
-    }
-
-}
index 23fe67337def4faaa69a51777c7ec78261041f21..3b6b540b50757f72ea8b5543a4555cdf92cb7fd2 100644 (file)
@@ -9,7 +9,6 @@ package org.apache.fop.layout.hyphenation;
 
 import java.io.*;
 import java.util.Hashtable;
-import org.apache.fop.configuration.*;
 
 /**
  * This class is the main entry point to the hyphenation package.
@@ -46,8 +45,7 @@ public class Hyphenator {
 
         HyphenationTree hTree = getFopHyphenationTree(key);
         if (hTree == null) {
-            String hyphenDir =
-                Configuration.getStringValue("hyphenation-dir");
+            String hyphenDir = "/hyph";
             if (hyphenDir != null) {
                 hTree = getUserHyphenationTree(key, hyphenDir);
             }
index a71fa304efecd72029039316c1c2459bfb759d49..99e4333a3572fff54eeff367b0d80d700bbb685c 100644 (file)
@@ -42,7 +42,7 @@ public class MIFHandler extends StructureHandler {
     public MIFHandler(OutputStream os) {
         outStream = os;
         // use pdf fonts for now, this is only for resolving names
-        org.apache.fop.render.pdf.FontSetup.setup(fontInfo, org.apache.fop.configuration.Configuration.getFonts());
+        org.apache.fop.render.pdf.FontSetup.setup(fontInfo, null);
     }
 
     public FontInfo getFontInfo() {
index ca0c6238c203a58c16b6c701cac8a04afbbd10d0..153ccc89b8634342bf812667f1afe0dd71894969 100644 (file)
@@ -35,7 +35,7 @@ public abstract class PrintRenderer extends AbstractRenderer {
      */
     public void setupFontInfo(FontInfo fontInfo) {
         this.fontInfo = fontInfo;
-        FontSetup.setup(fontInfo, org.apache.fop.configuration.Configuration.getFonts());
+        FontSetup.setup(fontInfo, null);
     }
 
     /**
index 31cfdb2e95a36795845a6fa2b89885bf3a9e23fa..52e6452c42e91156f69519dba520b3fda3bac50c 100644 (file)
@@ -16,10 +16,9 @@ import org.xml.sax.Attributes;
 import java.io.IOException;
 import java.util.Enumeration;
 import java.util.ArrayList;
-import java.util.Hashtable;
+import java.util.HashMap;
 import org.apache.fop.pdf.PDFWArray;
 import org.apache.fop.pdf.PDFCIDFont;
-import org.apache.fop.configuration.ConfigurationReader;
 import org.apache.fop.apps.FOPException;
 
 /**
@@ -38,18 +37,23 @@ public class FontReader extends DefaultHandler {
     private MultiByteFont multiFont = null;
     private SingleByteFont singleFont = null;
     private Font returnFont = null;
-    // private SingleByteFont singleFont = null;
     private String text = null;
 
     private ArrayList cidWidths = null;
     private int cidWidthIndex = 0;
 
-    private Hashtable currentKerning = null;
+    private HashMap currentKerning = null;
 
     private ArrayList bfranges = null;
 
     private void createFont(String path) throws FOPException {
-        XMLReader parser = ConfigurationReader.createParser();
+        XMLReader parser = null;
+
+        try {
+            parser = javax.xml.parsers.SAXParserFactory.newInstance().newSAXParser().getXMLReader();
+        } catch (Exception e) {
+            throw new FOPException(e);
+        }
         if (parser == null)
             throw new FOPException("Unable to create SAX parser");
 
@@ -147,7 +151,7 @@ public class FontReader extends DefaultHandler {
             cidWidthIndex = getInt(attributes.getValue("start-index"));
             cidWidths = new ArrayList();
         } else if ("kerning".equals(localName)) {
-            currentKerning = new Hashtable();
+            currentKerning = new HashMap();
             if (isCID)
                 multiFont.kerning.put(new Integer(attributes.getValue("kpx1")),
                                       currentKerning);
index 0fbc27347cf9a7be6391d1213ac098e8444b85d6..3234bba2df6883979b787c8504d3d974c2378ed4 100644 (file)
@@ -229,7 +229,7 @@ public class PSRenderer extends AbstractRenderer {
      */
     public void setupFontInfo(FontInfo fontInfo) {
         /* use PDF's font setup to get PDF metrics */
-        org.apache.fop.render.pdf.FontSetup.setup(fontInfo, org.apache.fop.configuration.Configuration.getFonts());
+        org.apache.fop.render.pdf.FontSetup.setup(fontInfo, null);
         this.fontInfo = fontInfo;
     }
 
index 15ba3c66dc0af9e7fa3e622dcfff8d3051fa56dc..1571fc8255043a54ede5212f6cf61cff466ffb8f 100644 (file)
@@ -149,7 +149,7 @@ public class XMLRenderer extends AbstractRenderer {
     public void setupFontInfo(FontInfo fontInfo) {
 
         /* use PDF's font setup to get PDF metrics */
-        org.apache.fop.render.pdf.FontSetup.setup(fontInfo, org.apache.fop.configuration.Configuration.getFonts());
+        org.apache.fop.render.pdf.FontSetup.setup(fontInfo, null);
     }
 
     private boolean isCoarseXml() {
index 03e863d1fec870adbd33e0b0522eb498b3f071b9..467c40b0a6e56e3523052c6bdd21cdd679cc466c 100644 (file)
@@ -8,7 +8,6 @@
 package org.apache.fop.tools;
 
 import org.apache.fop.apps.*;
-import org.apache.fop.configuration.*;
 import org.apache.fop.area.*;
 import org.apache.fop.area.inline.*;
 import org.apache.fop.area.inline.Character;
index 792f1bfd22fd1f6778d752ba9724ca628bfc10d1..fac914a3fe02f2b7b117ed35cd463b5227a060c0 100644 (file)
@@ -8,7 +8,7 @@
 package org.apache.fop.tools;
 
 import org.apache.fop.apps.*;
-import org.apache.fop.configuration.*;
+import org.apache.fop.fo.FOUserAgent;
 
 import org.apache.avalon.framework.logger.ConsoleLogger;
 import org.apache.avalon.framework.logger.AbstractLogEnabled;
@@ -198,10 +198,9 @@ public class TestConverter extends AbstractLogEnabled {
 
         try {
             File xmlFile = new File(baseDir + "/" + xml);
-
+            String baseURL = null;
             try {
-                Configuration.put("baseDir",
-                                  xmlFile.getParentFile().toURL().toExternalForm());
+                baseURL = xmlFile.getParentFile().toURL().toExternalForm();
             } catch (Exception e) {
                 getLogger().error("Error setting base directory");
             }
@@ -221,6 +220,9 @@ public class TestConverter extends AbstractLogEnabled {
             Driver driver = new Driver();
             setupLogger(driver, "fop");
             driver.initialize();
+            FOUserAgent userAgent = new FOUserAgent();
+            userAgent.setBaseURL(baseURL);
+            driver.setUserAgent(userAgent);
             if (outputPDF) {
                 driver.setRenderer(Driver.RENDER_PDF);
             } else {
index 09ccbbb909e998ed31a1c933d8e518028c8cc2fa..9fbf81b47e9cd92079f5ae9e96ecaae526974bde 100644 (file)
@@ -22,13 +22,12 @@ import java.io.*;
 import java.util.*;
 
 // FOP
-import org.apache.fop.apps.Options;
 import org.apache.fop.apps.Starter;
 import org.apache.fop.apps.InputHandler;
 import org.apache.fop.apps.FOInputHandler;
 import org.apache.fop.apps.Driver;
 import org.apache.fop.apps.FOPException;
-import org.apache.fop.configuration.Configuration;
+import org.apache.fop.fo.FOUserAgent;
 
 // Avalon
 import org.apache.avalon.framework.logger.ConsoleLogger;
@@ -189,6 +188,7 @@ public class Fop extends Task {
 
 class FOPTaskStarter extends Starter {
     Fop task;
+    String baseURL = null;
 
     FOPTaskStarter(Fop task) throws FOPException {
         this.task = task;
@@ -255,21 +255,18 @@ class FOPTaskStarter extends Starter {
 
     public void run() throws FOPException {
         if (task.userConfig != null) {
-            new Options (task.userConfig);
         }
 
         try {
             if (task.getFofile() != null) {
-                Configuration.put("baseDir",
-                                  task.getFofile().getParentFile().toURL().
-                                  toExternalForm());
+                baseURL =  task.getFofile().getParentFile().toURL().
+                                  toExternalForm();
             }
         } catch (Exception e) {
             getLogger().error("Error setting base directory", e);
         }
 
-        task.log("Using base directory: " +
-                 Configuration.getValue("baseDir"), Project.MSG_DEBUG);
+        task.log("Using base URL: " + baseURL, Project.MSG_DEBUG);
 
         int rint = determineRenderer(task.getFormat());
         String newExtension = determineExtension(rint);
@@ -304,12 +301,11 @@ class FOPTaskStarter extends Starter {
                     outf = new File(task.getOutdir(), outf.getName());
                 }
                 try {
-                    Configuration.put("baseDir",
-                                      fs.getDir(task.getProject()).toURL().
-                                      toExternalForm());
+                    baseURL = fs.getDir(task.getProject()).toURL().
+                                      toExternalForm();
 
                 } catch (Exception e) {
-                    task.log("Error setting base directory",
+                    task.log("Error setting base URL",
                              Project.MSG_DEBUG);
                 }
 
@@ -344,12 +340,10 @@ class FOPTaskStarter extends Starter {
         try {
             Driver driver = new Driver(inputHandler.getInputSource(), out);
             setupLogger(driver);
+            FOUserAgent userAgent = new FOUserAgent();
+            userAgent.setBaseURL(baseURL);
+            driver.setUserAgent(userAgent);
             driver.setRenderer(renderer);
-        if (renderer == Driver.RENDER_XML) {
-        HashMap rendererOptions = new HashMap();
-        rendererOptions.put("fineDetail", new Boolean(true));
-        driver.getRenderer().setOptions(rendererOptions);
-        }
             driver.setXMLReader(parser);
             driver.run();
             out.close();