[jboss-cvs] JBossAS SVN: r82650 - in projects/webbeans-ri-int/trunk/jbossas/src/main: java/org/jboss/webbeans/integration/jbossas/bootstrap and 2 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Jan 6 18:47:19 EST 2009


Author: petemuir
Date: 2009-01-06 18:47:18 -0500 (Tue, 06 Jan 2009)
New Revision: 82650

Added:
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/bootstrap/
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/bootstrap/WebBeanDiscoveryImpl.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/EjbDiscoveryEnvironment.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossBussinessInterfaceDescriptorAdaptor.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossEJBDescriptorAdaptor.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossMessageDrivenBeanDescriptorAdaptor.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossSessionBeanDescriptorAdaptor.java
Removed:
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/WebBeanDiscoveryImpl.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/EjbDiscoveryEnvironment.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossBussinessInterfaceDescriptorAdaptor.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossEJBDescriptorAdaptor.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossMessageDrivenBeanDescriptorAdaptor.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossSessionBeanDescriptorAdaptor.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/
Modified:
   projects/webbeans-ri-int/trunk/jbossas/src/main/resources/META-INF/web-beans-ri.properties
Log:
refactor packages, start implmenting EjbResolver

Deleted: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/WebBeanDiscoveryImpl.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/WebBeanDiscoveryImpl.java	2009-01-06 23:33:12 UTC (rev 82649)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/WebBeanDiscoveryImpl.java	2009-01-06 23:47:18 UTC (rev 82650)
@@ -1,42 +0,0 @@
-package org.jboss.webbeans.integration.jbossas;
-
-import java.net.URL;
-
-import javax.servlet.ServletContext;
-
-import org.jboss.webbeans.bootstrap.spi.EjbDescriptor;
-import org.jboss.webbeans.bootstrap.spi.WebBeanDiscovery;
-import org.jboss.webbeans.integration.jbossas.ejb3.EjbDiscoveryEnvironment;
-import org.jboss.webbeans.integration.jbossas.vdf.WebBeanDiscoveryEnvVDFConnector;
-import org.jboss.webbeans.integration.microcontainer.deployer.env.WebBeanDiscoveryEnvironment;
-
-public class WebBeanDiscoveryImpl implements WebBeanDiscovery
-{   
-   private WebBeanDiscoveryEnvironment environment;
-   private EjbDiscoveryEnvironment ejbEnvironment;
-   
-   public WebBeanDiscoveryImpl(ServletContext servletContext)
-   {
-      WebBeanDiscoveryEnvVDFConnector connector = new WebBeanDiscoveryEnvVDFConnector(servletContext);
-      if (connector.isValid() == false)
-         throw new IllegalArgumentException("Cannot find web-beans discovery in deployment: " + servletContext);
-
-      environment = connector.getUtility();
-      ejbEnvironment = new EjbDiscoveryEnvironment(servletContext);
-   }
-   
-   public Iterable<EjbDescriptor<?>> discoverEjbs()
-   {
-      return ejbEnvironment.getEjbs();
-   }
-   
-   public Iterable<Class<?>> discoverWebBeanClasses()
-   {
-      return environment.getWebBeanClasses();
-   }
-   
-   public Iterable<URL> discoverWebBeansXml()
-   {
-      return environment.getWebBeansXml();
-   }
-}

Copied: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/bootstrap/WebBeanDiscoveryImpl.java (from rev 82633, projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/WebBeanDiscoveryImpl.java)
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/bootstrap/WebBeanDiscoveryImpl.java	                        (rev 0)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/bootstrap/WebBeanDiscoveryImpl.java	2009-01-06 23:47:18 UTC (rev 82650)
@@ -0,0 +1,42 @@
+package org.jboss.webbeans.integration.jbossas.bootstrap;
+
+import java.net.URL;
+
+import javax.servlet.ServletContext;
+
+import org.jboss.webbeans.bootstrap.spi.EjbDescriptor;
+import org.jboss.webbeans.bootstrap.spi.WebBeanDiscovery;
+import org.jboss.webbeans.integration.jbossas.ejb.EjbDiscoveryEnvironment;
+import org.jboss.webbeans.integration.jbossas.vdf.WebBeanDiscoveryEnvVDFConnector;
+import org.jboss.webbeans.integration.microcontainer.deployer.env.WebBeanDiscoveryEnvironment;
+
+public class WebBeanDiscoveryImpl implements WebBeanDiscovery
+{   
+   private WebBeanDiscoveryEnvironment environment;
+   private EjbDiscoveryEnvironment ejbEnvironment;
+   
+   public WebBeanDiscoveryImpl(ServletContext servletContext)
+   {
+      WebBeanDiscoveryEnvVDFConnector connector = new WebBeanDiscoveryEnvVDFConnector(servletContext);
+      if (connector.isValid() == false)
+         throw new IllegalArgumentException("Cannot find web-beans discovery in deployment: " + servletContext);
+
+      environment = connector.getUtility();
+      ejbEnvironment = new EjbDiscoveryEnvironment(servletContext);
+   }
+   
+   public Iterable<EjbDescriptor<?>> discoverEjbs()
+   {
+      return ejbEnvironment.getEjbs();
+   }
+   
+   public Iterable<Class<?>> discoverWebBeanClasses()
+   {
+      return environment.getWebBeanClasses();
+   }
+   
+   public Iterable<URL> discoverWebBeansXml()
+   {
+      return environment.getWebBeansXml();
+   }
+}


Property changes on: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/bootstrap/WebBeanDiscoveryImpl.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Copied: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb (from rev 82633, projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3)

Deleted: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/EjbDiscoveryEnvironment.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/EjbDiscoveryEnvironment.java	2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/EjbDiscoveryEnvironment.java	2009-01-06 23:47:18 UTC (rev 82650)
@@ -1,179 +0,0 @@
-package org.jboss.webbeans.integration.jbossas.ejb3;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.servlet.ServletContext;
-
-import org.jboss.dependency.spi.ControllerContext;
-import org.jboss.dependency.spi.ControllerState;
-import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.ejb3.common.deployers.spi.AttachmentNames;
-import org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolver;
-import org.jboss.kernel.spi.dependency.KernelController;
-import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeanMetaData;
-import org.jboss.metadata.ejb.jboss.JBossMessageDrivenBeanMetaData;
-import org.jboss.metadata.ejb.jboss.JBossMetaData;
-import org.jboss.metadata.ejb.jboss.JBossSessionBeanMetaData;
-import org.jboss.webbeans.bootstrap.spi.EjbDescriptor;
-import org.jboss.webbeans.integration.jbossas.vdf.KernelControllerVDFConnector;
-import org.jboss.webbeans.integration.jbossas.vdf.VFSDeploymentUnitVDFConnector;
-
-/**
- * EjbDiscoveryEnvironment.
- *
- * @author <a href="mailto:alr at jboss.com">ALR</a>
- * @author Pete Muir
- * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
- */
-public class EjbDiscoveryEnvironment
-{
-   
-   private class NoSuchInstantiatedBeanException extends IllegalArgumentException 
-   {
-
-      public NoSuchInstantiatedBeanException()
-      {
-         super();
-      }
-
-      public NoSuchInstantiatedBeanException(String arg0, Throwable arg1)
-      {
-         super(arg0, arg1);
-      }
-
-      public NoSuchInstantiatedBeanException(String arg0)
-      {
-         super(arg0);
-      }
-
-      public NoSuchInstantiatedBeanException(Throwable arg0)
-      {
-         super(arg0);
-      }
-      
-   }
-   
-   private static final String MC_BEAN_NAME_EJB_REFERENCE_RESOLVER = "org.jboss.ejb3.EjbReferenceResolver";
-   
-   private KernelController controller;
-   private EjbReferenceResolver resolver;
-   
-   private List<EjbDescriptor<?>> ejbs;
-
-   public EjbDiscoveryEnvironment(ServletContext servletContext)
-   {
-      KernelControllerVDFConnector controllerVDFConnector = new KernelControllerVDFConnector(servletContext);
-      if (controllerVDFConnector.isValid() == false)
-         throw new IllegalArgumentException("No such KernelController utility: " + servletContext);
-
-      controller = controllerVDFConnector.getUtility();
-      resolver = lookupEjbReferenceResolver();
-
-      VFSDeploymentUnitVDFConnector duConnector = new VFSDeploymentUnitVDFConnector(servletContext);
-      if (duConnector.isValid() == false)
-         throw new IllegalArgumentException("No such DeploymentUnit utility: " + servletContext);
-
-      ejbs = new ArrayList<EjbDescriptor<?>>();
-
-      DeploymentUnit du = duConnector.getUtility();
-      discoverEjbs(du.getTopLevel());
-   }
-
-   /**
-    * Discover ejbs.
-    *
-    * @param du the deployment unit
-    */
-   protected void discoverEjbs(DeploymentUnit du)
-   {
-      // Ensure it's an EJB3 DU (by looking for the processed metadata)
-      if (du.getAttachment(AttachmentNames.PROCESSED_METADATA, JBossMetaData.class) != null && du.getAttachment(JBossMetaData.class).isEJB3x())
-      {
-         for (JBossEnterpriseBeanMetaData enterpriseBeanMetaData : du.getAttachment(JBossMetaData.class).getEnterpriseBeans())
-         {
-            if (enterpriseBeanMetaData.isSession())
-            {
-               JBossSessionBeanMetaData sessionBeanMetaData = (JBossSessionBeanMetaData) enterpriseBeanMetaData;
-               EjbDescriptor<?> ejbDescriptor = new JBossSessionBeanDescriptorAdaptor<Object>(sessionBeanMetaData, du, resolver);
-               ejbs.add(ejbDescriptor);
-            }
-            else if (enterpriseBeanMetaData.isMessageDriven())
-            {
-               JBossMessageDrivenBeanMetaData messageDrivenBeanMetaData = (JBossMessageDrivenBeanMetaData) enterpriseBeanMetaData;
-               EjbDescriptor<?> ejbDescriptor = new JBossMessageDrivenBeanDescriptorAdaptor<Object>(messageDrivenBeanMetaData, du, resolver);
-               ejbs.add(ejbDescriptor);
-            }
-         }
-      }
-
-      List<DeploymentUnit> children = du.getChildren();
-      if (children != null && children.isEmpty() == false)
-      {
-         for (DeploymentUnit childDu : children)
-         {
-            discoverEjbs(childDu);
-         }
-      }
-   }
-   
-   /**
-    * Get the EjbReferenceResolver from the MC controller
-    * @return the EjbReferenceResolver
-    */
-   protected EjbReferenceResolver lookupEjbReferenceResolver()
-   {
-      try
-      {
-         return (EjbReferenceResolver) lookup(MC_BEAN_NAME_EJB_REFERENCE_RESOLVER, false);
-      }
-      catch (NoSuchInstantiatedBeanException e) 
-      {
-         throw new IllegalStateException("EjbReferenceResolver cannot be found, check that you have correctly updated JBoss EJB3");
-      }
-   }
-
-   /**
-    * Get the bean from the MC controller.
-    *
-    * @param name the bean name
-    * @param shouldExist must the bean be present
-    * @return the bean
-    */
-   protected Object lookup(final Object name, boolean shouldExist)
-   {
-      // Get Controller Context
-      ControllerContext context = controller.getContext(name, ControllerState.INSTANTIATED);
-      if (context == null)
-      {
-         if (shouldExist)
-         {
-            // less restrictive state look
-            ControllerContext cc = controller.getContext(name, null);
-            throw new NoSuchInstantiatedBeanException("No such instantiated bean: " + name + " [" + cc + "]");
-         }
-         else
-         {
-            return null;
-         }
-      }  
-      
-      // If there's an error with the context, throw it
-      Throwable error = context.getError();
-      if (error != null)
-         throw new RuntimeException("Could not lookup object at name \"" + name + "\" due to an error with the underlying MC context.", error);
-
-      // Return
-      return context.getTarget();
-   }
-
-   /**
-    * Get ejbs.
-    *
-    * @return the ejbs
-    */
-   public List<EjbDescriptor<?>> getEjbs()
-   {
-      return ejbs;
-   }
-}

Added: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/EjbDiscoveryEnvironment.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/EjbDiscoveryEnvironment.java	                        (rev 0)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/EjbDiscoveryEnvironment.java	2009-01-06 23:47:18 UTC (rev 82650)
@@ -0,0 +1,105 @@
+package org.jboss.webbeans.integration.jbossas.ejb;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.servlet.ServletContext;
+
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+import org.jboss.ejb3.common.deployers.spi.AttachmentNames;
+import org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolver;
+import org.jboss.kernel.spi.dependency.KernelController;
+import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeanMetaData;
+import org.jboss.metadata.ejb.jboss.JBossMessageDrivenBeanMetaData;
+import org.jboss.metadata.ejb.jboss.JBossMetaData;
+import org.jboss.metadata.ejb.jboss.JBossSessionBeanMetaData;
+import org.jboss.webbeans.bootstrap.spi.EjbDescriptor;
+import org.jboss.webbeans.integration.jbossas.util.JBossEjb;
+import org.jboss.webbeans.integration.jbossas.vdf.KernelControllerVDFConnector;
+import org.jboss.webbeans.integration.jbossas.vdf.VFSDeploymentUnitVDFConnector;
+
+/**
+ * EjbDiscoveryEnvironment.
+ *
+ * @author <a href="mailto:alr at jboss.com">ALR</a>
+ * @author Pete Muir
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class EjbDiscoveryEnvironment
+{
+
+   private EjbReferenceResolver resolver;
+   
+   private List<EjbDescriptor<?>> ejbs;
+
+   public EjbDiscoveryEnvironment(ServletContext servletContext)
+   {
+      KernelControllerVDFConnector controllerVDFConnector = new KernelControllerVDFConnector(servletContext);
+      if (controllerVDFConnector.isValid() == false)
+      {
+         throw new IllegalArgumentException("No such KernelController utility: " + servletContext);
+      }
+
+      KernelController controller = controllerVDFConnector.getUtility();
+      
+      resolver = JBossEjb.lookupEjbReferenceResolver(controller);
+
+      VFSDeploymentUnitVDFConnector duConnector = new VFSDeploymentUnitVDFConnector(servletContext);
+      if (duConnector.isValid() == false)
+      {
+         throw new IllegalArgumentException("No such DeploymentUnit utility: " + servletContext);
+      }
+
+      ejbs = new ArrayList<EjbDescriptor<?>>();
+
+      DeploymentUnit du = duConnector.getUtility();
+      discoverEjbs(du.getTopLevel());
+   }
+
+   /**
+    * Discover ejbs.
+    *
+    * @param du the deployment unit
+    */
+   protected void discoverEjbs(DeploymentUnit du)
+   {
+      // Ensure it's an EJB3 DU (by looking for the processed metadata)
+      if (du.getAttachment(AttachmentNames.PROCESSED_METADATA, JBossMetaData.class) != null && du.getAttachment(JBossMetaData.class).isEJB3x())
+      {
+         for (JBossEnterpriseBeanMetaData enterpriseBeanMetaData : du.getAttachment(JBossMetaData.class).getEnterpriseBeans())
+         {
+            if (enterpriseBeanMetaData.isSession())
+            {
+               JBossSessionBeanMetaData sessionBeanMetaData = (JBossSessionBeanMetaData) enterpriseBeanMetaData;
+               EjbDescriptor<?> ejbDescriptor = new JBossSessionBeanDescriptorAdaptor<Object>(sessionBeanMetaData, du, resolver);
+               ejbs.add(ejbDescriptor);
+            }
+            else if (enterpriseBeanMetaData.isMessageDriven())
+            {
+               JBossMessageDrivenBeanMetaData messageDrivenBeanMetaData = (JBossMessageDrivenBeanMetaData) enterpriseBeanMetaData;
+               EjbDescriptor<?> ejbDescriptor = new JBossMessageDrivenBeanDescriptorAdaptor<Object>(messageDrivenBeanMetaData, du, resolver);
+               ejbs.add(ejbDescriptor);
+            }
+         }
+      }
+
+      List<DeploymentUnit> children = du.getChildren();
+      if (children != null && children.isEmpty() == false)
+      {
+         for (DeploymentUnit childDu : children)
+         {
+            discoverEjbs(childDu);
+         }
+      }
+   }  
+
+   /**
+    * Get ejbs.
+    *
+    * @return the ejbs
+    */
+   public List<EjbDescriptor<?>> getEjbs()
+   {
+      return ejbs;
+   }
+}

Deleted: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossBussinessInterfaceDescriptorAdaptor.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossBussinessInterfaceDescriptorAdaptor.java	2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossBussinessInterfaceDescriptorAdaptor.java	2009-01-06 23:47:18 UTC (rev 82650)
@@ -1,46 +0,0 @@
-package org.jboss.webbeans.integration.jbossas.ejb3;
-
-import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.ejb3.common.resolvers.spi.EjbReference;
-import org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolver;
-import org.jboss.webbeans.bootstrap.spi.BusinessInterfaceDescriptor;
-import org.jboss.webbeans.integration.jbossas.util.Reflections;
-
-public class JBossBussinessInterfaceDescriptorAdaptor<T> implements BusinessInterfaceDescriptor<T>
-{
-   private Class<T> type;
-   private String jndiName;
-
-   public JBossBussinessInterfaceDescriptorAdaptor(String interfaceName, String ejbName, DeploymentUnit deploymentUnit, EjbReferenceResolver resolver)
-   {
-      try
-      {
-         type = (Class<T>) Reflections.classForName(interfaceName, deploymentUnit.getClassLoader());
-      }
-      catch (ClassCastException e) 
-      {
-         throw new IllegalStateException("Error loading EJB Session bean interface", e);
-      }
-      catch (ClassNotFoundException e)
-      {
-         throw new IllegalStateException("Cannot load EJB Session bean interface", e);
-      }
-      jndiName = resolver.resolveEjb(deploymentUnit, new EjbReference(ejbName, interfaceName, null));
-   }
-
-   public Class<T> getInterface()
-   {
-      return type;
-   }
-
-   public String getJndiName()
-   {
-      return jndiName;
-   }
-   
-   @Override
-   public String toString()
-   {
-      return getInterface() + " jndi name: " + getJndiName();
-   }   
-}

Added: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossBussinessInterfaceDescriptorAdaptor.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossBussinessInterfaceDescriptorAdaptor.java	                        (rev 0)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossBussinessInterfaceDescriptorAdaptor.java	2009-01-06 23:47:18 UTC (rev 82650)
@@ -0,0 +1,46 @@
+package org.jboss.webbeans.integration.jbossas.ejb;
+
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+import org.jboss.ejb3.common.resolvers.spi.EjbReference;
+import org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolver;
+import org.jboss.webbeans.bootstrap.spi.BusinessInterfaceDescriptor;
+import org.jboss.webbeans.integration.jbossas.util.Reflections;
+
+public class JBossBussinessInterfaceDescriptorAdaptor<T> implements BusinessInterfaceDescriptor<T>
+{
+   private Class<T> type;
+   private String jndiName;
+
+   public JBossBussinessInterfaceDescriptorAdaptor(String interfaceName, String ejbName, DeploymentUnit deploymentUnit, EjbReferenceResolver resolver)
+   {
+      try
+      {
+         type = (Class<T>) Reflections.classForName(interfaceName, deploymentUnit.getClassLoader());
+      }
+      catch (ClassCastException e) 
+      {
+         throw new IllegalStateException("Error loading EJB Session bean interface", e);
+      }
+      catch (ClassNotFoundException e)
+      {
+         throw new IllegalStateException("Cannot load EJB Session bean interface", e);
+      }
+      jndiName = resolver.resolveEjb(deploymentUnit, new EjbReference(ejbName, interfaceName, null));
+   }
+
+   public Class<T> getInterface()
+   {
+      return type;
+   }
+
+   public String getJndiName()
+   {
+      return jndiName;
+   }
+   
+   @Override
+   public String toString()
+   {
+      return getInterface() + " jndi name: " + getJndiName();
+   }   
+}

Deleted: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossEJBDescriptorAdaptor.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossEJBDescriptorAdaptor.java	2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossEJBDescriptorAdaptor.java	2009-01-06 23:47:18 UTC (rev 82650)
@@ -1,86 +0,0 @@
-package org.jboss.webbeans.integration.jbossas.ejb3;
-
-import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolver;
-import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeanMetaData;
-import org.jboss.webbeans.bootstrap.spi.EjbDescriptor;
-import org.jboss.webbeans.integration.jbossas.util.Reflections;
-
-public abstract class JBossEJBDescriptorAdaptor<T> implements EjbDescriptor<T>
-{
-   private final Class<T> type;
-   private final String ejbName;
-
-   public JBossEJBDescriptorAdaptor(JBossEnterpriseBeanMetaData enterpriseBeanMetaData, DeploymentUnit deploymentUnit, EjbReferenceResolver resolver)
-   {
-      try
-      {
-         this.type = (Class<T>) Reflections.classForName(enterpriseBeanMetaData.getEjbClass(), deploymentUnit.getClassLoader());
-      }
-      catch (ClassCastException e) 
-      {
-         throw new IllegalStateException("Error loading EJB Session bean class", e);
-      }
-      catch (ClassNotFoundException e)
-      {
-         throw new IllegalStateException("Cannot load EJB Session bean class", e);
-      }
-      
-      this.ejbName = enterpriseBeanMetaData.getEjbName();
-   }
-
-   public Class<T> getType()
-   {
-      return type;
-   }
-
-   public String getEjbName()
-   {
-      return ejbName;
-   }
-   
-   @Override
-   public String toString()
-   {
-      StringBuilder builder = new StringBuilder();
-      builder.append(getEjbName());
-      if (isStateful())
-      {
-         builder.append(" (SFSB)");
-      }
-      if (isStateless())
-      {
-         builder.append(" (SLSB)");
-      }
-      if (isSingleton())
-      {
-         builder.append(" (Singleton)");
-      }
-      if (isMessageDriven())
-      {
-         builder.append(" (MDB)");
-      }
-      builder.append("; BeanClass: " + getType() + "; Local Business Interfaces: " + getLocalBusinessInterfaces());
-      return builder.toString(); 
-   }
-   
-   @Override
-   public boolean equals(Object other)
-   {
-      if (other instanceof EjbDescriptor)
-      {
-         EjbDescriptor<T> that = (EjbDescriptor<T>) other;
-         return this.getEjbName().equals(that.getEjbName());
-      }
-      else
-      {
-         return false;
-      }
-   }
-   
-   @Override
-   public int hashCode()
-   {
-      return getEjbName().hashCode();
-   }   
-}
\ No newline at end of file

Added: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossEJBDescriptorAdaptor.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossEJBDescriptorAdaptor.java	                        (rev 0)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossEJBDescriptorAdaptor.java	2009-01-06 23:47:18 UTC (rev 82650)
@@ -0,0 +1,86 @@
+package org.jboss.webbeans.integration.jbossas.ejb;
+
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+import org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolver;
+import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeanMetaData;
+import org.jboss.webbeans.bootstrap.spi.EjbDescriptor;
+import org.jboss.webbeans.integration.jbossas.util.Reflections;
+
+public abstract class JBossEJBDescriptorAdaptor<T> implements EjbDescriptor<T>
+{
+   private final Class<T> type;
+   private final String ejbName;
+
+   public JBossEJBDescriptorAdaptor(JBossEnterpriseBeanMetaData enterpriseBeanMetaData, DeploymentUnit deploymentUnit, EjbReferenceResolver resolver)
+   {
+      try
+      {
+         this.type = (Class<T>) Reflections.classForName(enterpriseBeanMetaData.getEjbClass(), deploymentUnit.getClassLoader());
+      }
+      catch (ClassCastException e) 
+      {
+         throw new IllegalStateException("Error loading EJB Session bean class", e);
+      }
+      catch (ClassNotFoundException e)
+      {
+         throw new IllegalStateException("Cannot load EJB Session bean class", e);
+      }
+      
+      this.ejbName = enterpriseBeanMetaData.getEjbName();
+   }
+
+   public Class<T> getType()
+   {
+      return type;
+   }
+
+   public String getEjbName()
+   {
+      return ejbName;
+   }
+   
+   @Override
+   public String toString()
+   {
+      StringBuilder builder = new StringBuilder();
+      builder.append(getEjbName());
+      if (isStateful())
+      {
+         builder.append(" (SFSB)");
+      }
+      if (isStateless())
+      {
+         builder.append(" (SLSB)");
+      }
+      if (isSingleton())
+      {
+         builder.append(" (Singleton)");
+      }
+      if (isMessageDriven())
+      {
+         builder.append(" (MDB)");
+      }
+      builder.append("; BeanClass: " + getType() + "; Local Business Interfaces: " + getLocalBusinessInterfaces());
+      return builder.toString(); 
+   }
+   
+   @Override
+   public boolean equals(Object other)
+   {
+      if (other instanceof EjbDescriptor)
+      {
+         EjbDescriptor<T> that = (EjbDescriptor<T>) other;
+         return this.getEjbName().equals(that.getEjbName());
+      }
+      else
+      {
+         return false;
+      }
+   }
+   
+   @Override
+   public int hashCode()
+   {
+      return getEjbName().hashCode();
+   }   
+}
\ No newline at end of file

Deleted: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossMessageDrivenBeanDescriptorAdaptor.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossMessageDrivenBeanDescriptorAdaptor.java	2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossMessageDrivenBeanDescriptorAdaptor.java	2009-01-06 23:47:18 UTC (rev 82650)
@@ -1,60 +0,0 @@
-package org.jboss.webbeans.integration.jbossas.ejb3;
-
-import java.lang.reflect.Method;
-
-import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolver;
-import org.jboss.metadata.ejb.jboss.JBossMessageDrivenBeanMetaData;
-import org.jboss.webbeans.bootstrap.spi.BusinessInterfaceDescriptor;
-
-public class JBossMessageDrivenBeanDescriptorAdaptor<T> extends JBossEJBDescriptorAdaptor<T>
-{
-   public JBossMessageDrivenBeanDescriptorAdaptor(JBossMessageDrivenBeanMetaData messageDrivenBeanMetaData, DeploymentUnit deploymentUnit, EjbReferenceResolver resolver)
-   {
-      super(messageDrivenBeanMetaData, deploymentUnit, resolver);
-   }
-
-   public Iterable<BusinessInterfaceDescriptor<?>> getLocalBusinessInterfaces()
-   {
-      // Not relevant for MDBs
-      return null;
-   }
-   
-   public Iterable<BusinessInterfaceDescriptor<?>> getRemoteBusinessInterfaces()
-   {
-      // Not relevant for MDBs
-      return null;
-   }
-   
-   public Iterable<Method> getRemoveMethods()
-   {
-      // Not relevant for MDBs
-      return null;
-   }
-   
-   public boolean isSingleton()
-   {
-      return false;
-   }
-   
-   public boolean isStateful()
-   {
-      return false;
-   }
-   
-   public boolean isStateless()
-   {
-      return false;
-   }
-   
-   public boolean isMessageDriven()
-   {
-      return true;
-   }
-   
-   public String getLocalJndiName()
-   {
-      // Not relevant
-      return null;
-   }   
-}

Added: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossMessageDrivenBeanDescriptorAdaptor.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossMessageDrivenBeanDescriptorAdaptor.java	                        (rev 0)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossMessageDrivenBeanDescriptorAdaptor.java	2009-01-06 23:47:18 UTC (rev 82650)
@@ -0,0 +1,60 @@
+package org.jboss.webbeans.integration.jbossas.ejb;
+
+import java.lang.reflect.Method;
+
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+import org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolver;
+import org.jboss.metadata.ejb.jboss.JBossMessageDrivenBeanMetaData;
+import org.jboss.webbeans.bootstrap.spi.BusinessInterfaceDescriptor;
+
+public class JBossMessageDrivenBeanDescriptorAdaptor<T> extends JBossEJBDescriptorAdaptor<T>
+{
+   public JBossMessageDrivenBeanDescriptorAdaptor(JBossMessageDrivenBeanMetaData messageDrivenBeanMetaData, DeploymentUnit deploymentUnit, EjbReferenceResolver resolver)
+   {
+      super(messageDrivenBeanMetaData, deploymentUnit, resolver);
+   }
+
+   public Iterable<BusinessInterfaceDescriptor<?>> getLocalBusinessInterfaces()
+   {
+      // Not relevant for MDBs
+      return null;
+   }
+   
+   public Iterable<BusinessInterfaceDescriptor<?>> getRemoteBusinessInterfaces()
+   {
+      // Not relevant for MDBs
+      return null;
+   }
+   
+   public Iterable<Method> getRemoveMethods()
+   {
+      // Not relevant for MDBs
+      return null;
+   }
+   
+   public boolean isSingleton()
+   {
+      return false;
+   }
+   
+   public boolean isStateful()
+   {
+      return false;
+   }
+   
+   public boolean isStateless()
+   {
+      return false;
+   }
+   
+   public boolean isMessageDriven()
+   {
+      return true;
+   }
+   
+   public String getLocalJndiName()
+   {
+      // Not relevant
+      return null;
+   }   
+}

Deleted: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossSessionBeanDescriptorAdaptor.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossSessionBeanDescriptorAdaptor.java	2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossSessionBeanDescriptorAdaptor.java	2009-01-06 23:47:18 UTC (rev 82650)
@@ -1,114 +0,0 @@
-package org.jboss.webbeans.integration.jbossas.ejb3;
-
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolver;
-import org.jboss.metadata.ejb.jboss.JBossSessionBeanMetaData;
-import org.jboss.metadata.ejb.spec.RemoveMethodMetaData;
-import org.jboss.webbeans.bootstrap.spi.BusinessInterfaceDescriptor;
-import org.jboss.webbeans.bootstrap.spi.EjbDescriptor;
-
-public class JBossSessionBeanDescriptorAdaptor<T> extends JBossEJBDescriptorAdaptor<T> implements EjbDescriptor<T>
-{
-   private final List<BusinessInterfaceDescriptor<?>> localBusinessInterfaces;
-   private final List<BusinessInterfaceDescriptor<?>> remoteBusinessInterfaces;
-   private final List<Method> removeMethods;
-   private final boolean stateful;
-   private final boolean stateless;
-   private final boolean singleton;
-   private final String localJndiName;
-   
-   public JBossSessionBeanDescriptorAdaptor(JBossSessionBeanMetaData sessionBeanMetaData, DeploymentUnit deploymentUnit, EjbReferenceResolver resolver)
-   {
-      super(sessionBeanMetaData, deploymentUnit, resolver);
-      this.localBusinessInterfaces = new ArrayList<BusinessInterfaceDescriptor<?>>();
-      if (sessionBeanMetaData.getBusinessLocals() != null)
-      {
-         for (String interfaceName : sessionBeanMetaData.getBusinessLocals())
-         {
-            this.localBusinessInterfaces.add(new JBossBussinessInterfaceDescriptorAdaptor<Object>(interfaceName, getEjbName(), deploymentUnit, resolver));
-         }
-      }
-      
-      remoteBusinessInterfaces = new ArrayList<BusinessInterfaceDescriptor<?>>();
-      if (sessionBeanMetaData.getBusinessRemotes() != null)
-      {
-         for (String interfaceName : sessionBeanMetaData.getBusinessRemotes())
-         {
-            this.remoteBusinessInterfaces.add(new JBossBussinessInterfaceDescriptorAdaptor<Object>(interfaceName, getEjbName(), deploymentUnit, resolver));
-         }
-      }
-      
-      this.removeMethods = new ArrayList<Method>();
-
-      if (sessionBeanMetaData.getRemoveMethods() != null)
-      {
-         for (RemoveMethodMetaData removeMethodMetaData : sessionBeanMetaData.getRemoveMethods())
-         {
-            Method removeMethod;
-            try
-            {
-               removeMethod = getType().getMethod(removeMethodMetaData.getBeanMethod().getMethodName(), removeMethodMetaData.getBeanMethod().getMethodParams().toArray(new Class<?>[0]));
-               removeMethods.add(removeMethod);
-            }
-            catch (SecurityException e)
-            {
-               throw new RuntimeException("Unable to access EJB remove method", e);
-            }
-            catch (NoSuchMethodException e)
-            {
-               throw new RuntimeException("Unable to access EJB remove method", e);
-            }
-
-         }
-      }
-      
-      this.stateful = sessionBeanMetaData.isStateful();
-      this.stateless = sessionBeanMetaData.isStateless();
-      this.singleton = false;
-      this.localJndiName = sessionBeanMetaData.getLocalJndiName();
-   }
-   
-   public Iterable<BusinessInterfaceDescriptor<?>> getLocalBusinessInterfaces()
-   {
-      return localBusinessInterfaces;
-   }
-
-   public Iterable<BusinessInterfaceDescriptor<?>> getRemoteBusinessInterfaces()
-   {
-      return remoteBusinessInterfaces;
-   }
-
-   public Iterable<Method> getRemoveMethods()
-   {
-      return removeMethods;
-   }
-
-   public boolean isSingleton()
-   {
-      return singleton;
-   }
-
-   public boolean isStateful()
-   {
-      return stateful;
-   }
-
-   public boolean isStateless()
-   {
-      return stateless;
-   }
-   
-   public boolean isMessageDriven()
-   {
-      return false;
-   }
-   
-   public String getLocalJndiName()
-   {
-      return localJndiName;
-   }   
-}

Added: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossSessionBeanDescriptorAdaptor.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossSessionBeanDescriptorAdaptor.java	                        (rev 0)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb/JBossSessionBeanDescriptorAdaptor.java	2009-01-06 23:47:18 UTC (rev 82650)
@@ -0,0 +1,114 @@
+package org.jboss.webbeans.integration.jbossas.ejb;
+
+import java.lang.reflect.Method;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+import org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolver;
+import org.jboss.metadata.ejb.jboss.JBossSessionBeanMetaData;
+import org.jboss.metadata.ejb.spec.RemoveMethodMetaData;
+import org.jboss.webbeans.bootstrap.spi.BusinessInterfaceDescriptor;
+import org.jboss.webbeans.bootstrap.spi.EjbDescriptor;
+
+public class JBossSessionBeanDescriptorAdaptor<T> extends JBossEJBDescriptorAdaptor<T> implements EjbDescriptor<T>
+{
+   private final List<BusinessInterfaceDescriptor<?>> localBusinessInterfaces;
+   private final List<BusinessInterfaceDescriptor<?>> remoteBusinessInterfaces;
+   private final List<Method> removeMethods;
+   private final boolean stateful;
+   private final boolean stateless;
+   private final boolean singleton;
+   private final String localJndiName;
+   
+   public JBossSessionBeanDescriptorAdaptor(JBossSessionBeanMetaData sessionBeanMetaData, DeploymentUnit deploymentUnit, EjbReferenceResolver resolver)
+   {
+      super(sessionBeanMetaData, deploymentUnit, resolver);
+      this.localBusinessInterfaces = new ArrayList<BusinessInterfaceDescriptor<?>>();
+      if (sessionBeanMetaData.getBusinessLocals() != null)
+      {
+         for (String interfaceName : sessionBeanMetaData.getBusinessLocals())
+         {
+            this.localBusinessInterfaces.add(new JBossBussinessInterfaceDescriptorAdaptor<Object>(interfaceName, getEjbName(), deploymentUnit, resolver));
+         }
+      }
+      
+      remoteBusinessInterfaces = new ArrayList<BusinessInterfaceDescriptor<?>>();
+      if (sessionBeanMetaData.getBusinessRemotes() != null)
+      {
+         for (String interfaceName : sessionBeanMetaData.getBusinessRemotes())
+         {
+            this.remoteBusinessInterfaces.add(new JBossBussinessInterfaceDescriptorAdaptor<Object>(interfaceName, getEjbName(), deploymentUnit, resolver));
+         }
+      }
+      
+      this.removeMethods = new ArrayList<Method>();
+
+      if (sessionBeanMetaData.getRemoveMethods() != null)
+      {
+         for (RemoveMethodMetaData removeMethodMetaData : sessionBeanMetaData.getRemoveMethods())
+         {
+            Method removeMethod;
+            try
+            {
+               removeMethod = getType().getMethod(removeMethodMetaData.getBeanMethod().getMethodName(), removeMethodMetaData.getBeanMethod().getMethodParams().toArray(new Class<?>[0]));
+               removeMethods.add(removeMethod);
+            }
+            catch (SecurityException e)
+            {
+               throw new RuntimeException("Unable to access EJB remove method", e);
+            }
+            catch (NoSuchMethodException e)
+            {
+               throw new RuntimeException("Unable to access EJB remove method", e);
+            }
+
+         }
+      }
+      
+      this.stateful = sessionBeanMetaData.isStateful();
+      this.stateless = sessionBeanMetaData.isStateless();
+      this.singleton = false;
+      this.localJndiName = sessionBeanMetaData.getLocalJndiName();
+   }
+   
+   public Iterable<BusinessInterfaceDescriptor<?>> getLocalBusinessInterfaces()
+   {
+      return localBusinessInterfaces;
+   }
+
+   public Iterable<BusinessInterfaceDescriptor<?>> getRemoteBusinessInterfaces()
+   {
+      return remoteBusinessInterfaces;
+   }
+
+   public Iterable<Method> getRemoveMethods()
+   {
+      return removeMethods;
+   }
+
+   public boolean isSingleton()
+   {
+      return singleton;
+   }
+
+   public boolean isStateful()
+   {
+      return stateful;
+   }
+
+   public boolean isStateless()
+   {
+      return stateless;
+   }
+   
+   public boolean isMessageDriven()
+   {
+      return false;
+   }
+   
+   public String getLocalJndiName()
+   {
+      return localJndiName;
+   }   
+}

Modified: projects/webbeans-ri-int/trunk/jbossas/src/main/resources/META-INF/web-beans-ri.properties
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/resources/META-INF/web-beans-ri.properties	2009-01-06 23:33:12 UTC (rev 82649)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/resources/META-INF/web-beans-ri.properties	2009-01-06 23:47:18 UTC (rev 82650)
@@ -1 +1,2 @@
-org.jboss.webbeans.bootstrap.spi.WebBeanDiscovery=org.jboss.webbeans.integration.jbossas.WebBeanDiscoveryImpl
\ No newline at end of file
+org.jboss.webbeans.bootstrap.spi.WebBeanDiscovery=org.jboss.webbeans.integration.jbossas.bootstrap.WebBeanDiscoveryImpl
+org.jboss.webbeans.ejb.spi.EjbResolver=org.jboss.webbeans.integration.jbossas.ejb.JBossEjbResolver
\ No newline at end of file




More information about the jboss-cvs-commits mailing list