keiron      02/01/03 02:39:56

  Modified:    src/org/apache/fop/apps Tag: fop-0_20_2-maintain Driver.java
                        StreamRenderer.java
               src/org/apache/fop/fo Tag: fop-0_20_2-maintain
                        FOTreeBuilder.java
               src/org/apache/fop/fo/pagination Tag: fop-0_20_2-maintain
                        PageSequence.java
  Added:       src/org/apache/fop/apps Tag: fop-0_20_2-maintain
                        FormattingResults.java PageSequenceResults.java
  Log:
  Formatting results patch to enable embedders to obtain info from render doc
  Submitted by: Jeremias Maerki <[EMAIL PROTECTED]>
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.36.2.1  +17 -14    xml-fop/src/org/apache/fop/apps/Driver.java
  
  Index: Driver.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/apps/Driver.java,v
  retrieving revision 1.36
  retrieving revision 1.36.2.1
  diff -u -r1.36 -r1.36.2.1
  --- Driver.java       5 Oct 2001 09:49:21 -0000       1.36
  +++ Driver.java       3 Jan 2002 10:39:56 -0000       1.36.2.1
  @@ -1,5 +1,5 @@
   /*
  - * $Id: Driver.java,v 1.36 2001/10/05 09:49:21 keiron Exp $
  + * $Id: Driver.java,v 1.36.2.1 2002/01/03 10:39:56 keiron Exp $
    * 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.
  @@ -241,6 +241,19 @@
           _treeBuilder.reset();
       }
   
  +    /**
  +     * Returns the results of the last rendering process. Information includes
  +     * the total number of pages generated and the number of pages per
  +     * page-sequence.
  +     */
  +    public FormattingResults getResults() {
  +        try {
  +            return _treeBuilder.getStreamRenderer().getResults();
  +        } catch (NullPointerException e) {
  +            return null;
  +        }
  +    }
  +
       public boolean hasData() {
           return (_treeBuilder.hasData());
       }
  @@ -483,19 +496,9 @@
        */
       public synchronized void render(Document document)
       throws FOPException {
  -
  -        try {
  -            DocumentInputSource source = new DocumentInputSource(document);
  -            DocumentReader reader = new DocumentReader();
  -            reader.setContentHandler(getContentHandler());
  -            reader.parse(source);
  -        } catch (SAXException e) {
  -            throw new FOPException(e);
  -        }
  -        catch (IOException e) {
  -            throw new FOPException(e);
  -        }
  -
  +         DocumentInputSource source = new DocumentInputSource(document);
  +         DocumentReader reader = new DocumentReader();
  +         render(reader, source);
       }
   
       /**
  
  
  
  1.6.2.1   +11 -0     xml-fop/src/org/apache/fop/apps/StreamRenderer.java
  
  Index: StreamRenderer.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/apps/StreamRenderer.java,v
  retrieving revision 1.6
  retrieving revision 1.6.2.1
  diff -u -r1.6 -r1.6.2.1
  --- StreamRenderer.java       11 Sep 2001 10:04:24 -0000      1.6
  +++ StreamRenderer.java       3 Jan 2002 10:39:56 -0000       1.6.2.1
  @@ -66,6 +66,11 @@
       private Renderer renderer;
   
       /**
  +     * The formatting results to be handed back to the caller.
  +     */
  +    private FormattingResults results = new FormattingResults();
  +
  +    /**
         The FontInfo for this renderer.
       */
       private FontInfo fontInfo = new FontInfo();
  @@ -102,6 +107,10 @@
           return idReferences;
       }
   
  +    public FormattingResults getResults() {
  +        return this.results;
  +    }
  +
       public void addExtension(ExtensionObj ext) {
           extensions.addElement(ext);
       }
  @@ -192,6 +201,8 @@
           } catch (FOPException e) {
               throw new SAXException(e);
           }
  +        this.results.haveFormattedPageSequence(pageSequence);
  +        log.debug("Last page-sequence produced "+pageSequence.getPageCount()+" 
pages.");
       }
   
       public synchronized void queuePage(Page page)
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.1   +73 -0     xml-fop/src/org/apache/fop/apps/Attic/FormattingResults.java
  
  
  
  
  1.1.2.1   +50 -0     xml-fop/src/org/apache/fop/apps/Attic/PageSequenceResults.java
  
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.30.2.1  +5 -1      xml-fop/src/org/apache/fop/fo/FOTreeBuilder.java
  
  Index: FOTreeBuilder.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/FOTreeBuilder.java,v
  retrieving revision 1.30
  retrieving revision 1.30.2.1
  diff -u -r1.30 -r1.30.2.1
  --- FOTreeBuilder.java        5 Oct 2001 10:17:55 -0000       1.30
  +++ FOTreeBuilder.java        3 Jan 2002 10:39:56 -0000       1.30.2.1
  @@ -1,5 +1,5 @@
   /*
  - * $Id: FOTreeBuilder.java,v 1.30 2001/10/05 10:17:55 keiron Exp $
  + * $Id: FOTreeBuilder.java,v 1.30.2.1 2002/01/03 10:39:56 keiron Exp $
    * 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.
  @@ -90,6 +90,10 @@
   
       public void setStreamRenderer(StreamRenderer streamRenderer) {
           this.streamRenderer = streamRenderer;
  +    }
  +
  +    public StreamRenderer getStreamRenderer() {
  +        return this.streamRenderer;
       }
   
       /**
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.39.2.2  +6 -2      xml-fop/src/org/apache/fop/fo/pagination/PageSequence.java
  
  Index: PageSequence.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/pagination/PageSequence.java,v
  retrieving revision 1.39.2.1
  retrieving revision 1.39.2.2
  diff -u -r1.39.2.1 -r1.39.2.2
  --- PageSequence.java 6 Dec 2001 21:28:21 -0000       1.39.2.1
  +++ PageSequence.java 3 Jan 2002 10:39:56 -0000       1.39.2.2
  @@ -1,5 +1,5 @@
   /*
  - * $Id: PageSequence.java,v 1.39.2.1 2001/12/06 21:28:21 tore Exp $
  + * $Id: PageSequence.java,v 1.39.2.2 2002/01/03 10:39:56 keiron Exp $
    * 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.
  @@ -613,7 +613,11 @@
       }
   
       public int getCurrentPageNumber() {
  -        return currentPageNumber;
  +        return currentPageNumber; 
  +    }
  +
  +    public int getPageCount() {
  +     return this.pageCount;
       }
   
       private void forcePage(AreaTree areaTree, int firstAvailPageNumber) {
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to