[jboss-cvs] JBossAS SVN: r82322 - in projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas: ejb3 and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Dec 16 13:21:22 EST 2008


Author: petemuir
Date: 2008-12-16 13:21:22 -0500 (Tue, 16 Dec 2008)
New Revision: 82322

Added:
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/EjbDiscoveryEnvironment.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossBussinessInterfaceDescriptorAdaptor.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossEJBDescriptorAdaptor.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossMessageDrivenBeanDescriptorAdaptor.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossSessionBeanDescriptorAdaptor.java
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/util/
Removed:
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/EjbDiscovery.java
Modified:
   projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/WebBeanDiscoveryImpl.java
Log:
Add EJB3 SPI implementation

Deleted: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/EjbDiscovery.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/EjbDiscovery.java	2008-12-16 17:39:36 UTC (rev 82321)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/EjbDiscovery.java	2008-12-16 18:21:22 UTC (rev 82322)
@@ -1,80 +0,0 @@
-package org.jboss.webbeans.integration.jbossas;
-
-import java.rmi.NotBoundException;
-
-import javax.servlet.ServletContext;
-
-import org.jboss.dependency.spi.ControllerContext;
-import org.jboss.dependency.spi.ControllerState;
-import org.jboss.kernel.Kernel;
-import org.jboss.webbeans.integration.jbossas.vdf.KernelVDFConnector;
-import org.jboss.webbeans.log.LogProvider;
-import org.jboss.webbeans.log.Logging;
-
-public class EjbDiscovery
-{
-   
-   private static final LogProvider log = Logging.getLogProvider(EjbDiscovery.class);
-   
-   private Kernel kernel;
-   
-   public EjbDiscovery(ServletContext servletContext)
-   {
-      KernelVDFConnector kernelVDFConnector = new KernelVDFConnector(servletContext);
-      kernel = kernelVDFConnector.getUtility();
-   }
-   
-   /**
-    * Obtains the value bound at the specified name, 
-    * throwing RuntimeException if there is nothing
-    * bound at the key.  If the "checkInstalled"
-    * flag is true, this implementation will
-    * also ensure that the lookup value is of
-    * ControllerState.INSTALLED, else NotBoundException
-    * 
-    * @param name
-    * @param checkInstalled
-    * @throws NotBoundException
-    * @return
-    */
-   public Object lookup(final Object name, boolean checkInstalled) throws NotBoundException
-   {
-      // Get Controller Context
-      ControllerContext context = kernel.getController().getContext(name, null);
-
-      // Ensure Bound
-      if (context == null || context.getTarget() == null)
-      {
-         throw new NotBoundException("Requested value bound at name \"" + name + "\" is not bound.");
-      }
-
-      // If we're checking for installed
-      if (checkInstalled)
-      {
-         // Get State
-         ControllerState state = context.getState();
-
-         // If State is other than INSTALLED
-         if (!state.equals(ControllerState.INSTALLED))
-         {
-            throw new NotBoundException("Object is bound at key " + name
-                  + ", but is not fully installed, instead of state: " + state);
-         }
-
-      }
-
-      // 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 " + ControllerContext.class.getSimpleName(), error);
-      }
-
-      // Return
-      Object target = context.getTarget();
-      log.debug("Returning from name \"" + name + "\": " + target);
-      return target;
-   }
-   
-}

Modified: 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	2008-12-16 17:39:36 UTC (rev 82321)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/WebBeanDiscoveryImpl.java	2008-12-16 18:21:22 UTC (rev 82322)
@@ -1,19 +1,19 @@
 package org.jboss.webbeans.integration.jbossas;
 
 import java.net.URL;
-import java.util.Collections;
-import java.util.Map;
 
 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.WebBeanDiscoveryEnvironment;
 
 public class WebBeanDiscoveryImpl implements WebBeanDiscovery
 {   
    private WebBeanDiscoveryEnvironment environment;
+   private EjbDiscoveryEnvironment ejbEnvironment;
    
    public WebBeanDiscoveryImpl(ServletContext servletContext)
    {
@@ -22,11 +22,12 @@
          throw new IllegalArgumentException("Cannot find web-beans discovery in deployment: " + servletContext);
 
       environment = connector.getUtility();
+      ejbEnvironment = new EjbDiscoveryEnvironment(servletContext);
    }
    
-   public Map<String, EjbDescriptor<?>> discoverEjbs()
+   public Iterable<EjbDescriptor<?>> discoverEjbs()
    {
-      return Collections.emptyMap();
+      return ejbEnvironment.getEjbs();
    }
    
    public Iterable<Class<?>> discoverWebBeanClasses()

Copied: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/EjbDiscoveryEnvironment.java (from rev 82287, projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/EjbDiscovery.java)
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/EjbDiscoveryEnvironment.java	                        (rev 0)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/EjbDiscoveryEnvironment.java	2008-12-16 18:21:22 UTC (rev 82322)
@@ -0,0 +1,128 @@
+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.deployers.client.spi.DeployerClient;
+import org.jboss.deployers.client.spi.Deployment;
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+import org.jboss.deployers.structure.spi.main.MainDeployerStructure;
+import org.jboss.ejb3.common.registrar.spi.Ejb3RegistrarLocator;
+import org.jboss.ejb3.common.registrar.spi.NotBoundException;
+import org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolver;
+import org.jboss.kernel.Kernel;
+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.KernelVDFConnector;
+import org.jboss.webbeans.log.LogProvider;
+import org.jboss.webbeans.log.Logging;
+
+public class EjbDiscoveryEnvironment
+{
+   
+   private List<EjbDescriptor<?>> ejbs;
+   
+   private static final LogProvider log = Logging.getLogProvider(EjbDiscoveryEnvironment.class);
+   
+   private Kernel kernel;
+   private EjbReferenceResolver resolver;
+   
+   private static final String MC_BEAN_NAME_MAIN_DEPLOYER = "MainDeployer";
+   
+   public EjbDiscoveryEnvironment(ServletContext servletContext)
+   {
+      KernelVDFConnector kernelVDFConnector = new KernelVDFConnector(servletContext);
+      kernel = kernelVDFConnector.getUtility();
+      resolver = (EjbReferenceResolver) lookup("org.jboss.ejb3.EjbReferenceResolver");
+      ejbs = new ArrayList<EjbDescriptor<?>>();
+      
+      discoverEjbs();
+   }
+   
+   public List<EjbDescriptor<?>> getEjbs()
+   {
+      return ejbs;
+   }
+   
+   protected void discoverEjbs()
+   {
+      /*
+       * Look through all EJB3 DeploymentUnits
+       */
+
+      // Get at the MainDeployer
+      Object mainDeployer = Ejb3RegistrarLocator.locateRegistrar().lookup(MC_BEAN_NAME_MAIN_DEPLOYER);
+      assert mainDeployer instanceof DeployerClient && mainDeployer instanceof MainDeployerStructure : "Obtained Main Deployer is not of expected type";
+      DeployerClient dc = (DeployerClient) mainDeployer;
+      MainDeployerStructure mds = (MainDeployerStructure) mainDeployer;
+
+      // Loop through each Deployment
+      for (Deployment d : dc.getTopLevel())
+      {
+         // Get the associated DU
+         DeploymentUnit du = mds.getDeploymentUnit(d.getName());
+
+         // Ensure it's an EJB3 DU (by looking for the processed metadata)
+         if (du.getAttachment(JBossMetaData.class).isEJB3x())
+         {
+            log.info("EJB metadata for " + du.toString());
+            for (JBossEnterpriseBeanMetaData enterpriseBeanMetaData : du.getAttachment(JBossMetaData.class).getEnterpriseBeans())
+            {
+               if (enterpriseBeanMetaData.isSession())
+               {
+                  JBossSessionBeanMetaData sessionBeanMetaData = (JBossSessionBeanMetaData) enterpriseBeanMetaData;
+                  EjbDescriptor<?> ejbDescriptor = new JBossSessionBeanDescriptorAdaptor<Object>(sessionBeanMetaData, du, resolver);
+                  log.info(ejbDescriptor.toString());
+                  ejbs.add(ejbDescriptor);
+               }
+               else if (enterpriseBeanMetaData.isMessageDriven())
+               {
+                  JBossMessageDrivenBeanMetaData messageDrivenBeanMetaData = (JBossMessageDrivenBeanMetaData) enterpriseBeanMetaData;
+                  EjbDescriptor<?> ejbDescriptor = new JBossMessageDrivenBeanDescriptorAdaptor<Object>(messageDrivenBeanMetaData, du, resolver);
+                  log.info(ejbDescriptor.toString());
+                  ejbs.add(ejbDescriptor);
+               }
+            }
+         }
+      }
+   }
+   
+   /**
+    * Obtains the value bound at the specified name, 
+    * throwing RuntimeException if there is nothing
+    * bound at the key.  If the "checkInstalled"
+    * flag is true, this implementation will
+    * also ensure that the lookup value is of
+    * ControllerState.INSTALLED, else NotBoundException
+    * 
+    * @param name
+    * @param checkInstalled
+    * @throws NotBoundException
+    * @return
+    */
+   public Object lookup(final Object name) throws NotBoundException
+   {
+      // Get Controller Context
+      ControllerContext context = kernel.getController().getContext(name, 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 " + ControllerContext.class.getSimpleName(), error);
+      }
+
+      // Return
+      Object target = context.getTarget();
+      log.debug("Returning from name \"" + name + "\": " + target);
+      return target;
+   }
+   
+}


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

Added: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossBussinessInterfaceDescriptorAdaptor.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossBussinessInterfaceDescriptorAdaptor.java	                        (rev 0)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossBussinessInterfaceDescriptorAdaptor.java	2008-12-16 18:21:22 UTC (rev 82322)
@@ -0,0 +1,42 @@
+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.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;
+   }
+   
+}


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

Added: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossEJBDescriptorAdaptor.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossEJBDescriptorAdaptor.java	                        (rev 0)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossEJBDescriptorAdaptor.java	2008-12-16 18:21:22 UTC (rev 82322)
@@ -0,0 +1,67 @@
+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.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 (isStateful())
+      {
+         builder.append(" (MDB)");
+      }
+      return "; BeanClass: " + getType() + "; Local Business Interfaces: " + getLocalBusinessInterfaces(); 
+   }
+   
+}
\ No newline at end of file


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

Added: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossMessageDrivenBeanDescriptorAdaptor.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossMessageDrivenBeanDescriptorAdaptor.java	                        (rev 0)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossMessageDrivenBeanDescriptorAdaptor.java	2008-12-16 18:21:22 UTC (rev 82322)
@@ -0,0 +1,58 @@
+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;
+   }
+   
+}


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

Added: projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossSessionBeanDescriptorAdaptor.java
===================================================================
--- projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossSessionBeanDescriptorAdaptor.java	                        (rev 0)
+++ projects/webbeans-ri-int/trunk/jbossas/src/main/java/org/jboss/webbeans/integration/jbossas/ejb3/JBossSessionBeanDescriptorAdaptor.java	2008-12-16 18:21:22 UTC (rev 82322)
@@ -0,0 +1,83 @@
+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.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;
+   
+   public JBossSessionBeanDescriptorAdaptor(JBossSessionBeanMetaData sessionBeanMetaData, DeploymentUnit deploymentUnit, EjbReferenceResolver resolver)
+   {
+      super(sessionBeanMetaData, deploymentUnit, resolver);
+      this.localBusinessInterfaces = new ArrayList<BusinessInterfaceDescriptor<?>>();
+      for (String interfaceName : sessionBeanMetaData.getBusinessLocals())
+      {
+         this.localBusinessInterfaces.add(new JBossBussinessInterfaceDescriptorAdaptor<Object>(interfaceName, getEjbName(), deploymentUnit, resolver));
+      }
+      
+      remoteBusinessInterfaces = new ArrayList<BusinessInterfaceDescriptor<?>>();
+      for (String interfaceName : sessionBeanMetaData.getBusinessRemotes())
+      {
+         this.remoteBusinessInterfaces.add(new JBossBussinessInterfaceDescriptorAdaptor<Object>(interfaceName, getEjbName(), deploymentUnit, resolver));
+      }
+      
+      this.removeMethods = new ArrayList<Method>();
+      // TODO populate remove methods
+      
+      
+      
+      this.stateful = sessionBeanMetaData.isStateful();
+      this.stateless = sessionBeanMetaData.isStateless();
+      this.singleton = false;
+   }
+   
+   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;
+   }
+   
+}


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




More information about the jboss-cvs-commits mailing list