[cdi-dev] CDI SE Google Doc Updated
jharting at redhat.com
Mon Mar 16 05:45:11 EDT 2015
The CDIProvider serves as a kind of SPI for CDI's static methods to be
able to call into the implementation. I don't think reusing it also as a
user-facing code is a good idea. What people suggesting to reuse
CDIProvider had in mind, I think, was to reuse it as the SPI for talking
to the CDI implementation instead. That way, the initialize() static
method of CDIContainer/StartedCDI/whatever we call it can use
CDIProvider internally to actually start the container.
In addition, the current proposal does not make it possible to implement
parallel container instances.
On 03/15/2015 05:03 PM, John D. Ament wrote:
> HI all,
> Apologies for being a week late on getting this doc together. I had
> some personal issues pop up after my leg came out of its cast that
> consumed most of my week last week.
> Anywho, I've updated the doc with a summary of what was discussed with
> CDI SE bootstrap support. You can find that here:
> There are two minor changes that I made from where we last discussed,
> as when I was putting together code I found some gaps and figured it
> best to fix them here than later.
> 1. CDIProvider does not implement AutoCloseable. Since CDI class
> maintains a reference to the provider, implementing AutoCloseable was
> not adding anything.
> 2. I added a method boolean isInitialized() so that the caller can
> know if they need to start the container (or if it's already running).
> Locally, I've also modified the CDI.current() method to use
> getCDIProvider() instead of internally finding the provider since we
> now have a getter.
> One thing I'd like to get feedback on is if calling
> initialize/shutdown in a container should throw IllegalStateException,
> or probably better to throw UnsupportedOperationException when called
> in EE containers.
> Let me know your thoughts.
> cdi-dev mailing list
> cdi-dev at lists.jboss.org
> Note that for all code provided on this list, the provider licenses the code under the Apache License, Version 2 (http://www.apache.org/licenses/LICENSE-2.0.html). For all other ideas provided on this list, the provider waives all patent and other intellectual property rights inherent in such information.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the cdi-dev