Package org.jboss.weld.bootstrap.api
Interface Bootstrap
-
- All Known Subinterfaces:
CDI11Bootstrap
- All Known Implementing Classes:
ForwardingBootstrap
public interface BootstrapApplication container initialization API for Weld. To initialize the container you must call, in this order:startContainer(Environment, Deployment)startInitialization()deployBeans()validateBeans()endInitialization()
shutdown()- Author:
- Pete Muir
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description BootstrapdeployBeans()Creates and deploys the application's beans: Creates and deploys the discovered beans Creates and deploys the built-in beans defined by the CDI specification Finally theAfterBeanDiscoveryis event is firedBootstrapendInitialization()Cleans up after the initializationWeldManagergetManager(BeanDeploymentArchive beanDeploymentArchive)Get the manager used for the given beanDeploymentArchive.Iterable<Metadata<javax.enterprise.inject.spi.Extension>>loadExtensions(ClassLoader classLoader)Load CDI extensions using the provided ClassLoaderBeansXmlparse(Iterable<URL> urls)Parse the specified URLs as a series of beans.xml file and merge the result.BeansXmlparse(Iterable<URL> urls, boolean removeDuplicates)Parse the specified URLs as a series of beans.xml file and merge the result.BeansXmlparse(URL url)Parse the specified URL as a beans.xml file.voidshutdown()Causes the container to clean up and shutdown Before the contain is shutdown theBeforeShutdownevent is firedBootstrapstartContainer(Environment environment, Deployment deployment)Creates the application container: Checks that the services required by the environment have been provided Adds container provided services Creates and initializes the built in contexts Creates the manager contextBootstrapstartInitialization()Starts the application container initialization process: Reads metadata from beans.xml and theDeploymentservice Starts the application context Starts the request context which lasts untilendInitialization()is called Discovers and createsExtensionservice providers Finally, theBeforeBeanDiscoveryevent is fired.BootstrapvalidateBeans()Validates the deployment.
-
-
-
Method Detail
-
startContainer
Bootstrap startContainer(Environment environment, Deployment deployment)
Creates the application container:- Checks that the services required by the environment have been provided
- Adds container provided services
- Creates and initializes the built in contexts
- Creates the manager
- Parameters:
environment- the environment in use, by defaultEnvironments.EEdeployment- the Deployment to be booted- Returns:
- self
- Throws:
IllegalStateException- if not all the services required for the given environment are available
-
startInitialization
Bootstrap startInitialization()
Starts the application container initialization process:- Reads metadata from beans.xml and the
Deploymentservice - Starts the application context
- Starts the request context which lasts until
endInitialization()is called - Discovers and creates
Extensionservice providers
BeforeBeanDiscoveryevent is fired.- Returns:
- self
- Reads metadata from beans.xml and the
-
deployBeans
Bootstrap deployBeans()
Creates and deploys the application's beans:- Creates and deploys the discovered beans
- Creates and deploys the built-in beans defined by the CDI specification
AfterBeanDiscoveryis event is fired- Returns:
- self
-
validateBeans
Bootstrap validateBeans()
Validates the deployment. After validation, theAfterDeploymentValidationevent is fired- Returns:
- self
-
endInitialization
Bootstrap endInitialization()
Cleans up after the initialization- Returns:
- self
-
shutdown
void shutdown()
Causes the container to clean up and shutdown Before the contain is shutdown theBeforeShutdownevent is fired
-
getManager
WeldManager getManager(BeanDeploymentArchive beanDeploymentArchive)
Get the manager used for the given beanDeploymentArchive. IfstartContainer(Environment, Deployment)has not been called, this method will return null. If the beanDeploymentArchive is not known to Weld (for example, it was not passed to the Weld as part of theDeployment, or has not yet been requested byDeployment.loadBeanDeploymentArchive(Class)), null will be returned.- Parameters:
beanDeploymentArchive- the given beanDeploymentArchive- Returns:
- the manager or null if not yet available or not found.
-
parse
BeansXml parse(URL url)
Parse the specified URL as a beans.xml file.- Parameters:
url- the url to parse- Returns:
- the BeansXml data structure which represents the URL
- Throws:
IllegalArgumentException- if the URL cannot be opened
-
parse
BeansXml parse(Iterable<URL> urls)
Parse the specified URLs as a series of beans.xml file and merge the result. Duplicate entries are not removed.- Parameters:
urls- the urls to parse- Returns:
- the BeansXml data structure which represents the URL
- Throws:
IllegalArgumentException- if the URL cannot be opened
-
parse
BeansXml parse(Iterable<URL> urls, boolean removeDuplicates)
Parse the specified URLs as a series of beans.xml file and merge the result.- Parameters:
urls- the urls to parseremoveDuplicates- whether duplicate entries (alternatives, interceptors, etc) are removed- Returns:
- the BeansXml data structure which represents the URL
- Throws:
IllegalArgumentException- if the URL cannot be opened
-
loadExtensions
Iterable<Metadata<javax.enterprise.inject.spi.Extension>> loadExtensions(ClassLoader classLoader)
Load CDI extensions using the provided ClassLoader- Parameters:
classLoader- the ClassLoader to use to load the extensions- Returns:
- loaded extensions
- Throws:
IllegalArgumentException- if classLoader is null
-
-