<?xml version="1.0" encoding="UTF-8"?>

<deployment xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="urn:jboss:bean-deployer:2.0 bean-deployer_2_0.xsd"
            xmlns="urn:jboss:bean-deployer:2.0">

   <!-- 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>
   </bean>

   <!-- 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>

    <!-- 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>

   <!-- POJO Deployment -->
   <bean name="BeanDeployer" class="org.jboss.deployers.vfs.deployer.kernel.Properties2BeansDeployer">
      <property name="type">beans</property>
   </bean>
   <bean name="KernelDeploymentDeployer" class="org.jboss.deployers.vfs.deployer.kernel.KernelDeploymentDeployer">
      <property name="type">beans</property>
   </bean>
   <bean name="BeanMetaDataDeployer" class="org.jboss.deployers.vfs.deployer.kernel.BeanMetaDataDeployer">
      <constructor><parameter><inject bean="jboss.kernel:service=Kernel"/></parameter></constructor>
      <property name="type">beans</property>
   </bean>
   
</deployment>

