[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