]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
1.) Moving renderer-specific customization variables (producer, creator, create date...
authorGlen Mazza <gmazza@apache.org>
Wed, 23 Jun 2004 00:25:27 +0000 (00:25 +0000)
committerGlen Mazza <gmazza@apache.org>
Wed, 23 Jun 2004 00:25:27 +0000 (00:25 +0000)
2.) Version.getVersion() moved to Fop.getVersion().

3.) Validation added for fo:region-body.

git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@197743 13f79535-47bb-0310-9956-ffa450edef68

16 files changed:
src/java/org/apache/fop/apps/CommandLineOptions.java
src/java/org/apache/fop/apps/Driver.java
src/java/org/apache/fop/apps/FOUserAgent.java
src/java/org/apache/fop/apps/Fop.java
src/java/org/apache/fop/apps/Version.java [deleted file]
src/java/org/apache/fop/fo/pagination/RegionBody.java
src/java/org/apache/fop/fonts/apps/PFMReader.java
src/java/org/apache/fop/fonts/apps/TTFReader.java
src/java/org/apache/fop/render/AbstractRenderer.java
src/java/org/apache/fop/render/Renderer.java
src/java/org/apache/fop/render/awt/viewer/PreviewDialogAboutBox.java
src/java/org/apache/fop/render/pdf/PDFRenderer.java
src/java/org/apache/fop/render/ps/EPSDocumentGraphics2D.java
src/java/org/apache/fop/render/ps/PSDocumentGraphics2D.java
src/java/org/apache/fop/render/ps/PSRenderer.java
src/java/org/apache/fop/tools/TestConverter.java

index 14b7f610cb0783932ec743f2da2984292b30d3b1..6a3adbfc263609e726ed85b16ee8df097a5d8998 100644 (file)
@@ -177,7 +177,7 @@ public class CommandLineOptions {
             } else if (args[i].equals("-at")) {
                 i = i + parseAreaTreeOption(args, i);
             } else if (args[i].equals("-v")) {
-                System.out.println("FOP Version " + Version.getVersion());
+                System.out.println("FOP Version " + Fop.getVersion());
             } else if (args[i].equals("-param")) {
                   if (i + 2 < args.length) {
                       if (xsltParams == null) {
index edf138ee61a0645e54b425e0789221a56c02528a..0dd53cff86f26dbe213efe338662598c4e38e018 100644 (file)
@@ -350,8 +350,8 @@ public class Driver {
         if (renderer instanceof AWTRenderer) {
             rendererType = RENDER_AWT;
         }
-        renderer.setProducer(Version.getVersion());
         renderer.setUserAgent(getUserAgent());
+        userAgent.setProducer("FOP Version" + Fop.getVersion());
         this.renderer = renderer;
     }
 
@@ -375,8 +375,8 @@ public class Driver {
                 throws IllegalArgumentException {
         try {
             renderer = (Renderer)Class.forName(rendererClassName).newInstance();
-            renderer.setProducer(Version.getVersion());
             renderer.setUserAgent(getUserAgent());
+            userAgent.setProducer("FOP Version" + Fop.getVersion());
         } catch (ClassNotFoundException e) {
             throw new IllegalArgumentException("Could not find "
                                                + rendererClassName);
index 56854e0e9fc9debbb3fd06bcc558e9f842e5fb73..15bc9962859b4710f07695ce62c67e09a34a35d0 100644 (file)
@@ -19,6 +19,7 @@
 package org.apache.fop.apps;
 
 // Java
+import java.util.Date;
 import java.util.HashMap;
 import java.util.Map;
 import java.io.IOException;
@@ -58,6 +59,69 @@ public class FOUserAgent {
     private float px2mm = 0.35277777777777777778f; //72dpi (=25.4/dpi)
     private HashMap rendererOptions = new java.util.HashMap();
 
+    /** Producer:  Metadata element for the system/software that produces
+     * the document. (Some renderers can store this in the document.)
+     */
+    protected String producer = "FOP " + Fop.getVersion();
+
+    /** Creator:  Metadata element for the user that created the
+     * document. (Some renderers can store this in the document.)
+     */
+    protected String creator = null;
+
+    /** Creation Date:  Override of the date the document was created. 
+     * (Some renderers can store this in the document.)
+     */
+    protected Date creationDate = null;
+    
+    /**
+     * Sets the producer of the document.  
+     * @param producer source of document
+     */
+    public void setProducer(String producer) {
+        this.producer = producer;
+    }
+
+    /**
+     * Returns the producer of the document
+     * @return producer name
+     */
+    public String getProducer() {
+        return producer;
+    }
+
+    /**
+     * Sets the creator of the document.  
+     * @param creator of document
+     */
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+
+    /**
+     * Returns the creator of the document
+     * @return creator name
+     */
+    public String getCreator() {
+        return creator;
+    }
+
+    /**
+     * Sets the creation date of the document.  
+     * @param creation date of document
+     */
+    public void setCreationDate(Date creationDate) {
+        this.creationDate = creationDate;
+    }
+
+    /**
+     * Returns the creation date of the document
+     * @return creation date of document
+     */
+    public Date getCreationDate() {
+        return creationDate;
+    }
+
     /**
      * Returns the renderer options
      * @return renderer options
index 7e75f4ab70a510b8a22d84a83aea671e0c604432..a7b8eb06e80275ecd03efcf8de487394c5297142 100644 (file)
@@ -39,7 +39,6 @@ public class Fop {
         CommandLineOptions options = null;
         InputHandler inputHandler = null;
         BufferedOutputStream bos = null;
-        String version = Version.getVersion();
 
         try {
             Driver driver = new Driver();
@@ -96,5 +95,13 @@ public class Fop {
             System.exit(1);
         }
     }
+
+    /**
+     * Get the version of FOP
+     * @return the version string
+     */
+    public static String getVersion() {
+        return "1.0dev";
+    }
 }
 
diff --git a/src/java/org/apache/fop/apps/Version.java b/src/java/org/apache/fop/apps/Version.java
deleted file mode 100644 (file)
index 125bee4..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright 1999-2004 The Apache Software Foundation.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/* $Id$ */
-package org.apache.fop.apps;
-
-/**
- * Class representing the version of FOP.
- */
-public class Version {
-
-    /**
-     * Get the version of FOP
-     *
-     * @return the version string
-     */
-    public static String getVersion() {
-        return "1.0dev";
-    }
-
-}
index 427ed33b6ea9b4e152d2c2e1e3c2f30af2d0e9e4..15ed0cc39c08f0ddf2344788b4b36b2b6e39348e 100644 (file)
 
 package org.apache.fop.fo.pagination;
 
+// Java
 import java.awt.Rectangle;
 
+// XML
+import org.xml.sax.Attributes;
+import org.xml.sax.Locator;
+
+// FOP
 import org.apache.fop.datatypes.ColorType;
 import org.apache.fop.datatypes.FODimension;
 import org.apache.fop.fo.FONode;
@@ -44,6 +50,14 @@ public class RegionBody extends Region {
         super(parent, Region.BODY_CODE);
     }
 
+    /**
+     * @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);
+    }
+
     /**
      * @see org.apache.fop.fo.pagination.Region#getViewportRectangle(FODimension)
      */
index b58a8ec239a4daf010cb12a6ca513dd9fa3d78b9..822945a032a413ce04f24b3f7ed57d450579b436 100644 (file)
@@ -36,7 +36,7 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
 //FOP
-import org.apache.fop.apps.Version;
+import org.apache.fop.apps.Fop;
 import org.apache.fop.fonts.type1.PFMFile;
 
 /**
@@ -144,7 +144,7 @@ public class PFMReader {
 
         PFMReader app = new PFMReader();
 
-        System.out.println("PFM Reader for Apache FOP " + Version.getVersion() + "\n");
+        System.out.println("PFM Reader for Apache FOP " + Fop.getVersion() + "\n");
 
         if (options.get("-ef") != null) {
             embFile = (String)options.get("-ef");
index 12ad63b301932abfd1ba6b5d22f06a384194e8d3..940eb4c08f849b97ee6747698b3de4465bc67139 100644 (file)
@@ -35,7 +35,7 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
 //FOP
-import org.apache.fop.apps.Version;
+import org.apache.fop.apps.Fop;
 import org.apache.fop.fonts.truetype.FontFileReader;
 import org.apache.fop.fonts.truetype.TTFCmapEntry;
 import org.apache.fop.fonts.truetype.TTFFile;
@@ -160,7 +160,7 @@ public class TTFReader {
 
         TTFReader app = new TTFReader();
 
-        System.out.println("TTF Reader for Apache FOP " + Version.getVersion() + "\n");
+        System.out.println("TTF Reader for Apache FOP " + Fop.getVersion() + "\n");
 
         if (options.get("-enc") != null) {
             String enc = (String)options.get("-enc");
index f3fd05848afc9f57d8c5a116925e3c373a78b6b0..813cbf90c1bd02d69a669a02737e8a0da33e1c9a 100644 (file)
@@ -89,21 +89,6 @@ public abstract class AbstractRenderer
      */
     protected static Log logger = LogFactory.getLog("FOP");
     
-    /**
-     * producer (usually "FOP")
-     */
-    protected String producer = "FOP";
-
-    /**
-     * creator of document
-     */
-    protected String creator = null;
-
-    /**
-     * creation time
-     */
-    protected Date creationDate = null;
-
     /**
      * block progression position
      */
@@ -145,16 +130,6 @@ public abstract class AbstractRenderer
         return logger;
     }
 
-    /** @see org.apache.fop.render.Renderer */
-    public void setProducer(String inProducer) {
-        producer = inProducer;
-    }
-
-    /** @see org.apache.fop.render.Renderer */
-    public void setCreator(String inCreator) {
-        creator = inCreator;
-    }
-
     /**
      *  @see org.apache.fop.render.Renderer
      */
@@ -167,13 +142,6 @@ public abstract class AbstractRenderer
         userAgent = agent;
     }
 
-    /**
-     * @param date
-     */
-    public void setCreationDate(Date date) {
-        creationDate = date;
-    }
-
     /** @see org.apache.fop.render.Renderer */
     public void startRenderer(OutputStream outputStream)
         throws IOException { }
@@ -344,9 +312,7 @@ public abstract class AbstractRenderer
      */
     protected void renderRegion(RegionReference region) {
         List blocks = region.getBlocks();
-
         renderBlocks(null, blocks);
-
     }
 
     /**
index dda6788e4f931cf6ff0fb35bf3c1d2be41b638f1..8c0bca1e97e8ad69eb5c891aab86fad74fb41868 100644 (file)
@@ -96,34 +96,6 @@ public interface Renderer {
      */
     void setupFontInfo(FontInfo fontInfo);
 
-    /**
-     * Set the producer of the rendering. If this method isn't called the
-     * renderer uses a default. Note: Not all renderers support this feature.
-     *
-     * @param producer  The name of the producer (normally "FOP") to be
-     *      embedded in the generated file.
-     */
-    void setProducer(String producer);
-
-    /**
-     * Set the creator of the document to be rendered.
-     * If this method isn't called the renderer uses a default.
-     * Note: Not all renderers support this feature.
-     *
-     * @param creator  The name of the document creator
-     */
-    void setCreator(String creator);
-    
-    /**
-     * Set the creator date/timeof the document to be rendered.
-     * If this method isn't called the renderer uses the current date/time
-     * as default.
-     * Note: Not all renderers support this feature.
-     *
-     * @param date The name of the document creator
-     */
-    void setCreationDate(Date date);
-
     /**
      * Reports if out of order rendering is supported. <p>
      *
index f7052d9a4b207eb46822bcee486e3ddb13b2b3fa..9974f841ecd8d19725870647fcb90b49b440555f 100644 (file)
@@ -36,7 +36,7 @@ import java.awt.event.WindowEvent;
 import java.awt.event.ActionEvent;
 
 //FOP
-import org.apache.fop.apps.Version;
+import org.apache.fop.apps.Fop;
 
 /**
  * AWT Viewer's "About" dialog.
@@ -68,7 +68,7 @@ public class PreviewDialogAboutBox extends Dialog implements ActionListener {
         imageControl1.setIcon(new ImageIcon(getClass().getResource("images/fop.gif")));
         JLabel label1 = new JLabel(translator.getString("About.Product"));
         JLabel label2 = new JLabel(translator.getString("About.Version") 
-                                            + " " + Version.getVersion());
+                                            + " " + Fop.getVersion());
         JLabel label3 = new JLabel(translator.getString("About.Copyright"));
         panel1.setLayout(new BorderLayout());
         panel2.setLayout(new BorderLayout());
index b542f23ce9c599fc8cb024772f4b61da282d4e70..a9cd5608a8d4f53c653acaa42ab42ede63f6d4dd 100644 (file)
@@ -37,7 +37,6 @@ import org.apache.avalon.framework.configuration.ConfigurationException;
 // FOP
 import org.apache.fop.apps.FOPException;
 import org.apache.fop.apps.FOUserAgent;
-import org.apache.fop.apps.Version;
 import org.apache.fop.area.Area;
 import org.apache.fop.area.Block;
 import org.apache.fop.area.BlockViewport;
@@ -247,10 +246,9 @@ public class PDFRenderer extends PrintRenderer {
      */
     public void startRenderer(OutputStream stream) throws IOException {
         ostream = stream;
-        producer = "FOP " + Version.getVersion();
-        this.pdfDoc = new PDFDocument(producer);
-        this.pdfDoc.setCreator(creator);
-        this.pdfDoc.setCreationDate(creationDate);
+        this.pdfDoc = new PDFDocument(userAgent.getProducer());
+        this.pdfDoc.setCreator(userAgent.getCreator());
+        this.pdfDoc.setCreationDate(userAgent.getCreationDate());
         this.pdfDoc.setFilterMap(filterMap);
         this.pdfDoc.outputHeader(stream);
 
index c52f5ef8db1f15b06c6c63a304cf7b2090c717c2..7a8eacce965e60c40826a208a6bad05201830bfc 100644 (file)
@@ -20,7 +20,7 @@ package org.apache.fop.render.ps;
 
 import java.io.IOException;
 
-import org.apache.fop.apps.Version;
+import org.apache.fop.apps.Fop;
 
 /**
  * This class is a wrapper for the <tt>AbstractPSDocumentGraphics2D</tt> that
@@ -55,7 +55,7 @@ public class EPSDocumentGraphics2D extends AbstractPSDocumentGraphics2D {
         //PostScript Header
         gen.writeln(DSCConstants.PS_ADOBE_30 + " " + DSCConstants.EPSF_30);
         gen.writeDSCComment(DSCConstants.CREATOR, 
-                    new String[] {"Apache FOP " + Version.getVersion() 
+                    new String[] {"Apache FOP " + Fop.getVersion() 
                         + ": EPS Transcoder for SVG"});
         gen.writeDSCComment(DSCConstants.CREATION_DATE, 
                     new Object[] {new java.util.Date()});
index 29e85603eb11ad44adcfac9c062086c32cfb8608..4a3a058011299b359bc2a448c6327d28fadd48d1 100644 (file)
@@ -24,7 +24,7 @@ import java.io.OutputStream;
 import java.io.IOException;
 
 //FOP
-import org.apache.fop.apps.Version;
+import org.apache.fop.apps.Fop;
 import org.apache.fop.fonts.FontInfo;
 import org.apache.fop.fonts.FontSetup;
 
@@ -92,7 +92,7 @@ public class PSDocumentGraphics2D extends AbstractPSDocumentGraphics2D {
         //PostScript Header
         gen.writeln(DSCConstants.PS_ADOBE_30);
         gen.writeDSCComment(DSCConstants.CREATOR,
-                    new String[] {"Apache FOP " + Version.getVersion() 
+                    new String[] {"Apache FOP " + Fop.getVersion() 
                         + ": PostScript Transcoder for SVG"});
         gen.writeDSCComment(DSCConstants.CREATION_DATE,
                     new Object[] {new java.util.Date()});
index ad61fd658dd041759b08acb04819a3d8d6693d6d..a3d4aabe4b29709a2e4e6bde55b8e31d451ec37a 100644 (file)
@@ -320,7 +320,7 @@ public class PSRenderer extends AbstractRenderer {
 
         //PostScript Header
         writeln(DSCConstants.PS_ADOBE_30);
-        gen.writeDSCComment(DSCConstants.CREATOR, new String[] {"FOP " + this.producer});
+        gen.writeDSCComment(DSCConstants.CREATOR, new String[] { userAgent.getProducer() });
         gen.writeDSCComment(DSCConstants.CREATION_DATE, new Object[] {new java.util.Date()});
         gen.writeDSCComment(DSCConstants.LANGUAGE_LEVEL, new Integer(gen.getPSLevel()));
         gen.writeDSCComment(DSCConstants.PAGES, new Object[] {PSGenerator.ATEND});
index 8b4ce8cc45cc3ea1d24b4a13619678a5c049d8ae..a1ffe0f8173c95198cf6e76f9ee42afedc4253f3 100644 (file)
@@ -317,7 +317,7 @@ public class TestConverter {
 
             userAgent.getRendererOptions().put("fineDetail", new Boolean(false));
             userAgent.getRendererOptions().put("consistentOutput", new Boolean(true));
-            driver.getRenderer().setProducer("Testsuite Converter");
+            userAgent.setProducer("Testsuite Converter");
 
             String outname = res;
             if (outname.endsWith(".xml") || outname.endsWith(".pdf")) {