Author: rmannibucau
Date: Mon Oct  8 10:09:22 2012
New Revision: 1395501

URL: http://svn.apache.org/viewvc?rev=1395501&view=rev
Log:
caching ispassivationscope attribute of ejbs

Modified:
    
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/BeanContext.java
    
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java

Modified: 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/BeanContext.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/BeanContext.java?rev=1395501&r1=1395500&r2=1395501&view=diff
==============================================================================
--- 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/BeanContext.java
 (original)
+++ 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/BeanContext.java
 Mon Oct  8 10:09:22 2012
@@ -62,15 +62,22 @@ import javax.ejb.Timer;
 import javax.enterprise.context.spi.Contextual;
 import javax.enterprise.context.spi.CreationalContext;
 import javax.enterprise.inject.spi.Bean;
-import javax.enterprise.inject.spi.BeanManager;
 import javax.naming.Context;
 import javax.persistence.EntityManagerFactory;
-import java.lang.annotation.Annotation;
 import java.lang.reflect.InvocationHandler;
 import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Map;
 import java.util.Map.Entry;
+import java.util.Set;
+import java.util.TreeSet;
 import java.util.concurrent.Future;
 
 
@@ -80,6 +87,8 @@ public class BeanContext extends Deploym
     public static final String USER_INTERCEPTOR_KEY = 
"org.apache.openejb.default.system.interceptors";
     public static final String USER_INTERCEPTOR_SEPARATOR = ",| |;";
 
+    private boolean isPassivatingScope = true;
+
     public boolean isDynamicallyImplemented() {
         return proxyClass != null;
     }
@@ -1578,14 +1587,18 @@ public class BeanContext extends Deploym
         this.hidden = hidden;
     }
 
-    public boolean isPassivatingScope() {
+    public void initIsPassivationScope() {
         final BeanManagerImpl bm = 
moduleContext.getAppContext().getWebBeansContext().getBeanManagerImpl();
         if (!bm.isInUse()) {
-            return true;
+            isPassivatingScope = true;
         }
 
         final CdiEjbBean<?> bean = get(CdiEjbBean.class);
-        return bean == null || bm.isPassivatingScope(bean.getScope());
+        isPassivatingScope =  bean == null || 
bm.isPassivatingScope(bean.getScope());
+    }
+
+    public boolean isPassivatingScope() {
+        return isPassivatingScope;
     }
 
     public void stop() {

Modified: 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java?rev=1395501&r1=1395500&r2=1395501&view=diff
==============================================================================
--- 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java
 (original)
+++ 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java
 Mon Oct  8 10:09:22 2012
@@ -242,6 +242,8 @@ public class OpenEJBLifecycle implements
 
                         EjbUtility.fireEvents((Class<Object>) implClass, bean, 
(ProcessAnnotatedTypeImpl<Object>) processAnnotatedEvent);
 
+                        beanContext.initIsPassivationScope();
+
                         
webBeansContext.getWebBeansUtil().setInjectionTargetBeanEnableFlag(bean);
 
                         Class clazz = beanContext.getBeanClass();


Reply via email to