You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by di...@apache.org on 2001/01/08 15:31:10 UTC

cvs commit: xml-cocoon/webapp/docs/samples/svg henryV.svg opac.svg

dims        01/01/08 06:31:09

  Modified:    lib      Tag: xml-cocoon2 batik-all.jar
               src/org/apache/cocoon/components/parser Tag: xml-cocoon2
                        XercesParser.java
               webapp   Tag: xml-cocoon2 sitemap.xmap
  Added:       webapp/docs/samples/svg Tag: xml-cocoon2 henryV.svg opac.svg
  Removed:     webapp/docs/samples Tag: xml-cocoon2 opac.svg
  Log:
  Added a more complex sample for SVG (borrowed from Batik).
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.4   +4893 -4990xml-cocoon/lib/Attic/batik-all.jar
  
  	<<Binary file>>
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.12  +3 -1      xml-cocoon/src/org/apache/cocoon/components/parser/Attic/XercesParser.java
  
  Index: XercesParser.java
  ===================================================================
  RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/components/parser/Attic/XercesParser.java,v
  retrieving revision 1.1.2.11
  retrieving revision 1.1.2.12
  diff -u -r1.1.2.11 -r1.1.2.12
  --- XercesParser.java	2000/11/30 21:41:31	1.1.2.11
  +++ XercesParser.java	2001/01/08 14:31:02	1.1.2.12
  @@ -25,7 +25,7 @@
    *
    * @author <a href="mailto:fumagalli@exoffice.com">Pierpaolo Fumagalli</a>
    *         (Apache Software Foundation, Exoffice Technologies)
  - * @version CVS $Revision: 1.1.2.11 $ $Date: 2000/11/30 21:41:31 $
  + * @version CVS $Revision: 1.1.2.12 $ $Date: 2001/01/08 14:31:02 $
    */
   public class XercesParser extends AbstractXMLProducer
   implements Parser, ErrorHandler, DOMFactory, Poolable {
  @@ -38,6 +38,8 @@
   
       this.parser.setFeature("http://xml.org/sax/features/validation",false);
       this.parser.setFeature("http://xml.org/sax/features/namespaces",true);
  +	this.parser.setFeature("http://xml.org/sax/features/namespace-prefixes",
  +                          true);
       }
   
       public void parse(InputSource in)
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.32  +1 -1      xml-cocoon/webapp/Attic/sitemap.xmap
  
  Index: sitemap.xmap
  ===================================================================
  RCS file: /home/cvs/xml-cocoon/webapp/Attic/sitemap.xmap,v
  retrieving revision 1.1.2.31
  retrieving revision 1.1.2.32
  diff -u -r1.1.2.31 -r1.1.2.32
  --- sitemap.xmap	2001/01/04 22:39:32	1.1.2.31
  +++ sitemap.xmap	2001/01/08 14:31:04	1.1.2.32
  @@ -205,7 +205,7 @@
      </map:match>
   
      <map:match pattern="svg">
  -    <map:generate src="docs/samples/opac.svg"/>
  +    <map:generate src="docs/samples/svg/henryV.svg"/>
       <map:serialize type="svg2png"/>
      </map:match>
   
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.1   +97 -0     xml-cocoon/webapp/docs/samples/svg/Attic/henryV.svg
  
  
  
  
  1.1.2.1   +17 -0     xml-cocoon/webapp/docs/samples/svg/Attic/opac.svg
  
  
  
  

[c2] FileMonitoring & Re: cvs commit: xml-cocoon/webapp/docs/samples/svg henryV.svg opac.svg

Posted by Berin Loritsch <bl...@apache.org>.
dims@apache.org wrote:

> dims        01/01/08 06:31:09
> 
>   Modified:    lib      Tag: xml-cocoon2 batik-all.jar
>                src/org/apache/cocoon/components/parser Tag: xml-cocoon2
>                         XercesParser.java
>                webapp   Tag: xml-cocoon2 sitemap.xmap
>   Added:       webapp/docs/samples/svg Tag: xml-cocoon2 henryV.svg opac.svg
>   Removed:     webapp/docs/samples Tag: xml-cocoon2 opac.svg
>   Log:
>   Added a more complex sample for SVG (borrowed from Batik).

This is pretty cool, except for the time it takes to generate.
The first access on an Athlon 750 w/256 MB RAM, it takes ~26
seconds--the second access took ~16 seconds.  Any longer, and
the request would time out on many browsers.

I noticed that the SVG Serializer doesn't check to see if the
file has modified since the last access.  So what happens is
that the file is read and processed, but if the rendered image
is the same, then we send the already rendered image--or something
to that affect.

On something that is not a dynamic generator, (i.e. not a serverpages
generator, and does not have a dynamic transformer (i.e. not a
SQLTransformer), then we should use a cached version.

So this brings a number of concerns to the table:

1) We need to identify if the different points of the chain are
    dynamic or static (Generator, Transformer, Serializer).
2) We need to cache the results for each static path.
3) We need to update the results only if a file in the chain
    have been changed.
4) We need to immediately serialize the cached result if none
    of the items in the chain have changed.