Hi ,

> It's in plans to improve it (my plans before getting ill!). 
> Basically what causes it slow down is Vincent's timestamp 
> checking code, which runs on template file first, then 
> decides whether something's changed of not and so on. 
> Unfortunately that means xjavadoc's performance hint (don't 
> parse at all if never needed) is useless, because anyway it's 
> always parsed because template is anyway run for timestamp checking.

The isGenerationNeeded( File file, URL templateURL ) takes a lot of
time.
Because of parsing.
Can we not keep a javamake style database of merge files for a basic
template file.
(like others discussed yesterday for classes, here for .j files)
The db needs to be reset when a merge file is added which happens not
often.
That will do the trick as well no ?  And more simple to implement to
begin with.
And we will avoid any parsing.  Even with your trick a lot of methods
will be called and I have no idea how much gain we will have.

> 
> PS: Anyone care to implement it? I'm not yet in a good 
> condition. The trick is: define an int runMode in XJavaDoc, 
> set to true when Vincent's code is to be run, reset when 
> finished. In xjavadoc.ProxyClass, change everywgere resolve() 
> is called to first check this flag and don't resolve if 
> runMode==TIMESTAMP_PREPROCESSING_MODE. Note that to make 
> templates actually finish you have to return a 
> semi-meaningful result for each of the ProxyClass methods 
> (public XMethod[] methods(){ if( runMode==time... ) return 
> NULL_METHODS;}. And so on.

Let me know what you think of my idea...I can take this if you don't
like it ;)

Get well soon.
Vincent

> 
> Ara.
> 


_______________________________________________
Xdoclet-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-devel

Reply via email to