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 2010/07/14 21:12:36 UTC
svn commit: r964139 - in /myfaces/extensions/cdi/trunk:
core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/
core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/
core/impl/src/main/jav...
Author: gpetracek
Date: Wed Jul 14 19:12:36 2010
New Revision: 964139
URL: http://svn.apache.org/viewvc?rev=964139&view=rev
Log:
EXTCDI-1, EXTCDI-2 and EXTCDI-3 cleanup
Removed:
myfaces/extensions/cdi/trunk/core/api/src/main/java/org/apache/myfaces/extensions/cdi/core/api/scope/conversation/BeanAccessedEvent.java
Modified:
myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/AbstractConversationContextAdapter.java
myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/ConversationBeanEntry.java
myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/spi/BeanEntry.java
myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/utils/CodiUtils.java
myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/BeanStorage.java
Modified: myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/AbstractConversationContextAdapter.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/AbstractConversationContextAdapter.java?rev=964139&r1=964138&r2=964139&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/AbstractConversationContextAdapter.java (original)
+++ myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/AbstractConversationContextAdapter.java Wed Jul 14 19:12:36 2010
@@ -18,8 +18,6 @@
*/
package org.apache.myfaces.extensions.cdi.core.impl.scope.conversation;
-import org.apache.myfaces.extensions.cdi.core.api.manager.BeanManagerProvider;
-import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.BeanAccessedEvent;
import org.apache.myfaces.extensions.cdi.core.api.scope.conversation.ConversationScoped;
import org.apache.myfaces.extensions.cdi.core.impl.scope.conversation.spi.BeanEntry;
import org.apache.myfaces.extensions.cdi.core.impl.scope.conversation.spi.WindowContextManager;
@@ -30,7 +28,6 @@ import javax.enterprise.context.spi.Cont
import javax.enterprise.context.spi.CreationalContext;
import javax.enterprise.inject.spi.Bean;
import javax.enterprise.inject.spi.BeanManager;
-import java.io.Serializable;
import java.lang.annotation.Annotation;
/**
@@ -92,12 +89,6 @@ public abstract class AbstractConversati
T foundBeanInstance = resolveBeanInstance(windowContextManager, bean);
- if (foundBeanInstance != null)
- {
- BeanManagerProvider.getInstance().getBeanManager()
- .fireEvent(new BeanAccessedEvent((Serializable) foundBeanInstance));
- }
-
return foundBeanInstance;
}
throw new IllegalStateException(component.getClass() + " is no valid conversation scoped bean");
Modified: myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/ConversationBeanEntry.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/ConversationBeanEntry.java?rev=964139&r1=964138&r2=964139&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/ConversationBeanEntry.java (original)
+++ myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/ConversationBeanEntry.java Wed Jul 14 19:12:36 2010
@@ -35,9 +35,12 @@ class ConversationBeanEntry<T> implement
private T currentBeanInstance;
+ private CreationalContext<T> creationalContext;
+
ConversationBeanEntry(CreationalContext<T> creationalContext, Bean<T> bean)
{
this.bean = bean;
+ this.creationalContext = creationalContext;
this.currentBeanInstance = createNewInstanceOfBean(bean, creationalContext);
}
@@ -46,11 +49,16 @@ class ConversationBeanEntry<T> implement
return this.bean;
}
+ public CreationalContext<T> getCreationalContext()
+ {
+ return creationalContext;
+ }
+
public T getBeanInstance()
{
if (this.currentBeanInstance == null)
{
- this.currentBeanInstance = createNewInstanceOfBean(this.bean);
+ this.currentBeanInstance = createNewInstanceOfBean(this.creationalContext, this.bean);
}
return this.currentBeanInstance;
}
Modified: myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/spi/BeanEntry.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/spi/BeanEntry.java?rev=964139&r1=964138&r2=964139&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/spi/BeanEntry.java (original)
+++ myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/scope/conversation/spi/BeanEntry.java Wed Jul 14 19:12:36 2010
@@ -19,6 +19,7 @@
package org.apache.myfaces.extensions.cdi.core.impl.scope.conversation.spi;
import javax.enterprise.inject.spi.Bean;
+import javax.enterprise.context.spi.CreationalContext;
import java.io.Serializable;
/**
@@ -26,7 +27,9 @@ import java.io.Serializable;
*/
public interface BeanEntry<T> extends Serializable
{
- Bean getBean();
+ Bean<T> getBean();
+
+ CreationalContext<T> getCreationalContext();
T getBeanInstance();
Modified: myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/utils/CodiUtils.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/utils/CodiUtils.java?rev=964139&r1=964138&r2=964139&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/utils/CodiUtils.java (original)
+++ myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/utils/CodiUtils.java Wed Jul 14 19:12:36 2010
@@ -38,12 +38,8 @@ public class CodiUtils
{
public static final String CODI_PROPERTIES = "/META-INF/extcdi/extcdi.properties";
- public static <T> T createNewInstanceOfBean(Bean<T> bean)
+ public static <T> T createNewInstanceOfBean(CreationalContext<T> creationalContext, Bean<T> bean)
{
- BeanManager beanManager = BeanManagerProvider.getInstance().getBeanManager();
-
- CreationalContext<T> creationalContext = getCreationalContextFor(beanManager, bean);
-
return createNewInstanceOfBean(bean, creationalContext);
}
@@ -66,12 +62,8 @@ public class CodiUtils
return result;
}
- public static <T> void destroyBean(Bean<T> bean, T beanInstance)
+ public static <T> void destroyBean(CreationalContext<T> creationalContext, Bean<T> bean, T beanInstance)
{
- BeanManager beanManager = BeanManagerProvider.getInstance().getBeanManager();
-
- CreationalContext<T> creationalContext = getCreationalContextFor(beanManager, bean);
-
bean.destroy(beanInstance, creationalContext);
}
Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/BeanStorage.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/BeanStorage.java?rev=964139&r1=964138&r2=964139&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/BeanStorage.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/javaee/jsf/impl/scope/conversation/BeanStorage.java Wed Jul 14 19:12:36 2010
@@ -24,7 +24,6 @@ import org.apache.myfaces.extensions.cdi
import static org.apache.myfaces.extensions.cdi.core.impl.utils.CodiUtils.destroyBean;
import javax.enterprise.inject.spi.BeanManager;
-import javax.enterprise.inject.spi.Bean;
import java.io.Serializable;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@@ -81,16 +80,15 @@ class BeanStorage implements Serializabl
for (BeanEntry<Serializable> beanHolder : this.beanMap.values())
{
oldBeanInstance = beanHolder.resetBeanInstance();
- fireUnscopeBeanEvent(oldBeanInstance, beanHolder.getBean());
+ fireUnscopeBeanEvent(oldBeanInstance, beanHolder);
}
}
- //TODO PreDestroy
- private <T extends Serializable> void fireUnscopeBeanEvent(T instance, Bean<T> bean)
+ private <T extends Serializable> void fireUnscopeBeanEvent(T instance, BeanEntry<T> beanHolder)
{
getOrCreateBeanManager().fireEvent(new UnscopeBeanEvent(instance));
- destroyBean(bean, instance);
+ destroyBean(beanHolder.getCreationalContext(), beanHolder.getBean(), instance);
}
private BeanManager getOrCreateBeanManager()