Based on posts over the last week or so, combined with what is in place on the subject of kernel embedded, I'm trying to figure out a good direction.
Context - current embedding approaches:
1. the kernel/bootstrap package (a CLI based loader) 2. the maven merlin plugin (maven project context) 3. abstract unit test in kernel/unit (maven project context) 4. Alexis Agahi' work on re. Avalon in JBoss and OpenIM 5. Timmothy Bennets work on Jetty 6. Peter Courcoux work in embedding inside a web-app for Turbine
Generally speaking these embeddors do the following:
1. provides a single boostrap jar file package 2. collects kernel arguments relative to the embedded context 3. builds the kernel context 4. deploys the kernel 5. provides environment specific controls
Generalizing again - about the only thing really common across the above is the kernel context and the kernel itself. As things have been moving forward - the kernel interfaces have been updated to better address embedded requirements. At the same time things are somewhat fragmented in the area of kernel control.
My own feeling about the current control code within the embeddors with the CVS repository is that - it could really be improved. With a clean controller the code needed to setup the kernel could be consolidated and and the suite of different embeddors could be simplified and the core code centralized – under merlin/kernel/control (for example).
What are other peoples thoughts about the current kernel loaders (I think we can do better that the content I've written). Any ideas on what a kernel controller would look like? Perhaps a controller would aggregate info form the context and the runtime kernel and it would also be the MBean point of access. Maybe taking Alexis' content as the MBean starting point for a controller, perhaps moving this closer to the DefaultEmbeddedKernel or perhaps recutting DefaultEmbeddedKernel to be a
DefaultKernelController that hides all of the thread stuff. With something like that we could backport the functionality into the plugins, abstract test case, and other related embeddors.
Ok, enough from me!
:-)
Cheers, Steve.
--
Stephen J. McConnell mailto:[EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]