[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