[jboss-cvs] JBossAS SVN: r100249 - in projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb: interceptor and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Feb 2 07:50:58 EST 2010


Author: pete.muir at jboss.org
Date: 2010-02-02 07:50:57 -0500 (Tue, 02 Feb 2010)
New Revision: 100249

Modified:
   projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/JBossSessionBean31DescriptorAdaptor.java
   projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/JBossSessionBeanDescriptorAdaptor.java
   projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/SessionBeanInterceptor.java
   projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/interceptor/Jsr299BindingsInterceptor.java
Log:
WELDINT-39, and fix EJB 3.1 non-no-interface views

Modified: projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/JBossSessionBean31DescriptorAdaptor.java
===================================================================
--- projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/JBossSessionBean31DescriptorAdaptor.java	2010-02-02 12:47:53 UTC (rev 100248)
+++ projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/JBossSessionBean31DescriptorAdaptor.java	2010-02-02 12:50:57 UTC (rev 100249)
@@ -11,15 +11,43 @@
 public class JBossSessionBean31DescriptorAdaptor<T> extends JBossSessionBeanDescriptorAdaptor<T>
 {
 
+   private final String localJndiName;
+   private final boolean noInterfaceView;
+   
    public JBossSessionBean31DescriptorAdaptor(JBossSessionBean31MetaData sessionBeanMetaData, DeploymentUnit deploymentUnit, EjbReferenceResolver resolver)
    {
-      super(sessionBeanMetaData, deploymentUnit, resolver, getJndiName(sessionBeanMetaData));
+      super(sessionBeanMetaData, deploymentUnit, resolver);
       if (sessionBeanMetaData.isNoInterfaceBean())
       {
          getLocalBusinessInterfaces().add(new JBossBussinessInterfaceDescriptorAdaptor<T>(sessionBeanMetaData.getEjbClass(), sessionBeanMetaData.getEjbName(), deploymentUnit, resolver));
+         this.localJndiName = getJndiName(sessionBeanMetaData);
+         this.noInterfaceView = true;
       }
-      
+      else
+      {
+         this.localJndiName = null;
+         this.noInterfaceView = true;
+      }
    }
+   
+   @Override
+   public String getLocalJndiName()
+   {
+      if (localJndiName == null)
+      {
+         return super.getLocalJndiName();
+      }
+      else
+      {
+         return localJndiName;
+      }
+   }
+   
+   @Override
+   public boolean isNoInterfaceView()
+   {
+      return noInterfaceView;
+   }
 
    private static String getJndiName(JBossSessionBean31MetaData sessionBean)
    {

Modified: projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/JBossSessionBeanDescriptorAdaptor.java
===================================================================
--- projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/JBossSessionBeanDescriptorAdaptor.java	2010-02-02 12:47:53 UTC (rev 100248)
+++ projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/JBossSessionBeanDescriptorAdaptor.java	2010-02-02 12:50:57 UTC (rev 100249)
@@ -126,5 +126,10 @@
    {
       return deploymentUnit;
    }
+   
+   public boolean isNoInterfaceView()
+   {
+      return false;
+   }
 
 }

Modified: projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/SessionBeanInterceptor.java
===================================================================
--- projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/SessionBeanInterceptor.java	2010-02-02 12:47:53 UTC (rev 100248)
+++ projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/SessionBeanInterceptor.java	2010-02-02 12:50:57 UTC (rev 100249)
@@ -22,7 +22,7 @@
 import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
 import javax.annotation.Resource;
-import javax.ejb.SessionContext;
+import javax.ejb.EJBContext;
 import javax.enterprise.context.spi.CreationalContext;
 import javax.enterprise.inject.spi.Bean;
 import javax.enterprise.inject.spi.InjectionTarget;
@@ -69,7 +69,7 @@
    }
    
    @Resource
-   private SessionContext sessionContext;
+   private EJBContext ejbContext;
    
    @Resource(mappedName="java:app/BeanManager")
    private WeldManager beanManager;
@@ -115,12 +115,12 @@
    
    private String getEjbName()
    {
-      if (sessionContext instanceof StatefulSessionContextImpl)
+      if (ejbContext instanceof StatefulSessionContextImpl)
       {
          try
          {
             
-            String guid = (String) statefulGuidField.get(sessionContext);
+            String guid = (String) statefulGuidField.get(ejbContext);
             Container container = Ejb3Registry.getContainer(guid);
             return container.getEjbName();
          }
@@ -133,11 +133,11 @@
             throw new RuntimeException(e);
          }
       }
-      else if (sessionContext instanceof EJBContextImpl<?, ?>)
+      else if (ejbContext instanceof EJBContextImpl<?, ?>)
       {
          try
          {
-            BeanContext<?> beanContext = (BeanContext<?>) beanContextField.get(sessionContext);
+            BeanContext<?> beanContext = (BeanContext<?>) beanContextField.get(ejbContext);
             return beanContext.getContainer().getEjbName();
          }
          catch (IllegalArgumentException e)
@@ -151,7 +151,7 @@
       }
       else
       {
-         throw new IllegalStateException("Unable to extract ejb name from SessionContext " + sessionContext);
+         throw new IllegalStateException("Unable to extract ejb name from EJBContext " + ejbContext);
       }
 
    }

Modified: projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/interceptor/Jsr299BindingsInterceptor.java
===================================================================
--- projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/interceptor/Jsr299BindingsInterceptor.java	2010-02-02 12:47:53 UTC (rev 100248)
+++ projects/weld-int/trunk/ejb/src/main/java/org/jboss/weld/integration/ejb/interceptor/Jsr299BindingsInterceptor.java	2010-02-02 12:50:57 UTC (rev 100249)
@@ -26,7 +26,6 @@
 import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
 import javax.annotation.Resource;
-import javax.ejb.SessionContext;
 import javax.enterprise.context.spi.CreationalContext;
 import javax.enterprise.inject.spi.InterceptionType;
 import javax.enterprise.inject.spi.Interceptor;
@@ -34,14 +33,14 @@
 import javax.interceptor.InvocationContext;
 
 import org.jboss.weld.ejb.spi.EjbDescriptor;
-import org.jboss.weld.ejb.spi.InterceptorBindings;
 import org.jboss.weld.ejb.spi.EjbServices;
+import org.jboss.weld.ejb.spi.InterceptorBindings;
 import org.jboss.weld.ejb.spi.helpers.ForwardingEjbServices;
-import org.jboss.weld.integration.ejb.SessionBeanInterceptor;
 import org.jboss.weld.integration.ejb.JBossEjbServices;
+import org.jboss.weld.integration.ejb.SessionBeanInterceptor;
 import org.jboss.weld.manager.api.WeldManager;
-import org.jboss.weld.serialization.spi.helpers.SerializableContextualInstance;
 import org.jboss.weld.serialization.spi.ContextualStore;
+import org.jboss.weld.serialization.spi.helpers.SerializableContextualInstance;
 
 /**
  * Interceptor for applying the JSR-299 specific interceptor bindings.
@@ -59,9 +58,6 @@
    @Resource(mappedName="java:app/BeanManager")
    private WeldManager beanManager;
 
-   @Resource
-   private SessionContext sessionContext;
-
    private InterceptorBindings interceptorBindings;
 
    private Map<String, SerializableContextualInstance<Interceptor<Object>, Object>> interceptorInstances;




More information about the jboss-cvs-commits mailing list