> > 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.
> 
> Are you checking merge files only? 

Yes when looping the merge files...

> Or classes too? Say 
> ejb-jar.xml, merge files are evaluated; are classes 
> timestamp-checked too? I think not, but should be possible 
> too, in setCurrentClass()/pushClass the loop pointer is 
> moved, do a timestamp check on clazz there :o)

... Then I checks ALL classes (most of the time for xml files there is a
forAllClasses so ...
This part is really quick.  And we do not need to see if other classes
than the tagged classes.
At least while we are not mutate these classes.  It will be for later.
And we don't need to check non tagged classes.

The first is really killing perf.
Build ejbdoclet ==> 29 sec
Build ejbdoclet -Dxdoclet.force ==> 58 sec

The 29 sec should be 1 or 2 sec.  All the time is passed in the merge
files timestamp lookup.
I will try what I proposed to see... I'll come back with numbers...
Then I 'll try yours and we'll see...

> 
> And you should anyway parse the template and run parts of the 
> template. We might have a merge inside a forAllClasses loop, 
> which merges blabla-{0}.xml for example, and 
> {0}=currentClass. My trick will do it
> ;-)
> 
> > > 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 ;)
> 
> I like it but I'm not in a good shape atm ;-)
> 
> Ara.
> 
> 
> _________________________________________________________
> Do You Yahoo!?
> Get your free @yahoo.com address at http://mail.yahoo.com
> 
> 
> _______________________________________________
> Xdoclet-devel mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/xdoclet-devel
> 


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

Reply via email to