geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dain Sundstrom <>
Subject Re: Separate Kernel registry
Date Mon, 28 Feb 2005 21:13:20 GMT
On Feb 27, 2005, at 3:38 PM, Jeremy Boynes wrote:

> 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.

I have been wanting to do this for a while.

But, in the long term, I think we should go further.  I think we should 
extract Kernel as an interface, and call the current implementation say 
DefaultKernel.  This will make remoting the kernel much simpler, and 
will allow people to implement the kernel on top of other servers.  For 
example, a Kernel interface on top of Spring or Pico (just an idea).

> 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.

That sounds like a much bigger change, and I think it should be 
discussed before any changes are made.

Actually, I'd like to make the same argument I made with Jules when he 
requested changes for Spring.  I think we should hold off on all Kernel 
change that are not *absolutely necessary*, until after we finish 
certification.  I just don't think the team has the bandwidth to think 
about these big issues, while trying to focus on the important 
certification work.


View raw message