[jboss-cvs] JBossAS SVN: r109218 - in branches: switchboard-integration-bean-manager/server/src/etc/deployers and 3 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Nov 9 18:58:09 EST 2010


Author: marius.bogoevici
Date: 2010-11-09 18:58:08 -0500 (Tue, 09 Nov 2010)
New Revision: 109218

Added:
   branches/switchboard-integration-bean-manager/
   branches/switchboard-integration-bean-manager/weld-int/deployer/src/main/java/org/jboss/weld/integration/deployer/jndi/BeanManagerResourceProvider.java
Modified:
   branches/switchboard-integration-bean-manager/server/src/etc/deployers/switchboard-jboss-beans.xml
   branches/switchboard-integration-bean-manager/weld-int/assembly/src/main/assembly/resources/META-INF/weld-deployers-jboss-beans.xml
   branches/switchboard-integration-bean-manager/weld-int/deployer/pom.xml
   branches/switchboard-integration-bean-manager/weld-int/deployer/src/main/java/org/jboss/weld/integration/deployer/jndi/JavaEEComponentJndiBinderDeployer.java
   branches/switchboard-integration-bean-manager/weld-int/deployer/src/main/java/org/jboss/weld/integration/deployer/jndi/WebJndiBinderDeployer.java
Log:
Creating an integration branch for BeanManager Switchboard integration

Copied: branches/switchboard-integration-bean-manager (from rev 109204, branches/switchboard-integration)

Modified: branches/switchboard-integration-bean-manager/server/src/etc/deployers/switchboard-jboss-beans.xml
===================================================================
--- branches/switchboard-integration/server/src/etc/deployers/switchboard-jboss-beans.xml	2010-11-08 21:54:24 UTC (rev 109204)
+++ branches/switchboard-integration-bean-manager/server/src/etc/deployers/switchboard-jboss-beans.xml	2010-11-09 23:58:08 UTC (rev 109218)
@@ -45,6 +45,7 @@
                 <inject bean="org.jboss.switchboard.ResourceRefResourceProvider"/>
                 <inject bean="org.jboss.switchboard.MessageDestinationRefResourceProvider"/>
                 <inject bean="org.jboss.switchboard.WebServiceRefResourceProvider"/>
+                <inject bean="org.jboss.switchboard.BeanManagerResourceProvider"/>
                 <!-- Disabled till container themselves stop binding into java:comp 
                     <inject bean="org.jboss.switchboard.UserTransactionRefResourceProvider"/>
                 -->

Modified: branches/switchboard-integration-bean-manager/weld-int/assembly/src/main/assembly/resources/META-INF/weld-deployers-jboss-beans.xml
===================================================================
--- branches/switchboard-integration/weld-int/assembly/src/main/assembly/resources/META-INF/weld-deployers-jboss-beans.xml	2010-11-08 21:54:24 UTC (rev 109204)
+++ branches/switchboard-integration-bean-manager/weld-int/assembly/src/main/assembly/resources/META-INF/weld-deployers-jboss-beans.xml	2010-11-09 23:58:08 UTC (rev 109218)
@@ -119,8 +119,11 @@
       <depends>NameSpaces</depends>
   </bean>
 
-  <!--  UNCOMMENT THIS TO ENABLE WELD/MC INJECTION - This feature is currently very experimental and so not enabled by default  -->
+  <!--&lt;!&ndash;  UNCOMMENT THIS TO ENABLE WELD/MC INJECTION - This feature is currently very experimental and so not enabled by default  &ndash;&gt;-->
   <!-- Adds plugin to BeanMetaDataDeployer that installs WeldKernelControllerContexts -->
   <!-- bean name="WeldBeanMetaDataDeployerPlugin" class="org.jboss.weld.integration.deployer.mc.WeldBeanMetaDataDeployerPlugin"/ -->  
 
+  <bean name="org.jboss.switchboard.BeanManagerResourceProvider" class="org.jboss.weld.integration.deployer.jndi.BeanManagerResourceProvider">
+      <property name="moduleInformer"><inject bean="NamingJavaEEModuleInformer"/></property>
+  </bean>
 </deployment>

Modified: branches/switchboard-integration-bean-manager/weld-int/deployer/pom.xml
===================================================================
--- branches/switchboard-integration/weld-int/deployer/pom.xml	2010-11-08 21:54:24 UTC (rev 109204)
+++ branches/switchboard-integration-bean-manager/weld-int/deployer/pom.xml	2010-11-09 23:58:08 UTC (rev 109218)
@@ -307,6 +307,18 @@
         <artifactId>jboss-reloaded-naming-deployers</artifactId>
         <scope>provided</scope>
     </dependency>
+    
+    <dependency>
+    	<groupId>org.jboss.switchboard</groupId>
+    	<artifactId>jboss-switchboard-mc-spi</artifactId>
+    	<scope>provided</scope>
+    </dependency>
+    
+    <dependency>
+    	<groupId>org.jboss.switchboard</groupId>
+    	<artifactId>jboss-switchboard-mc-impl</artifactId>
+    	<scope>provided</scope>
+    </dependency>
 
     <dependency>
       <groupId>org.jboss.test</groupId>

Added: branches/switchboard-integration-bean-manager/weld-int/deployer/src/main/java/org/jboss/weld/integration/deployer/jndi/BeanManagerResourceProvider.java
===================================================================
--- branches/switchboard-integration-bean-manager/weld-int/deployer/src/main/java/org/jboss/weld/integration/deployer/jndi/BeanManagerResourceProvider.java	                        (rev 0)
+++ branches/switchboard-integration-bean-manager/weld-int/deployer/src/main/java/org/jboss/weld/integration/deployer/jndi/BeanManagerResourceProvider.java	2010-11-09 23:58:08 UTC (rev 109218)
@@ -0,0 +1,51 @@
+package org.jboss.weld.integration.deployer.jndi;
+
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+import org.jboss.reloaded.naming.deployers.javaee.JavaEEModuleInformer;
+import org.jboss.switchboard.impl.resource.IndependentResource;
+import org.jboss.switchboard.impl.resource.LinkRefResource;
+import org.jboss.switchboard.javaee.environment.BeanManagerRefType;
+import org.jboss.switchboard.mc.spi.MCBasedResourceProvider;
+import org.jboss.switchboard.spi.Resource;
+import org.jboss.weld.integration.deployer.DeployersUtils;
+
+public class BeanManagerResourceProvider implements MCBasedResourceProvider<BeanManagerRefType>
+{
+
+   JavaEEModuleInformer moduleInformer;
+
+
+   public void setModuleInformer(JavaEEModuleInformer moduleInformer)
+   {
+      this.moduleInformer = moduleInformer;
+   }
+
+   public Resource provide(DeploymentUnit deploymentUnit, BeanManagerRefType type)
+   {
+      // TODO Auto-generated method stub
+      if (deploymentUnit.getAttachment(DeployersUtils.WELD_FILES) != null)
+      {
+         return new LinkRefResource(getGlobalJndiNameForBeanManager(deploymentUnit));
+      }
+      else
+      {
+         return new IndependentResource(null);
+      }
+   }
+
+   private String getGlobalJndiNameForBeanManager(DeploymentUnit deploymentUnit)
+   {
+      // must be changed when merging with trunk
+      String jndiName = "java:/global/" + AbstractJndiBinderDeployer.BEAN_MANAGER_JNDI_SUBCONTEXT + "/";
+      String applicationName = moduleInformer.getApplicationName(deploymentUnit);
+      String moduleName = moduleInformer.getModuleName(deploymentUnit);
+      jndiName += applicationName !=null? (applicationName+"/" + moduleName) : moduleName;
+      return jndiName;
+   }
+
+   public Class<BeanManagerRefType> getEnvironmentEntryType()
+   {
+      return BeanManagerRefType.class;
+   }
+
+}

Modified: branches/switchboard-integration-bean-manager/weld-int/deployer/src/main/java/org/jboss/weld/integration/deployer/jndi/JavaEEComponentJndiBinderDeployer.java
===================================================================
--- branches/switchboard-integration/weld-int/deployer/src/main/java/org/jboss/weld/integration/deployer/jndi/JavaEEComponentJndiBinderDeployer.java	2010-11-08 21:54:24 UTC (rev 109204)
+++ branches/switchboard-integration-bean-manager/weld-int/deployer/src/main/java/org/jboss/weld/integration/deployer/jndi/JavaEEComponentJndiBinderDeployer.java	2010-11-09 23:58:08 UTC (rev 109218)
@@ -53,33 +53,7 @@
    @Override
    public void deploy(DeploymentUnit deploymentUnit, JBossEnterpriseBeanMetaData jBossEnterpriseBeanMetaData) throws DeploymentException
    {
-      BeanMetaData bbBMD = getBootstrapBeanAttachment(deploymentUnit.getTopLevel());
-      if (bbBMD == null)
-      {
-         return;
-      }
 
-      if (informer.getModuleType(deploymentUnit).equals(org.jboss.reloaded.naming.deployers.javaee.JavaEEModuleInformer.ModuleType.EJB))
-      {
-         if (jBossEnterpriseBeanMetaData instanceof JBossSessionBean31MetaData &&
-               ((JBossSessionBean31MetaData)jBossEnterpriseBeanMetaData).isSingleton())
-         {
-            String containerName = jBossEnterpriseBeanMetaData.getContainerName() == null ?
-                  jBossEnterpriseBeanMetaData.getGeneratedContainerName() :
-                  jBossEnterpriseBeanMetaData.getContainerName();
-
-            BeanMetaData containerBeanMetadata = deploymentUnit.getParent().getAttachment(BeanMetaData.class + ":" + containerName, BeanMetaData.class);
-            BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder(containerBeanMetadata);
-            builder.addDependency(getJndiBinderName(deploymentUnit));
-            builder.addDependency(DeployersUtils.getBootstrapBeanName(deploymentUnit));
-         }
-        
-         BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder(getJndiBinderName(deploymentUnit), JavaEEComponentJndiBinder.class.getName());         
-         AbstractInjectionValueMetaData javaComponent = new AbstractInjectionValueMetaData(getComponentBeanName(deploymentUnit));
-         builder.addConstructorParameter(JavaEEComponent.class.getName(), javaComponent);
-         builder.addInstall("bindToJavaComp");
-         deploymentUnit.getParent().addAttachment(deploymentUnit.getName() + "_JavaCompBinder", builder.getBeanMetaData());
-      }
    }
 
    private String getJndiBinderName(DeploymentUnit deploymentUnit)

Modified: branches/switchboard-integration-bean-manager/weld-int/deployer/src/main/java/org/jboss/weld/integration/deployer/jndi/WebJndiBinderDeployer.java
===================================================================
--- branches/switchboard-integration/weld-int/deployer/src/main/java/org/jboss/weld/integration/deployer/jndi/WebJndiBinderDeployer.java	2010-11-08 21:54:24 UTC (rev 109204)
+++ branches/switchboard-integration-bean-manager/weld-int/deployer/src/main/java/org/jboss/weld/integration/deployer/jndi/WebJndiBinderDeployer.java	2010-11-09 23:58:08 UTC (rev 109218)
@@ -50,25 +50,7 @@
    @Override
    public void deploy(DeploymentUnit deploymentUnit, JBossWebMetaData jBossWebMetaData) throws DeploymentException
    {
-      BeanMetaData bbBMD = getBootstrapBeanAttachment(deploymentUnit.getTopLevel());
-      if (bbBMD != null && deploymentUnit.isAttachmentPresent(JBossWebMetaData.class))
-      {
-         AbstractInjectionValueMetaData javaModule = new AbstractInjectionValueMetaData(getModuleBeanName(deploymentUnit));
 
-         BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder(deploymentUnit.getName() + "_WebCompJndiBinder", SimpleCompJndiBinder.class.getName());
-         builder.addConstructorParameter(DeploymentUnit.class.getName(), deploymentUnit);
-         builder.addConstructorParameter(JavaEEModule.class.getName(), javaModule);
-         builder.addInstall("bindToJavaComp");
-         // no uninstall method for SimpleCompJndiBinder (context will be destroyed by Tomcat)
-         //builder.addUninstall("unbind");
-         deploymentUnit.getTopLevel().addAttachment(deploymentUnit.getName() + "_WebCompJndiBinder", builder.getBeanMetaData());
-
-         BeanMetaDataBuilder moduleBinderBuilder = BeanMetaDataBuilder.createBuilder(deploymentUnit.getName() + "_JavaModuleJndiBinder", JavaEEModuleJndiBinder.class.getName());
-         moduleBinderBuilder.addConstructorParameter(JavaEEModule.class.getName(), javaModule);
-         moduleBinderBuilder.addInstall("bindToJavaComp");
-         moduleBinderBuilder.addUninstall("unbind");
-         deploymentUnit.getTopLevel().addAttachment(deploymentUnit.getName() + "_JavaModuleJndiBinder", moduleBinderBuilder.getBeanMetaData());
-      }
    }
 
    private BeanMetaData getBootstrapBeanAttachment(DeploymentUnit deploymentUnit)



More information about the jboss-cvs-commits mailing list