[jboss-dev-forums] [Design the new POJO MicroContainer] - Re: Deployers schema

adrian@jboss.org do-not-reply at jboss.com
Fri Mar 28 08:13:48 EDT 2008


e.g. all this could be made to look a lot nicer and easier to understand with use case xml


  |    <!-- The MainDeployer -->
  |    <bean name="MainDeployer" class="org.jboss.deployers.plugins.main.MainDeployerImpl">
  |       <property name="structuralDeployers"><inject bean="StructuralDeployers"/></property>
  |       <property name="deployers"><inject bean="Deployers"/></property>
  |       <property name="mgtDeploymentCreator"><inject bean="ManagedDeploymentCreator"/></property>
  |    </bean>
  | 
  |    <!-- The ManagedDeploymentCreator implementation -->
  |    <bean name="ManagedDeploymentCreator" class="org.jboss.deployers.plugins.managed.DefaultManagedDeploymentCreator" />
  | 
  |    <!-- The holder for deployers that determine structure -->
  |    <bean name="StructuralDeployers" class="org.jboss.deployers.vfs.plugins.structure.VFSStructuralDeployersImpl">
  |       <property name="structureBuilder">
  |          <!-- The consolidator of the structure information -->
  |          <bean name="StructureBuilder" class="org.jboss.deployers.vfs.plugins.structure.VFSStructureBuilder"/>
  |       </property>
  |       <!-- Accept any implementor of structure deployer -->
  |       <incallback method="addDeployer"/>
  |       <uncallback method="removeDeployer"/>
  |    </bean>
  | 
  |    <!-- The holder for deployers that do real deployment -->
  |    <bean name="Deployers" class="org.jboss.deployers.plugins.deployers.DeployersImpl">
  |       <constructor><parameter><inject bean="jboss.kernel:service=KernelController"/></parameter></constructor>
  |       <!-- Accept any implementor of deployer -->
  |       <incallback method="addDeployer"/>
  |       <uncallback method="removeDeployer"/>
  |    </bean>
  | 
  |    <!-- A declared structure descriptor deployer -->
  |    <bean name="DeclaredStructure" class="org.jboss.deployers.vfs.plugins.structure.explicit.DeclaredStructure"></bean>
  | 
  |    <!-- WAR Structure -->
  |    <bean name="WARStructure" class="org.jboss.deployers.vfs.plugins.structure.war.WARStructure">
  |        <property name="webInfLibFilter">
  |           <!-- We accept all .jar files in WEB-INF/lib -->
  |           <bean name="WebInfLibFilter" class="org.jboss.virtual.plugins.vfs.helpers.SuffixMatchFilter">
  |              <constructor><parameter class="java.lang.String">.jar</parameter></constructor>
  |           </bean>
  |        </property>
  |     </bean>
  | 
  |     <!-- JAR Structure -->
  |     <bean name="JARStructure" class="org.jboss.deployers.vfs.plugins.structure.jar.JARStructure">
  |        <!-- Unless specified the default list of suffixes is .zip, .ear, .jar, ,.rar, .war, .sar, .har, .aop -->
  |        <constructor>
  |           <parameter>
  |              <set elementClass="java.lang.String">
  |                 <value>.zip</value>
  |                 <value>.ear</value>
  |                 <value>.jar</value>
  |                 <value>.rar</value>
  |                 <value>.war</value>
  |                 <value>.sar</value>
  |                 <value>.har</value>
  |                 <value>.aop</value>
  |                 <value>.deployer</value>
  |                 <value>.beans</value>
  |              </set>
  |           </parameter>
  |        </constructor>
  |        <property name="candidateStructureVisitorFactory">
  |           <!-- Any file that is not an ordinary directory is a candidate -->
  |           <bean name="JARStructureCandidates" class="org.jboss.deployers.vfs.spi.structure.helpers.DefaultCandidateStructureVisitorFactory">
  |              <!-- A filter to exclude some obvious non-subdeployments -->
  |              <property name="filter">
  |                 <bean name="JARFilter" class="org.jboss.virtual.plugins.vfs.helpers.SuffixesExcludeFilter">
  |                    <constructor><parameter>
  |                       <list elementClass="java.lang.String">
  |                          <!-- Exclude class files as subdeployments -->
  |                          <value>.class</value>
  |                       </list>
  |                    </parameter></constructor>
  |                 </bean>
  |              </property>
  |           </bean>
  |        </property>
  |     </bean>
  | 
  |     <!-- File Structure -->
  |     <bean name="FileStructure" class="org.jboss.deployers.vfs.plugins.structure.file.FileStructure">
  |        <!-- Unless specified the default list of suffixes is -service.xml, -beans.xml, -ds.xml, -aop.xml -->
  |        <constructor>
  |           <parameter>
  |              <set elementClass="java.lang.String">
  |                 <value>-service.xml</value>
  |                 <value>-beans.xml</value>
  |                 <value>-ds.xml</value>
  |                 <value>-aop.xml</value>
  |              </set>
  |           </parameter>
  |        </constructor>
  |     </bean>
  | 

P.S. I'm not saying you should do that now. Concentrate on getting CR1 features
done. These are implementation details that can be done after that.

If you're not changing a SPI or fixing an important bug then its not a priority for CR1

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4139635#4139635

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4139635



More information about the jboss-dev-forums mailing list