[weld-commits] Weld SVN: r6152 - extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager.
weld-commits at lists.jboss.org
weld-commits at lists.jboss.org
Fri Apr 23 17:45:00 EDT 2010
Author: nickarls
Date: 2010-04-23 17:44:59 -0400 (Fri, 23 Apr 2010)
New Revision: 6152
Modified:
extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/BeanManagerAware.java
extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/BeanManagerProvider.java
extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/DefaultJndiBeanManagerProvider.java
extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/JBossJndiBeanManagerProvider.java
Log:
Drop static provider list from BeanManagerAware due to possible classloader issues
Change precedences to favor ServletContext
Document behaviour of equal precedence
Modified: extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/BeanManagerAware.java
===================================================================
--- extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/BeanManagerAware.java 2010-04-22 19:14:18 UTC (rev 6151)
+++ extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/BeanManagerAware.java 2010-04-23 21:44:59 UTC (rev 6152)
@@ -49,28 +49,28 @@
{
private BeanManager beanManager;
- private static final List<BeanManagerProvider> beanManagerProviders = new ArrayList<BeanManagerProvider>();
+ private final List<BeanManagerProvider> beanManagerProviders = new ArrayList<BeanManagerProvider>();
- static
+ public BeanManagerAware()
{
loadServices();
- Collections.sort(beanManagerProviders, new ProviderWeightSorter());
+ Collections.sort(beanManagerProviders, new ProviderWeightSorter());
}
-
- private static class ProviderWeightSorter implements Comparator<BeanManagerProvider>
+
+ private void loadServices()
{
- public int compare(BeanManagerProvider provider1, BeanManagerProvider provider2)
+ Iterator<BeanManagerProvider> providers = DefaultServiceLoader.load(BeanManagerProvider.class).iterator();
+ while (providers.hasNext())
{
- return Integer.valueOf(provider1.getPrecedence()).compareTo(Integer.valueOf(provider2.getPrecedence()));
+ beanManagerProviders.add(providers.next());
}
}
-
- private static void loadServices()
+
+ private class ProviderWeightSorter implements Comparator<BeanManagerProvider>
{
- Iterator<BeanManagerProvider> providers = DefaultServiceLoader.load(BeanManagerProvider.class).iterator();
- while (providers.hasNext())
+ public int compare(BeanManagerProvider provider1, BeanManagerProvider provider2)
{
- beanManagerProviders.add(providers.next());
+ return Integer.valueOf(provider1.getPrecedence()).compareTo(Integer.valueOf(provider2.getPrecedence()));
}
}
Modified: extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/BeanManagerProvider.java
===================================================================
--- extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/BeanManagerProvider.java 2010-04-22 19:14:18 UTC (rev 6151)
+++ extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/BeanManagerProvider.java 2010-04-23 21:44:59 UTC (rev 6152)
@@ -41,7 +41,7 @@
/**
* An integer precedence value that indicates how favorable the implementation
* considers itself amongst alternatives. A higher value is a higher
- * precedence.
+ * precedence. If two implementations have the save precedence, the order is undetermined.
*/
public abstract int getPrecedence();
}
Modified: extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/DefaultJndiBeanManagerProvider.java
===================================================================
--- extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/DefaultJndiBeanManagerProvider.java 2010-04-22 19:14:18 UTC (rev 6151)
+++ extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/DefaultJndiBeanManagerProvider.java 2010-04-23 21:44:59 UTC (rev 6152)
@@ -40,7 +40,7 @@
public int getPrecedence()
{
- return 10;
+ return 11;
}
}
Modified: extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/JBossJndiBeanManagerProvider.java
===================================================================
--- extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/JBossJndiBeanManagerProvider.java 2010-04-22 19:14:18 UTC (rev 6151)
+++ extensions/trunk/src/main/java/org/jboss/weld/extensions/beanManager/JBossJndiBeanManagerProvider.java 2010-04-23 21:44:59 UTC (rev 6152)
@@ -39,7 +39,7 @@
public int getPrecedence()
{
- return 11;
+ return 10;
}
}
More information about the weld-commits
mailing list