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

List:       fop-cvs
Subject:    cvs commit: xml-fop/src/java/org/apache/fop/render/svg SVGRenderer.java
From:       gmazza () apache ! org
Date:       2004-06-19 13:35:34
Message-ID: 20040619133534.86626.qmail () minotaur ! apache ! org
[Download RAW message or body]

gmazza      2004/06/19 06:35:34

  Modified:    src/java/org/apache/fop/apps Driver.java
               src/java/org/apache/fop/fo FOInputHandler.java FONode.java
                        FOTreeHandler.java
               src/java/org/apache/fop/fo/pagination
                        SinglePageMasterReference.java
               src/java/org/apache/fop/render/awt AWTRenderer.java
               src/java/org/apache/fop/render/mif MIFHandler.java
               src/java/org/apache/fop/render/rtf RTFHandler.java
               src/java/org/apache/fop/render/svg SVGRenderer.java
  Removed:     src/java/org/apache/fop/apps Document.java
  Log:
  1.) FOInputHandler constructors switched from Document to FOUserAgent, Renderer \
added to FOTreeHandler interface.  2.) Apps.Document dropped.
  3.) Validity checking added to fo.pagination.SinglePageMasterReference
  
  Revision  Changes    Path
  1.70      +4 -16     xml-fop/src/java/org/apache/fop/apps/Driver.java
  
  Index: Driver.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/apps/Driver.java,v
  retrieving revision 1.69
  retrieving revision 1.70
  diff -u -r1.69 -r1.70
  --- Driver.java	18 Jun 2004 11:43:25 -0000	1.69
  +++ Driver.java	19 Jun 2004 13:35:33 -0000	1.70
  @@ -194,8 +194,6 @@
       private Log log = null;
       private FOUserAgent userAgent = null;
   
  -    private Document currentDocument = null;
  -
       /**
        * Main constructor for the Driver class.
        */
  @@ -469,30 +467,20 @@
              validateOutputStream();
           }
   
  -        /** Document creation is hard-wired for now, but needs to be made
  -         accessible through the API and/or configuration */
  -        if (currentDocument == null) {
  -            currentDocument = new Document(this);
  -        }
  -
           // TODO: - do this stuff in a better way
           // PIJ: I guess the structure handler should be created by the renderer.
           if (rendererType == RENDER_MIF) {
  -            foInputHandler = new MIFHandler(currentDocument, stream);
  +            foInputHandler = new MIFHandler(userAgent, stream);
           } else if (rendererType == RENDER_RTF) {
  -            foInputHandler = new RTFHandler(currentDocument, stream);
  +            foInputHandler = new RTFHandler(userAgent, stream);
           } else {
               if (renderer == null) {
                   throw new IllegalStateException(
                           "Renderer not set when using standard foInputHandler");
               }
   
  -            currentDocument.renderer = renderer;
  -            foInputHandler = new FOTreeHandler(currentDocument, stream, true);
  +            foInputHandler = new FOTreeHandler(userAgent, renderer, stream, true);
           }
  -        currentDocument.foInputHandler = foInputHandler;
  -
  -        foInputHandler.setLogger(getLogger());
   
           treeBuilder.setFOInputHandler(foInputHandler);
   
  
  
  
  1.21      +17 -36    xml-fop/src/java/org/apache/fop/fo/FOInputHandler.java
  
  Index: FOInputHandler.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/FOInputHandler.java,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- FOInputHandler.java	18 Jun 2004 04:13:53 -0000	1.20
  +++ FOInputHandler.java	19 Jun 2004 13:35:33 -0000	1.21
  @@ -21,10 +21,10 @@
   // Java
   import java.util.HashSet;
   import java.util.Set;
  +import org.xml.sax.SAXException;
   
  -// FOP
  -import org.apache.fop.apps.Document;
  -import org.apache.fop.apps.Driver;
  +// Apache
  +import org.apache.fop.apps.FOUserAgent;
   import org.apache.fop.apps.FOPException;
   import org.apache.fop.area.AreaTree;
   import org.apache.fop.fo.flow.BasicLink;
  @@ -47,8 +47,8 @@
   import org.apache.fop.fo.pagination.PageSequence;
   import org.apache.fop.fonts.FontInfo;
   import org.apache.commons.logging.Log;
  +import org.apache.commons.logging.LogFactory;
   
  -import org.xml.sax.SAXException;
   
   /**
    * Abstract class defining what should be done with SAX events that map to
  @@ -63,20 +63,18 @@
    */
   public abstract class FOInputHandler {
       
  -    /**
  -     * The Document object that is controlling the FO Tree being built
  +    /** 
  +     * The FOUserAgent for this process
        */
  -    public Document doc = null;
  +    private FOUserAgent foUserAgent;
   
       /** 
        * The Font information relevant for this document
        */
       protected FontInfo fontInfo;
   
  -    /**
  -     * logging instance
  -     */
  -    protected Log logger = null;
  +    /** Logger for FOInputHandler-related messages **/
  +    protected static Log logger = LogFactory.getLog(FOInputHandler.class);
   
       /**
        * The current set of id's in the FO tree.
  @@ -86,11 +84,10 @@
   
       /**
        * Main constructor
  -     * @param document the apps.Document implementation that is controlling
  -     * the FO Tree being built
  +     * @param FOUserAgent the apps.FOUserAgent instance for this process
        */
  -    public FOInputHandler(Document document) {
  -        doc = document;
  +    public FOInputHandler(FOUserAgent foUserAgent) {
  +        this.foUserAgent = foUserAgent;
           this.fontInfo = new FontInfo();
       }
   
  @@ -103,14 +100,6 @@
       }
   
       /**
  -     * Sets the Commons-Logging instance for this class
  -     * @param logger The Commons-Logging instance
  -     */
  -    public void setLogger(Log logger) {
  -        this.logger = logger;
  -    }
  -
  -    /**
        * Returns the Commons-Logging instance for this class
        * @return  The Commons-Logging instance
        */
  @@ -119,19 +108,11 @@
       }
   
       /**
  -     * Returns the Document object associated with this FOInputHandler.
  -     * @return the Document object
  -     */
  -    public Document getDocument() {
  -        return doc;
  -    }
  -
  -    /**
  -     * Returns the Driver object associated with this FOInputHandler.
  -     * @return the Driver object
  +     * Returns the User Agent object associated with this FOInputHandler.
  +     * @return the User Agent object
        */
  -    public Driver getDriver() {
  -        return doc.getDriver();
  +    public FOUserAgent getUserAgent() {
  +        return foUserAgent;
       }
   
       /**
  
  
  
  1.25      +18 -13    xml-fop/src/java/org/apache/fop/fo/FONode.java
  
  Index: FONode.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/FONode.java,v
  retrieving revision 1.24
  retrieving revision 1.25
  diff -u -r1.24 -r1.25
  --- FONode.java	16 Jun 2004 23:40:58 -0000	1.24
  +++ FONode.java	19 Jun 2004 13:35:33 -0000	1.25
  @@ -20,13 +20,13 @@
   
   // Java
   import java.util.ListIterator;
  +import org.apache.commons.logging.Log;
  +import org.apache.commons.logging.LogFactory;
   
   // XML
   import org.xml.sax.Attributes;
   import org.xml.sax.Locator;
   
  -import org.apache.commons.logging.Log;
  -
   // FOP
   import org.apache.fop.apps.FOPException;
   import org.apache.fop.apps.FOUserAgent;
  @@ -34,6 +34,8 @@
   import org.apache.fop.fo.extensions.ExtensionElementMapping;
   import org.apache.fop.fo.extensions.svg.SVGElementMapping;
   
  +
  +
   /**
    * base class for nodes in the XML tree
    *
  @@ -55,6 +57,9 @@
       /** Marks column number of this object in the input file **/
       public int column;
   
  +    /** Logger for fo-tree related messages **/
  +    private static Log log = LogFactory.getLog(FONode.class);
  +
       /**
        * Main constructor.
        * @param parent parent of this node
  @@ -76,11 +81,20 @@
       }
   
       /**
  +     * Recursively goes up the FOTree hierarchy until the fo:root is found,
  +     * which returns the parent FOInputHandler.
  +     * @return the FOInputHandler object that is the parent of the FO Tree
  +     */
  +    public FOInputHandler getFOInputHandler() {
  +        return parent.getFOInputHandler();
  +    }
  +
  +    /**
        * Returns the user agent for the node.
        * @return FOUserAgent
        */
       public FOUserAgent getUserAgent() {
  -        return getFOInputHandler().getDriver().getUserAgent();
  +        return getFOInputHandler().getUserAgent();
       }
   
       /**
  @@ -88,7 +102,7 @@
        * @return the logger
        */
       public Log getLogger() {
  -        return getFOInputHandler().getDriver().getLogger();
  +        return log;
       }
   
       /**
  @@ -198,15 +212,6 @@
        */
       protected boolean isMarker() {
           return false;
  -    }
  -
  -    /**
  -     * Recursively goes up the FOTree hierarchy until the fo:root is found,
  -     * which returns the parent FOInputHandler.
  -     * @return the FOInputHandler object that is the parent of the FO Tree
  -     */
  -    public FOInputHandler getFOInputHandler() {
  -        return parent.getFOInputHandler();
       }
   
       /**
  
  
  
  1.23      +25 -25    xml-fop/src/java/org/apache/fop/fo/FOTreeHandler.java
  
  Index: FOTreeHandler.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/FOTreeHandler.java,v
  retrieving revision 1.22
  retrieving revision 1.23
  diff -u -r1.22 -r1.23
  --- FOTreeHandler.java	18 Jun 2004 04:13:53 -0000	1.22
  +++ FOTreeHandler.java	19 Jun 2004 13:35:33 -0000	1.23
  @@ -28,7 +28,7 @@
   import org.xml.sax.SAXException;
   
   // FOP
  -import org.apache.fop.apps.Document;
  +import org.apache.fop.apps.FOUserAgent;
   import org.apache.fop.apps.FOPException;
   import org.apache.fop.area.AreaTree;
   import org.apache.fop.area.Title;
  @@ -56,6 +56,7 @@
   import org.apache.fop.layoutmgr.InlineStackingLayoutManager;
   import org.apache.fop.layoutmgr.LMiter;
   import org.apache.fop.layoutmgr.PageLayoutManager;
  +import org.apache.fop.render.Renderer;
   
   
   /**
  @@ -99,29 +100,35 @@
       /** Useful only for allowing subclasses of AddLMVisitor to be set by those
        extending FOP **/
       private AddLMVisitor addLMVisitor = null;
  +    
  +    /**
  +     * the renderer to use to output the area tree
  +     */
  +    private Renderer renderer;
   
       /**
        * Main constructor
  -     * @param document the apps.Document implementation that governs this
  -     * FO Tree
  +     * @param userAgent the apps.userAgent implementation that governs
  +     *      this FO Tree
        * @param OutputStream stream to use to output results of renderer
  -     *              
  +     *
        * @param store if true then use the store pages model and keep the
  -     *              area tree in memory
  +     *        area tree in memory
        */
  -    public FOTreeHandler(Document doc, OutputStream stream, boolean store) throws \
                FOPException {
  -        super(doc);
  -        
  -        areaTree = new AreaTree(doc.getRenderer());
  +    public FOTreeHandler(FOUserAgent userAgent, Renderer renderer, 
  +        OutputStream stream, boolean store) throws FOPException {
  +        super(userAgent);
  +        this.renderer = renderer;
  +        areaTree = new AreaTree(renderer);
   
           try {
  -            doc.getRenderer().setupFontInfo(fontInfo);
  +            renderer.setupFontInfo(fontInfo);
               // check that the "any,normal,400" font exists
               if (!fontInfo.isSetupValid()) {
                   throw new FOPException(
  -                        "No default font defined by OutputConverter");
  +                    "No default font defined by OutputConverter");
               }
  -            doc.getRenderer().startRenderer(stream);
  +            renderer.startRenderer(stream);
           } catch (IOException e) {
               throw new FOPException(e);
           }
  @@ -161,8 +168,8 @@
                   throw new SAXException("Error: No fo:page-sequence child " +
                       "found within fo:root element.");
               }
  -            getAreaTree().endDocument();
  -            getDriver().getRenderer().stopRenderer();
  +            areaTree.endDocument();
  +            renderer.stopRenderer();
           } catch (IOException ex) {
               throw new SAXException(ex);
           }
  @@ -226,8 +233,8 @@
               }
           }
   
  -        getAreaTree().addBookmarksToAreaTree(pageSequence.getRoot().getBookmarks());
                
  -        formatPageSequence(pageSequence, getAreaTree());
  +        areaTree.addBookmarksToAreaTree(pageSequence.getRoot().getBookmarks());
  +        formatPageSequence(pageSequence, areaTree);
       }
   
       /**
  @@ -609,12 +616,5 @@
        */
       public void endPageNumber(PageNumber pagenum) {
       }
  -    
  -    /**   
  -      * @return the current Area Tree object
  -      */   
  -     public AreaTree getAreaTree() {
  -        return areaTree;
  -     } 
  -    
  +
   }
  
  
  
  1.6       +13 -0     \
xml-fop/src/java/org/apache/fop/fo/pagination/SinglePageMasterReference.java  
  Index: SinglePageMasterReference.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/fo/pagination/SinglePageMasterReference.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- SinglePageMasterReference.java	12 Jun 2004 23:18:52 -0000	1.5
  +++ SinglePageMasterReference.java	19 Jun 2004 13:35:33 -0000	1.6
  @@ -18,6 +18,11 @@
   
   package org.apache.fop.fo.pagination;
   
  +// XML
  +import org.xml.sax.Attributes;
  +import org.xml.sax.Locator;
  +
  +// FOP
   import org.apache.fop.fo.FONode;
   import org.apache.fop.fo.FOTreeVisitor;
   
  @@ -40,6 +45,14 @@
       public SinglePageMasterReference(FONode parent) {
           super(parent);
           this.state = FIRST;
  +    }
  +
  +    /**
  +     * @see org.apache.fop.fo.FONode#validateChildNode(Locator, String, String)
  +     * XSL/FOP Content Model: empty
  +     */
  +    protected void validateChildNode(Locator loc, String nsURI, String localName) \
{  +       invalidChildError(loc, nsURI, localName);
       }
   
       /**
  
  
  
  1.25      +0 -1      xml-fop/src/java/org/apache/fop/render/awt/AWTRenderer.java
  
  Index: AWTRenderer.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/render/awt/AWTRenderer.java,v
  retrieving revision 1.24
  retrieving revision 1.25
  diff -u -r1.24 -r1.25
  --- AWTRenderer.java	15 Jun 2004 06:26:56 -0000	1.24
  +++ AWTRenderer.java	19 Jun 2004 13:35:33 -0000	1.25
  @@ -46,7 +46,6 @@
   import java.util.Vector;
   
   import org.apache.fop.fonts.FontInfo;
  -import org.apache.fop.apps.Document;
   import org.apache.fop.apps.FOPException;
   import org.apache.fop.apps.InputHandler;
   import org.apache.fop.area.Area;
  
  
  
  1.10      +6 -4      xml-fop/src/java/org/apache/fop/render/mif/MIFHandler.java
  
  Index: MIFHandler.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/render/mif/MIFHandler.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- MIFHandler.java	18 Jun 2004 04:13:53 -0000	1.9
  +++ MIFHandler.java	19 Jun 2004 13:35:33 -0000	1.10
  @@ -22,7 +22,7 @@
   import java.io.IOException;
   import java.io.OutputStream;
   
  -import org.apache.fop.apps.Document;
  +import org.apache.fop.apps.FOUserAgent;
   import org.apache.fop.apps.FOPException;
   import org.apache.fop.fo.Constants;
   import org.apache.fop.fo.FOInputHandler;
  @@ -61,6 +61,7 @@
   
       /** the MIFFile instance */
       protected MIFFile mifFile;
  +    
       /** the OutputStream to write to */
       protected OutputStream outStream;
   
  @@ -70,10 +71,11 @@
   
       /**
        * Creates a new MIF handler on a given OutputStream.
  +     * @param ua FOUserAgent instance for this process
        * @param os OutputStream to write to
        */
  -    public MIFHandler(Document doc, OutputStream os) {
  -        super(doc);
  +    public MIFHandler(FOUserAgent ua, OutputStream os) {
  +        super(ua);
           outStream = os;
           FontSetup.setup(fontInfo, null);
       }
  
  
  
  1.27      +5 -5      xml-fop/src/java/org/apache/fop/render/rtf/RTFHandler.java
  
  Index: RTFHandler.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/render/rtf/RTFHandler.java,v
  retrieving revision 1.26
  retrieving revision 1.27
  diff -u -r1.26 -r1.27
  --- RTFHandler.java	18 Jun 2004 04:13:54 -0000	1.26
  +++ RTFHandler.java	19 Jun 2004 13:35:33 -0000	1.27
  @@ -27,6 +27,7 @@
   import org.apache.commons.logging.impl.SimpleLog;
   import org.apache.commons.logging.Log;
   import org.apache.fop.apps.FOPException;
  +import org.apache.fop.apps.FOUserAgent;
   import org.apache.fop.fo.FOInputHandler;
   import org.apache.fop.fo.FObj;
   import org.apache.fop.fo.flow.BasicLink;
  @@ -57,7 +58,6 @@
   import org.apache.fop.fo.properties.StringProperty;
   import org.apache.fop.fo.Constants;
   import org.apache.fop.fo.FOText;
  -import org.apache.fop.apps.Document;
   import org.apache.fop.render.rtf.rtflib.rtfdoc.ITableAttributes;
   import org.apache.fop.render.rtf.rtflib.rtfdoc.IRtfAfterContainer;
   import org.apache.fop.render.rtf.rtflib.rtfdoc.IRtfBeforeContainer;
  @@ -122,11 +122,11 @@
   
       /**
        * Creates a new RTF structure handler.
  -     * @param doc the Document for which this RTFHandler is processing
  +     * @param userAgent the FOUserAgent for this process
        * @param os OutputStream to write to
        */
  -    public RTFHandler(Document doc, OutputStream os) {
  -        super(doc);
  +    public RTFHandler(FOUserAgent userAgent, OutputStream os) {
  +        super(userAgent);
           this.os = os;
           bDefer = false;
           bDeferredExecution = false;
  
  
  
  1.16      +0 -1      xml-fop/src/java/org/apache/fop/render/svg/SVGRenderer.java
  
  Index: SVGRenderer.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/render/svg/SVGRenderer.java,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- SVGRenderer.java	15 Jun 2004 06:26:56 -0000	1.15
  +++ SVGRenderer.java	19 Jun 2004 13:35:33 -0000	1.16
  @@ -18,7 +18,6 @@
   
   package org.apache.fop.render.svg;
   
  -import org.apache.fop.apps.Document;
   import org.apache.fop.apps.FOPException;
   import org.apache.fop.area.PageViewport;
   import org.apache.fop.area.Title;
  
  
  

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


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

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