I believe the following approach would be possible:

1) Build a URIResolver and have it cache all the include lookup URIs in a
hash table along with the cache currency info (last modified, or whatever).


2) Upon recall of the original including resource, run the hash table
getting each lookup and cache currency info to compare against the current
state of the resource.

However, I'm not sure if you can always count on URIResolver being around
for all parsers?  I'm also assuming the Cocoon code is in a position to
insert it's own URI resolver into the transformation, but that seems pretty
likely?

-----Original Message-----
From: Jason Uithol [mailto:[EMAIL PROTECTED]]
Sent: Friday, June 28, 2002 2:08 AM
To: [EMAIL PROTECTED]
Subject: RE: Unexpected behavior with imported stylesheets


Hello,

Shoot me if I'm wrong.

This is to do with the Source (?) class isn't it ?  It has a
lastModified(...) function.  Source is created for the "importing"
stylesheet, and lastModified of course returns the last modified of the
"importing" file.  It would have to open the file, *parse* it and
recursively traverse through it's import and include tags to find the
"imported" files ( and their "imported" files :) opening and parsing all
them as well, get _their_ last modifieds and keep track of the most recent
one out of that lot.

It is a pain to touch every single xsl that imports another one, but the
above approach, if implemented in the "raw" way described above, would cause
a lot of thrashing around !

I suppose this a better question for the dev list, but would their be an
easy way to monitor a list of files for their last modifieds ?  ( Like JBoss
does )  That might make a better solution available.


Jason.

\

---------------------------------------------------------------------
Please check that your question  has not already been answered in the
FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>

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

Reply via email to