[jboss-cvs] JBossAS SVN: r83849 - in projects/aop/trunk/aop/src: test/java/org/jboss/test/aop/standalone and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Feb 4 08:35:59 EST 2009
Author: stalep
Date: 2009-02-04 08:35:59 -0500 (Wed, 04 Feb 2009)
New Revision: 83849
Modified:
projects/aop/trunk/aop/src/main/java/org/jboss/aop/AspectManager.java
projects/aop/trunk/aop/src/test/java/org/jboss/test/aop/standalone/PackageTestCase.java
Log:
[JBAOP-697]
Changed AspectManager.getAdvisors() to fetch advisors from all subdomains.
Modified: projects/aop/trunk/aop/src/main/java/org/jboss/aop/AspectManager.java
===================================================================
--- projects/aop/trunk/aop/src/main/java/org/jboss/aop/AspectManager.java 2009-02-04 13:28:28 UTC (rev 83848)
+++ projects/aop/trunk/aop/src/main/java/org/jboss/aop/AspectManager.java 2009-02-04 13:35:59 UTC (rev 83849)
@@ -531,7 +531,27 @@
public Map<Class<?>, WeakReference<Advisor>> getAdvisors()
{
- return advisors;
+ WeakHashMap<Class<?>, WeakReference<Advisor>> tmpAdvisors = new WeakHashMap<Class<?>, WeakReference<Advisor>>();
+ if(getSubDomainsPerClass().size() > 0)
+ {
+ Map<Class<?>, WeakReference<Domain>> domainsMap = getSubDomainsPerClass();
+ Set<Class<?>> keys = domainsMap.keySet();
+ Domain subDomain = null;
+ for(Class<?> clazz : keys)
+ {
+ WeakReference<Domain> ref = getSubDomainsPerClass().get(clazz);
+ if (ref != null)
+ {
+ subDomain = ref.get();
+ if(subDomain != null)
+ {
+ WeakReference<Advisor> advisorRef = advisors.get(clazz);
+ tmpAdvisors.put(clazz, advisorRef);
+ }
+ }
+ }
+ }
+ return tmpAdvisors;
}
public Advisor getAdvisor(String name)
Modified: projects/aop/trunk/aop/src/test/java/org/jboss/test/aop/standalone/PackageTestCase.java
===================================================================
--- projects/aop/trunk/aop/src/test/java/org/jboss/test/aop/standalone/PackageTestCase.java 2009-02-04 13:28:28 UTC (rev 83848)
+++ projects/aop/trunk/aop/src/test/java/org/jboss/test/aop/standalone/PackageTestCase.java 2009-02-04 13:35:59 UTC (rev 83849)
@@ -21,10 +21,14 @@
*/
package org.jboss.test.aop.standalone;
+import java.lang.ref.WeakReference;
+import java.util.Map;
+
import junit.framework.Test;
import junit.framework.TestSuite;
import org.jboss.aop.AspectManager;
+import org.jboss.aop.Domain;
import org.jboss.test.aop.AOPTestWithSetup;
/**
@@ -55,10 +59,19 @@
assertTrue(PackageInterceptor.invoked);
org.jboss.aop.standalone.Package pkg = org.jboss.aop.standalone.Package.aopClassMap();
- System.out.println("Package size: "+pkg.advisors.size());
- System.out.println("Number of advisors: "+AspectManager.getTopLevelAspectManager().getAdvisors().size());
- System.out.println("Number of advisors: "+AspectManager.instance().getAdvisors().size());
+ System.out.println("Package size: "+pkg.packages.size());
+ assertEquals(1,pkg.packages.size());
- System.out.println("Number of aspects: "+AspectManager.instance().getPerVMAspects().size());
+// System.out.println("Number of advisors: "+AspectManager.getTopLevelAspectManager().getAdvisors().size());
+// System.out.println("Number of advisors: "+AspectManager.instance().getAdvisors().size());
+// System.out.println("Number of advisors: "+AspectManager.instance().getSubDomainsPerClass2().size());
+//
+// Map<Class<?>, WeakReference<Domain>> domains = AspectManager.instance().getSubDomainsPerClass2();
+//
+// System.out.println("domains: "+domains.toString());
+
+
+ System.out.println("Number of aspects: "+AspectManager.instance().getAspectDefinitions().size());
+
}
}
More information about the jboss-cvs-commits
mailing list