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:24:16 UTC
svn commit: r1081137 -
/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:24:16 2011
New Revision: 1081137
URL: http://svn.apache.org/viewvc?rev=1081137&view=rev
Log:
EXTCDI-156 improvement for the view-access-scope
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=1081137&r1=1081136&r2=1081137&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:24:16 2011
@@ -19,9 +19,10 @@
package org.apache.myfaces.extensions.cdi.jsf.impl.util;
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.ConversationGroup;
+import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.ConversationScoped;
+import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.ViewAccessScoped;
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.WindowContext;
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.WindowScoped;
-import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.ConversationScoped;
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.config.WindowContextConfig;
import org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProvider;
import org.apache.myfaces.extensions.cdi.core.impl.scope.conversation.spi.WindowContextManager;
@@ -78,21 +79,27 @@ public abstract class ConversationUtils
}
/**
- * Calculates the conversation-group for a given {@link Bean}
+ * Calculates the conversation-group for a given {@link Bean}.
+ * Conversation-groups are only supported in combination with
+ * {@link org.apache.myfaces.extensions.cdi.core.api.scope.conversation.ConversationScoped}
* @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<? extends Annotation> scopeType = bean.getScope();
- //TODO check if we should support conversation groups for @WindowScoped
+ if(ViewAccessScoped.class.isAssignableFrom(scopeType))
+ {
+ return bean.getBeanClass();
+ }
+
if(WindowScoped.class.isAssignableFrom(scopeType))
{
return WindowScoped.class;
}
+ //don't cache it (due to the support of different producers)
ConversationGroup conversationGroupAnnotation = findConversationGroupAnnotation(bean);
if(conversationGroupAnnotation == null)