You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by gp...@apache.org on 2011/03/13 16:15:45 UTC

svn commit: r1081134 - /myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/util/ConversationUtils.java

Author: gpetracek
Date: Sun Mar 13 15:15:45 2011
New Revision: 1081134

URL: http://svn.apache.org/viewvc?rev=1081134&view=rev
Log:
EXTCDI-156 reverted cache

Modified:
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/util/ConversationUtils.java

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/util/ConversationUtils.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/util/ConversationUtils.java?rev=1081134&r1=1081133&r2=1081134&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/util/ConversationUtils.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/util/ConversationUtils.java Sun Mar 13 15:15:45 2011
@@ -70,9 +70,6 @@ public abstract class ConversationUtils
     private static Map<Class, Class<? extends Annotation>> conversationGroupToScopeCache =
             new ConcurrentHashMap<Class, Class<? extends Annotation>>();
 
-    private static Map<Class, Class> beanClassToConversationGroupCache =
-            new ConcurrentHashMap<Class, Class>();
-
     private static final String REDIRECT_PERFORMED_KEY = WindowHandler.class.getName() + "redirect:KEY";
 
     private ConversationUtils()
@@ -85,42 +82,25 @@ public abstract class ConversationUtils
      * @param bean current bean
      * @return class which represents the conversation-group
      */
+    //don't cache it to support different producers
     public static Class getConversationGroup(Bean<?> bean)
     {
-        Class beanClass = bean.getBeanClass();
-        Class foundGroup = beanClassToConversationGroupCache.get(beanClass);
+        Class<? extends Annotation> scopeType = bean.getScope();
 
-        if(foundGroup != null)
+        //TODO check if we should support conversation groups for @WindowScoped
+        if(WindowScoped.class.isAssignableFrom(scopeType))
         {
-            return foundGroup;
+            return WindowScoped.class;
         }
 
-        try
-        {
-            Class<? extends Annotation> scopeType = bean.getScope();
-
-            //TODO check if we should support conversation groups for @WindowScoped
-            if(WindowScoped.class.isAssignableFrom(scopeType))
-            {
-                foundGroup = WindowScoped.class;
-                return foundGroup;
-            }
-
-            ConversationGroup conversationGroupAnnotation = findConversationGroupAnnotation(bean);
+        ConversationGroup conversationGroupAnnotation = findConversationGroupAnnotation(bean);
 
-            if(conversationGroupAnnotation == null)
-            {
-                foundGroup = beanClass;
-                return foundGroup;
-            }
-
-            foundGroup = conversationGroupAnnotation.value();
-            return foundGroup;
-        }
-        finally
+        if(conversationGroupAnnotation == null)
         {
-            beanClassToConversationGroupCache.put(beanClass, foundGroup);
+            return bean.getBeanClass();
         }
+
+        return conversationGroupAnnotation.value();
     }
 
     private static ConversationGroup findConversationGroupAnnotation(Bean<?> bean)