Community

Implementing a non-flat deployment for Weld Integration

reply from Flavia Rainone in JBoss Microcontainer Development POJO Server - View the full discussion

The draft version is committed to this branch:

http://anonsvn.jboss.org/repos/jbossas/projects/weld-int/branches/Deployment_WELDINT-1/

 

Now we finally have something concrete to use in our discussion. So, my draft version of WELDINT-1 is fully documented in order to make it easier for others to understand and to stimulate discussion :-)

 

Basically, I created an Archive class that maps to a Module and contains all the info necessary for creating a corresponding BeanDeploymentArchive. An Archive can reach other archives through Classpath, which maps one-to-one to ClassLoader domains and contains a list of archives/bdas. A Classpath can internaly point to another classpath, which corresponds to the parent domain relationship. This sets up the graph structure Pete suggested, which is actually a tree.

 

At first, when a deployment is created, BDAs are created only  for those Archives that contain one or more CDI xml file. After that, as a result of Deployment.loadBeanDeploymentArchive, a BDA may be created by an Archive. Al lthe BDA collections are updated accordingly, mainly by the use of a BDALyfecycleListener.

 

Take a good look at the ClasspathImpl class. This is a very naïve but simple to understand implementation of the Classpath interface. It returns always a flat collection of all BDAs or archives visible, including

Reply to this message by going to Community

Start a new discussion in JBoss Microcontainer Development POJO Server at Community