With the current implementation of Kernel, it has to have a name and on boot it automatically adds itself to a VM wide registry of known Kernels using that name.

Whilst this is convenient, it makes it difficult for applications to create and use anonymous kernels just to host a bunch of GBeans without risk of conflicting with other applications in the same VM. To allow this I plan to make the name and registration optional and to separate the registry from the Kernel implementation itself.

I will leave the existing registration methods (like getSingleKernel()) for now but deprecate them.

This change will also allow us to simplify the boot/shutdown lifecycle and allow the various kernel services (e.g. Config, Dependency and Proxy managers) to be injected rather than being located during boot. Again, the boot() method will be deprecated.

FWIW, this mimics the anonymous MBeanServer concept from JMX.
--
Jeremy



Reply via email to