Singleton provider that uses Application ClassLoader to differentiate between applications. It is different from {@link org.jboss.weld.bootstrap.api.helpers.TCCLSingletonProvider}. We can't use TCCLSingletonProvider because thread's context class loader can be different for different modules of a single application (ear). To support Application Scoped beans, Weld needs to be bootstrapped per application as opposed to per module. We rely on the fact that all these module class loaders have a common parent which is per application. We use that parent ApplicationClassLoader to identify the singleton scope.
@author Sanjeeb.Sahoo@Sun.COM
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.