On Sat, 9 Feb 2002 16:31, Kevin Smith wrote:
> I'm new to the world of Avalon, but I've been studying the code and the
> docs for about a month. I think I'm ready to dive in and start helping
> where needed.

woohoo!

> But where to start? My impression is that Cornerstone may be the best
> place to start, while I continue to learn the framework and Phoenix
> architecture.

kool.

> Are any of the items on the Cornerstone "to do" list still
> valid? I was thinking of working on the Java compiler item, using BCEL &
> Barat.
>
> Suggestions and comments are most welcome...

It really depends on what you want to do ;)

Theres lots of little things about that need to be done. Some examples include

* adding more JUnit tests for everything
* adding more documentation and well explained examples
* adding performance tests for the socket/packet and thread managers
* Changing role strings from
String ROLE = "org.apache.avalon.cornerstone.services.security.Realm";
to
String ROLE = Realm.class.getName();

All of that may classify as a bit boring though so you can also jump in and 
write something new. Some great additions would be

* GUI to assembly applications together. ie you provide a set of jars in 
which there are blocks contained. The GUI would allow you to select different 
blocks and wire them together as appropriate - possibly via drag and drop. It 
would also allow you to edit the contents of environment.xml and config.xml 
through some mecghanisms.
* Ant tasks to verify blocks / application. The verification code is mostly 
contained in the phoenix.tools.verifier package and it would just involve 
creating an ant task to wrap this and adding a little docco
* Write a specialized XDoclet task (see xdoclet.sourceforge.net) that 
generated the blockinfo for the blocks. We already have a semi-prototype of 
that (see gen-blockinfo.xml in basedir) but it regenerates the blockinfo all 
the time. It would be nice to have a ant task that did something like

<gen-blockinfo srcDir="..." destDir="...">
  <classpath refid="project.class.path"/>
   <include name="**/*Block.java"/>
</gen-blockinfo>

And it would generate the blockinfos - only if they needed to be regenerated 
(ie the src had changed since last regeneration).

Anyways if thats not enough ideas I am sure I can come up with more :)
-- 
Cheers,

Pete

Duct tape is like the force.  It has a light side, and a dark side, and
it binds the universe together ...
                -- Carl Zwanzig

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

Reply via email to