Hi everyone:
I've been updating the avalon-sandbox/assembly package in response to the evolving discusions and ideas about profile based containers. Much of the content in the asembly project has been ripped out of the Avalon Excalibur Merlin packaged and refactored to be more more cleanly component based (blaim Berin and Gary for this). The current result is an assembly, lifestyle, lifecycle management engine without any magic. The avalon-sandbox/merlin package is moving towards refactoring to leverage the assembly engine in the delivery of a dynamically deployed containers - you get exactly what you want for your containement problem - nothing more - nothing less.
There is still a lot of stuff to be done:
* the current appliance manager is statically referencing
a DefaultAppliance class - the objective it to have the
assembly engine dynamically assembly the appliance
implemetation class based on a componnt type attributes -
but things gets into some heavy nested assembly semantics
so stay tunned on this particular topic
* getting subsystem configuration in place - everything
currently works without configuration which is nice for
the dynamic deployment scanarios, but getting full
propergation of custom configurations will be a big plus
in moving forward on the notion of profile diven
containment
To see the avalon-sandbox/assembly API in action:
$ cd <avalon-sandbox>/assembly
$ ant test
And you will see a bunch of test cases assemblying components with dependencies and all that sort of stuff. While component can have dynamic dependencies on the assembly system (i.e. a componet under assembly can may have a depedency which will be resolved by the assembly engine by calling the assembly engine to build the dependency), there is still work to be done on enabling the assembly engine to call itself to enable it to extend itself during its own assembly of itself.
Get your head around that!
In the meantime, the Merlin refactoring is continuing - a new version of Merlin is in avalon-sandbox that incorporates the avan-sandbox assembly engine. It only inclues the kernel establishment and the next step concerns the deployment of the root container. This involves invoking the assembly engine to assemble the container which is where dynamic profiles come into play. Nothing terribly exiting just at the moment but under the surface there are some interesting ideas. Also, on a more pragmatic front - Merlin users will be please to not that there are a bunch of minor updates to the logging manager that will make this aspect of the system much easier to use. Also, a lot more context relavant error handling has been introduced in the new sandbox version that I'm sure will be appreciated, plus, simplification of the bootstrap process based on the assembly API seperation.
Cheers, Steve.
--
Stephen J. McConnell
OSM SARL
digital products for a global economy
mailto:[EMAIL PROTECTED]
http://www.osm.net
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>