> -----Original Message-----
> From: Mathias Bogaert [mailto:[EMAIL PROTECTED]]
> Sent: 6. oktober 2002 02:55
> To: Aslak Hellesøy; [EMAIL PROTECTED]
> Subject: Re: [Xdoclet-devel] XDoclet 2 structure and process
>
>
> Good thing to bring this up. I really prefer b).
>
> Here are some remarks:
>
> 1. every plugin can be built seperately from the core (aka see Maven
> plugins)
Yes. Each plugin will have a project.xml, so it will only be a matter of
running maven in the plugin dir. The result of the build (plugin jar file)
will go into the local repository, so that dependencies between plugins work
with Maven.
> 2. the build process will be totally Maven, with maven.xml files
> containing
> jelly code that executes complicated things
> 3. I will set up a CruiseControl on my online server as soon as we have a
> build process and files (yep, everyone *will* know who broke the build or
> didn't execute JUnit ;-))
That's great! It would be awesome if this machine could run the deployment
tests too. Would it be possible for you to install many J2EE containers on
your box? -So we can test that stuff works on various platforms?
> 4. Each component should provide their own documentation (xdoc). --> hmmm
> are you sure about this? this will be partly generated (xtags) so I don't
> know if it is applicable
True. I think we can extract all doco from javadocs and xtags.xml
> 5. I will put a proposal for a directory structure (core, per plugin etc)
> online asap
Cool. As I have already started on the prototyping I'll update it with my
experiences.
> 6. could you (Aslak) provide a starter with your ideas about the new Core
> API? we should discuss this stuff *before* implementing it....
Here is my proposal:
xdoclet - Core package. No Ant stuff here.
XDoclet - Main class that starts XDoclet
Plugin - Essentially the same as the old SubTask. New name
to illustrate it's not Ant coupled.
TemplateEngine - Abstraction interface for a template engine.
Various implementations (Velocity, Jelly... elsewhere)
xdoclet.ant - Ant wrapper
XDocletTask - Ant task
xdoclet.beans - Baseclasses for implementations of XGG generated
bean interfaces
ClassBean - Bean that gets data from an XClass
MethodBean - Bean that gets data from an XMethod
FieldBean - Bean that gets data from an XField
ConstructorBean - Bean that gets data from an XConstructor
TagBean - Bean that gets data from an XTag
ParameterBean - Bean that gets data from an XParameter
xdoclet.javax - Classes related to java source code generation
JavaSubTask - Base class for sub tasks that generate java
xdoclet-velocity - Velocity related code
VelocityTemplateEngine - Velocity implementation of TemplateEngine
xdoclet.xml - Classes related to XML source code generation
XmlSubTask - Base class for sub tasks that generate XML
SubTask should have an abstract postProcess() method that subclasses can
implement to do DTD/Schema validation or prettifying (using Jalopy)
xjavadoc.XTag should have a validate() method that will validate a tag.
There will be many implementations of XTag, with different implementations
of validate(). XJavadoc will instantiate XTag instances based on the tag
name, looking in a String->Class map that we pass to XJavadoc prior to its
invocation.
Add XJavaDoc.getClasses(Predicate), XClass.getMethods(Predicate) etc.
methods to the XJavadoc API. This can be used to filter out certain objects
based on a validation object (Predicate).
http://jakarta.apache.org/commons/collections/api/org/apache/commons/collect
ions/CollectionUtils.html#select(java.util.Collection,
org.apache.commons.collections.Predicate)
That's what I have so far off the top of my head.
Aslak
> 7. everybody agrees with my points made in
> http://users.pandora.be/ees/xdoclet/development/design.html ?? especially
> "NO more support for EJB 1.0 and 1.1, use XDoclet 1.2 for this"??
>
+1
> I will moan to people that break the build, don't follow general design
> guidelines or don't write unit tests for their code etc. 2.0 should be
> XDoclet done right! So beware :-)
>
+1000
> Mathias
>
Aslak
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Xdoclet-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-devel