You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwebbeans.apache.org by st...@apache.org on 2015/05/19 22:29:39 UTC
svn commit: r1680385 -
/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/el/ELContextStore.java
Author: struberg
Date: Tue May 19 20:29:38 2015
New Revision: 1680385
URL: http://svn.apache.org/r1680385
Log:
OWB-1035 fix WebBeansELResolver getBeans() mechanism
Modified:
openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/el/ELContextStore.java
Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/el/ELContextStore.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/el/ELContextStore.java?rev=1680385&r1=1680384&r2=1680385&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/el/ELContextStore.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/el/ELContextStore.java Tue May 19 20:29:38 2015
@@ -20,7 +20,6 @@ package org.apache.webbeans.el;
import java.util.HashMap;
import java.util.Map;
-import java.util.Set;
import javax.enterprise.context.spi.CreationalContext;
import javax.enterprise.inject.spi.Bean;
@@ -67,7 +66,7 @@ public class ELContextStore
/**
* The same Expression must get same instances of @Dependent beans
*/
- private Map<Bean<?>, CreationalStore> dependentObjects = new HashMap<Bean<?>, CreationalStore>();
+ private Map<Bean<?>, CreationalStore<?>> dependentObjects = new HashMap<Bean<?>, CreationalStore<?>>();
private Map<String, Bean<?>> beanNameToDependentBeanMapping = new HashMap<String, Bean<?>>();
/**
@@ -102,13 +101,13 @@ public class ELContextStore
return null;
}
- private static class CreationalStore
+ private static class CreationalStore<T>
{
- private Object object;
+ private T object;
- private CreationalContext<?> creational;
+ private CreationalContext<T> creational;
- public CreationalStore(Object object, CreationalContext<?> creational)
+ public CreationalStore(T object, CreationalContext<T> creational)
{
this.object = object;
this.creational = creational;
@@ -117,7 +116,7 @@ public class ELContextStore
/**
* @return the object
*/
- public Object getObject()
+ public T getObject()
{
return object;
}
@@ -125,7 +124,7 @@ public class ELContextStore
/**
* @return the creational
*/
- public CreationalContext<?> getCreational()
+ public CreationalContext<T> getCreational()
{
return creational;
}
@@ -182,14 +181,12 @@ public class ELContextStore
{
if (dependentObjects.size() > 0)
{
- Set<Bean<?>> beans = dependentObjects.keySet();
- for(Bean<?> bean : beans)
+ for (Map.Entry<Bean<?>, CreationalStore<?>> storeEntry : dependentObjects.entrySet())
{
- Bean<Object> o = (Bean<Object>)bean;
- CreationalStore store = dependentObjects.get(bean);
- o.destroy(store.getObject(), (CreationalContext<Object>)store.getCreational());
+ CreationalStore<?> store = storeEntry.getValue();
+ Bean contextual = storeEntry.getKey();
+ contextual.destroy(store.getObject(), store.getCreational());
}
-
dependentObjects.clear();
}
beanNameToDependentBeanMapping.clear();