[jboss-cvs] JBossAS SVN: r82634 - in projects/aop/trunk: asintegration-mc/src/main/org/jboss/aop/classpool/jbosscl and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Jan 6 12:46:50 EST 2009
Author: kabir.khan at jboss.com
Date: 2009-01-06 12:46:49 -0500 (Tue, 06 Jan 2009)
New Revision: 82634
Added:
projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/support/Result.java
Modified:
projects/aop/trunk/asintegration-core/src/main/org/jboss/aop/classpool/BasicClassPoolDomain.java
projects/aop/trunk/asintegration-core/src/main/org/jboss/aop/classpool/DelegatingClassPool.java
projects/aop/trunk/asintegration-mc/src/main/org/jboss/aop/classpool/jbosscl/JBossClClassPoolDomain.java
projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithModuleDependencySanityTestCase.java
projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithPackageDependencySanityTestCase.java
projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithReExportModuleSanityTestCase.java
projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithReExportPackageSanityTestCase.java
projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithUsesPackageSanityTestCase.java
projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithModuleDependencyTestCase.java
projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithPackageDependencyTestCase.java
projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithReExportModuleTestCase.java
projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithReExportPackageTestCase.java
projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithUsesPackageTestCase.java
projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/JBossClClassPoolTest.java
Log:
[JBAOP-666] Check if classloader is undeployed as is done in the original tests
Modified: projects/aop/trunk/asintegration-core/src/main/org/jboss/aop/classpool/BasicClassPoolDomain.java
===================================================================
--- projects/aop/trunk/asintegration-core/src/main/org/jboss/aop/classpool/BasicClassPoolDomain.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-core/src/main/org/jboss/aop/classpool/BasicClassPoolDomain.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -120,7 +120,7 @@
String packageName = ClassLoaderUtils.getPackageName(classname);
for (DelegatingClassPool pool : getPoolsForPackage(packageName))
{
- clazz = attemptLoadFromPool(pool, classname, resourceName, create);
+ clazz = pool.loadLocally(classname, resourceName, create);
if (clazz != null)
{
break;
@@ -134,20 +134,6 @@
return clazz;
}
- protected CtClass attemptLoadFromPool(DelegatingClassPool pool, String classname, String resourceName, boolean create)
- {
- CtClass clazz = null;
- if (pool.isLocalResource(resourceName))
- {
- clazz = pool.getCachedLocally(classname);
- if (clazz == null && create)
- {
- return pool.createCtClass(classname, true);
- }
- }
- return clazz;
- }
-
public CtClass getCachedOrCreateInternalFromParent(DelegatingClassPool initiatingPool, String classname, String resourceName, boolean create)
{
return parent.getCachedOrCreateInternal(initiatingPool, classname, resourceName, create);
Modified: projects/aop/trunk/asintegration-core/src/main/org/jboss/aop/classpool/DelegatingClassPool.java
===================================================================
--- projects/aop/trunk/asintegration-core/src/main/org/jboss/aop/classpool/DelegatingClassPool.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-core/src/main/org/jboss/aop/classpool/DelegatingClassPool.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -76,6 +76,19 @@
return super.get(classname);
}
+ public CtClass loadLocally(String classname, String resourceName, boolean create)
+ {
+ CtClass clazz = null;
+ if (isLocalResource(resourceName))
+ {
+ clazz = getCachedLocally(classname);
+ if (clazz == null && create)
+ {
+ return createCtClass(classname, true);
+ }
+ }
+ return clazz;
+ }
/**
* Overrides ClassPool.get0() so that we can look up classes without caching them in the initiating pool.
Modified: projects/aop/trunk/asintegration-mc/src/main/org/jboss/aop/classpool/jbosscl/JBossClClassPoolDomain.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/main/org/jboss/aop/classpool/jbosscl/JBossClClassPoolDomain.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-mc/src/main/org/jboss/aop/classpool/jbosscl/JBossClClassPoolDomain.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -126,7 +126,7 @@
for (DelegateLoader delegate : delegates)
{
//TODO This is a hack, need a proper API in jboss-cl
- System.out.println("Commented out loader from delegate in JBossClClassPoolDomain");
+ System.err.println("Commented out loader from delegate in JBossClClassPoolDomain");
ClassLoader loader = null;//delegate.getBaseClassLoader("a BaseClassLoader", "");
//TODO Should be a nicer way to do this
@@ -144,7 +144,7 @@
//Try to check the initiating pool itself
if (clazz == null && initiatingPool != null)
{
- clazz = attemptLoadFromPool(initiatingPool, classname, resourceName, create);
+ clazz = initiatingPool.loadLocally(classname, resourceName, create);
}
if (clazz == null && isParentAfter())
Added: projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/support/Result.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/support/Result.java (rev 0)
+++ projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/support/Result.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.aop.classpool.jbosscl.support;
+
+/**
+ *
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class Result
+{
+ private TestVFSClassLoaderFactory factory;
+
+ public TestVFSClassLoaderFactory getFactory()
+ {
+ return factory;
+ }
+
+ public void setFactory(TestVFSClassLoaderFactory factory)
+ {
+ this.factory = factory;
+ }
+}
Modified: projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithModuleDependencySanityTestCase.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithModuleDependencySanityTestCase.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithModuleDependencySanityTestCase.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -25,6 +25,7 @@
import org.jboss.classloading.spi.version.VersionRange;
import org.jboss.test.aop.classpool.jbosscl.support.BundleInfoBuilder;
+import org.jboss.test.aop.classpool.jbosscl.support.Result;
/**
* Tests the behaviour of the new classloaders so that we can get the same in the new classpools
@@ -51,23 +52,25 @@
public void testImportNoVersionCheck() throws Exception
{
ClassLoader clA = null;
+ Result resultA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("ModuleA").
createPackage(PACKAGE_A);
- clA = createClassLoader("A", builderA, JAR_A_1);
+ clA = createClassLoader(resultA, "A", builderA, JAR_A_1);
Class<?> aFromA = assertLoadClass(CLASS_A, clA, clA);
assertCannotLoadClass(clA, CLASS_B);
ClassLoader clB = null;
+ Result resultB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createModule("ModuleB").
createRequireModule("ModuleA");
- clB = createClassLoader("B", builderB, JAR_B_1);
+ clB = createClassLoader(resultB, "B", builderB, JAR_B_1);
Class<?> aFromA1 = assertLoadClass(CLASS_A, clA, clA);
assertSame(aFromA, aFromA1);
@@ -83,33 +86,36 @@
Class<?> aFromA1 = assertLoadClass(CLASS_A, clA);
assertSame(aFromA, aFromA1);
assertCannotLoadClass(clA, CLASS_B);
- //TODO assertNoClassLoader(b);
+ assertNoClassLoader(resultB);
}
finally
{
unregisterClassLoader(clA);
}
+ assertNoClassLoader(resultA);
}
public void testImportVersionCheck() throws Exception
{
ClassLoader clA = null;
+ Result resultA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("ModuleA", "1.0.0").
createPackage(PACKAGE_A);
- clA = createClassLoader("A", builderA, JAR_A_1);
+ clA = createClassLoader(resultA, "A", builderA, JAR_A_1);
Class<?> classA = assertLoadClass(CLASS_A, clA);
assertCannotLoadClass(clA, CLASS_B);
ClassLoader clB = null;
+ Result resultB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createRequireModule("ModuleA", new VersionRange("1.0.0", "2.0.0")).
createPackage(PACKAGE_B);
- clB = createClassLoader("B", builderB, JAR_B_1);
+ clB = createClassLoader(resultB, "B", builderB, JAR_B_1);
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -121,6 +127,8 @@
{
unregisterClassLoader(clB);
}
+ assertNoClassLoader(resultB);
+
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -129,19 +137,22 @@
{
unregisterClassLoader(clA);
}
+ assertNoClassLoader(resultA);
}
public void testImportVersionCheckFailed() throws Exception
{
ClassLoader clA = null;
+ Result resultA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("ModuleA", "3.0.0").
createPackage(PACKAGE_A);
- clA = createClassLoader("A", builderA, JAR_A_1);
+ clA = createClassLoader(resultA, "A", builderA, JAR_A_1);
Class<?> classA = assertLoadClass(CLASS_A, clA);
assertCannotLoadClass(clA, CLASS_B);
+ Result resultB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
@@ -149,7 +160,7 @@
createPackage(PACKAGE_B);
try
{
- createClassLoader("B", builderB, JAR_B_1);
+ createClassLoader(resultB, "B", builderB, JAR_B_1);
fail("Should not have been able to create loader");
}
catch(NoSuchClassLoaderException expected)
@@ -158,11 +169,14 @@
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
+ assertNoClassLoader(resultB);
}
finally
{
unregisterClassLoader("B");
}
+ assertNoClassLoader(resultB);
+
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -171,6 +185,7 @@
{
unregisterClassLoader(clA);
}
+ assertNoClassLoader(resultA);
}
//These are my extra tests
@@ -179,23 +194,25 @@
ClassLoader clAModuleX = null;
ClassLoader clAModuleA = null;
ClassLoader clAModuleY = null;
-
+ Result rAX = new Result();
+ Result rAA = new Result();
+ Result rAY = new Result();
try
{
BundleInfoBuilder builderAX = BundleInfoBuilder.getBuilder().
createModule("ModuleX").
createPackage(PACKAGE_A);
- clAModuleX = createClassLoader("X", builderAX, JAR_A_1);
+ clAModuleX = createClassLoader(rAX, "X", builderAX, JAR_A_1);
BundleInfoBuilder builderAA = BundleInfoBuilder.getBuilder().
createModule("ModuleA").
createPackage(PACKAGE_A);
- clAModuleA = createClassLoader("A", builderAA, JAR_A_1);
+ clAModuleA = createClassLoader(rAA, "A", builderAA, JAR_A_1);
BundleInfoBuilder builderAY = BundleInfoBuilder.getBuilder().
createModule("ModuleY").
createPackage(PACKAGE_A);
- clAModuleY = createClassLoader("Y", builderAY, JAR_A_1);
+ clAModuleY = createClassLoader(rAY, "Y", builderAY, JAR_A_1);
Class<?> classAX = assertLoadClass(CLASS_A, clAModuleX);
Class<?> classAA = assertLoadClass(CLASS_A, clAModuleA);
@@ -205,12 +222,13 @@
assertCannotLoadClass(clAModuleY, CLASS_B);
ClassLoader clB = null;
+ Result resultB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createRequireModule("ModuleA").
createPackage(PACKAGE_B);
- clB = createClassLoader("B", builderB, JAR_B_1);
+ clB = createClassLoader(resultB, "B", builderB, JAR_B_1);
Class<?> classAX1 = assertLoadClass(CLASS_A, clAModuleX);
assertSame(classAX, classAX1);
Class<?> classAA1 = assertLoadClass(CLASS_A, clAModuleA);
@@ -229,6 +247,8 @@
{
unregisterClassLoader(clB);
}
+ assertNoClassLoader(resultB);
+
Class<?> classAX1 = assertLoadClass(CLASS_A, clAModuleX);
assertSame(classAX, classAX1);
Class<?> classAA1 = assertLoadClass(CLASS_A, clAModuleA);
@@ -245,6 +265,9 @@
unregisterClassLoader(clAModuleA);
unregisterClassLoader(clAModuleX);
}
+ assertNoClassLoader(rAY);
+ assertNoClassLoader(rAA);
+ assertNoClassLoader(rAX);
}
public void testSeveralModulesWithSameNamesDifferentVersions() throws Exception
@@ -252,23 +275,25 @@
ClassLoader clAModuleA1 = null;
ClassLoader clAModuleA2 = null;
ClassLoader clAModuleA3 = null;
-
+ Result rA1 = new Result();
+ Result rA2 = new Result();
+ Result rA3 = new Result();
try
{
BundleInfoBuilder builderA1 = BundleInfoBuilder.getBuilder().
createModule("ModuleA", "1.0.0").
createPackage(PACKAGE_A);
- clAModuleA1 = createClassLoader("X", builderA1, JAR_A_1);
+ clAModuleA1 = createClassLoader(rA1, "X", builderA1, JAR_A_1);
BundleInfoBuilder builderA2 = BundleInfoBuilder.getBuilder().
createModule("ModuleA", "2.0.0").
createPackage(PACKAGE_A);
- clAModuleA2 = createClassLoader("A", builderA2, JAR_A_1);
+ clAModuleA2 = createClassLoader(rA2, "A", builderA2, JAR_A_1);
BundleInfoBuilder builderA3 = BundleInfoBuilder.getBuilder().
createModule("ModuleA", "3.0.0").
createPackage(PACKAGE_A);
- clAModuleA3 = createClassLoader("Y", builderA3, JAR_A_1);
+ clAModuleA3 = createClassLoader(rA3, "Y", builderA3, JAR_A_1);
Class<?> classAX = assertLoadClass(CLASS_A, clAModuleA1);
Class<?> classAA = assertLoadClass(CLASS_A, clAModuleA2);
@@ -278,12 +303,13 @@
assertCannotLoadClass(clAModuleA3, CLASS_B);
ClassLoader clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createRequireModule("ModuleA", new VersionRange("2.0.0", true, "3.0.0", false)).
createPackage(PACKAGE_B);
- clB = createClassLoader("B", builderB, JAR_B_1);
+ clB = createClassLoader(rB, "B", builderB, JAR_B_1);
Class<?> classAX1 = assertLoadClass(CLASS_A, clAModuleA1);
assertSame(classAX, classAX1);
Class<?> classAA1 = assertLoadClass(CLASS_A, clAModuleA2);
@@ -302,6 +328,8 @@
{
unregisterClassLoader(clB);
}
+ assertNoClassLoader(rB);
+
Class<?> classAX1 = assertLoadClass(CLASS_A, clAModuleA1);
assertSame(classAX, classAX1);
Class<?> classAA1 = assertLoadClass(CLASS_A, clAModuleA2);
@@ -318,6 +346,8 @@
unregisterClassLoader(clAModuleA2);
unregisterClassLoader(clAModuleA1);
}
-
+ assertNoClassLoader(rA1);
+ assertNoClassLoader(rA2);
+ assertNoClassLoader(rA3);
}
}
Modified: projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithPackageDependencySanityTestCase.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithPackageDependencySanityTestCase.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithPackageDependencySanityTestCase.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -25,6 +25,7 @@
import org.jboss.classloading.spi.version.VersionRange;
import org.jboss.test.aop.classpool.jbosscl.support.BundleInfoBuilder;
+import org.jboss.test.aop.classpool.jbosscl.support.Result;
/**
* Tests the behaviour of the new classloaders so that we can get the same in the new classpools
@@ -51,22 +52,24 @@
public void testImportNoVersionCheck() throws Exception
{
ClassLoader clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("ModuleA").
createPackage(PACKAGE_A);
- clA = createClassLoader("A", builderA, JAR_A_1);
+ clA = createClassLoader(rA, "A", builderA, JAR_A_1);
Class<?> classA = assertLoadClass(CLASS_A, clA);
assertCannotLoadClass(clA, CLASS_B);
ClassLoader clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createPackage(PACKAGE_B).
createRequirePackage(PACKAGE_A);
- clB = createClassLoader("B", builderB, JAR_B_1);
+ clB = createClassLoader(rB, "B", builderB, JAR_B_1);
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -78,6 +81,8 @@
{
unregisterClassLoader(clB);
}
+ assertNoClassLoader(rB);
+
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -86,27 +91,30 @@
{
unregisterClassLoader(clA);
}
+ assertNoClassLoader(rA);
}
public void testImportVersionCheck() throws Exception
{
ClassLoader clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("ModuleA").
createPackage(PACKAGE_A, "1.0.0");
- clA = createClassLoader("A", builderA, JAR_A_1);
+ clA = createClassLoader(rA, "A", builderA, JAR_A_1);
Class<?> classA = assertLoadClass(CLASS_A, clA);
assertCannotLoadClass(clA, CLASS_B);
ClassLoader clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createPackage(PACKAGE_B).
createRequirePackage(PACKAGE_A, new VersionRange("1.0.0", "2.0.0"));
- clB = createClassLoader("B", builderB, JAR_B_1);
+ clB = createClassLoader(rB, "B", builderB, JAR_B_1);
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -118,6 +126,8 @@
{
unregisterClassLoader(clB);
}
+ assertNoClassLoader(rB);
+
assertLoadClass(CLASS_A, clA);
assertCannotLoadClass(clA, CLASS_B);
}
@@ -125,20 +135,23 @@
{
unregisterClassLoader(clA);
}
+ assertNoClassLoader(rA);
}
public void testImportVersionCheckFailed() throws Exception
{
ClassLoader clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("ModuleA").
createPackage(PACKAGE_A, "3.0.0");
- clA = createClassLoader("A", builderA, JAR_A_1);
+ clA = createClassLoader(rA, "A", builderA, JAR_A_1);
Class<?> classA = assertLoadClass(CLASS_A, clA);
assertCannotLoadClass(clA, CLASS_B);
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
@@ -146,7 +159,7 @@
createRequirePackage(PACKAGE_A, new VersionRange("1.0.0", "2.0.0"));
try
{
- createClassLoader("B", builderB, JAR_B_1);
+ createClassLoader(rB, "B", builderB, JAR_B_1);
fail("Should not have been able to create loader");
}
catch(NoSuchClassLoaderException expected)
@@ -177,22 +190,25 @@
ClassLoader clA1 = null;
ClassLoader clA2 = null;
ClassLoader clA3 = null;
+ Result rA1 = new Result();
+ Result rA2 = new Result();
+ Result rA3 = new Result();
try
{
BundleInfoBuilder builderA1 = BundleInfoBuilder.getBuilder().
createModule("PackageA").
createPackage(PACKAGE_A, "1.0.0");
- clA1 = createClassLoader("A1", builderA1, JAR_A_1);
+ clA1 = createClassLoader(rA1, "A1", builderA1, JAR_A_1);
BundleInfoBuilder builderA2 = BundleInfoBuilder.getBuilder().
createModule("PackageA").
createPackage(PACKAGE_A, "2.0.0");
- clA2 = createClassLoader("A2", builderA2, JAR_A_1);
+ clA2 = createClassLoader(rA2, "A2", builderA2, JAR_A_1);
BundleInfoBuilder builderA3 = BundleInfoBuilder.getBuilder().
createModule("PackageA").
createPackage(PACKAGE_A, "3.0.0");
- clA3 = createClassLoader("A3", builderA3, JAR_A_1);
+ clA3 = createClassLoader(rA3, "A3", builderA3, JAR_A_1);
Class<?> classA1 = assertLoadClass(CLASS_A, clA1);
Class<?> classA2 = assertLoadClass(CLASS_A, clA2);
@@ -202,12 +218,13 @@
assertCannotLoadClass(clA3, CLASS_B);
ClassLoader clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createPackage(PACKAGE_B).
createRequirePackage(PACKAGE_A, new VersionRange("1.0.0", false, "2.0.0", true));
- clB = createClassLoader("B", builderB, JAR_B_1);
+ clB = createClassLoader(rB, "B", builderB, JAR_B_1);
Class<?> classA11 = assertLoadClass(CLASS_A, clA1);
assertSame(classA1, classA11);
Class<?> classA21 = assertLoadClass(CLASS_A, clA2);
@@ -226,6 +243,7 @@
{
unregisterClassLoader(clB);
}
+ assertNoClassLoader(rB);
Class<?> classA11 = assertLoadClass(CLASS_A, clA1);
assertSame(classA1, classA11);
Class<?> classA21 = assertLoadClass(CLASS_A, clA2);
@@ -242,6 +260,9 @@
unregisterClassLoader(clA2);
unregisterClassLoader(clA1);
}
+ assertNoClassLoader(rA1);
+ assertNoClassLoader(rA2);
+ assertNoClassLoader(rA3);
}
}
Modified: projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithReExportModuleSanityTestCase.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithReExportModuleSanityTestCase.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithReExportModuleSanityTestCase.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -24,6 +24,7 @@
import junit.framework.Test;
import org.jboss.test.aop.classpool.jbosscl.support.BundleInfoBuilder;
+import org.jboss.test.aop.classpool.jbosscl.support.Result;
/**
* Tests the behaviour of the new classloaders so that we can get the same in the new classpools
@@ -49,24 +50,26 @@
public void testReExport() throws Exception
{
ClassLoader clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("a").
createPackage(PACKAGE_A);
- clA = createClassLoader("A", builderA, JAR_A_1);
+ clA = createClassLoader(rA, "A", builderA, JAR_A_1);
Class<?> classA = assertLoadClass(CLASS_A, clA);
assertCannotLoadClass(clA, CLASS_B);
assertCannotLoadClass(clA, CLASS_C);
ClassLoader clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createModule("b").
createPackage(PACKAGE_B).
createReExportModule("a");
- clB = createClassLoader("B", builderB, JAR_B_1);
+ clB = createClassLoader(rB, "B", builderB, JAR_B_1);
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -76,11 +79,12 @@
assertCannotLoadClass(clB, CLASS_C);
ClassLoader clC = null;
+ Result rC = new Result();
try
{
BundleInfoBuilder builderC = BundleInfoBuilder.getBuilder().
createRequireModule("b");
- clC = createClassLoader("C", builderC, JAR_C_1);
+ clC = createClassLoader(rC, "C", builderC, JAR_C_1);
classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
@@ -101,6 +105,7 @@
{
unregisterClassLoader(clC);
}
+ assertNoClassLoader(rC);
classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -115,6 +120,7 @@
{
unregisterClassLoader(clB);
}
+ assertNoClassLoader(rB);
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -124,29 +130,32 @@
{
unregisterClassLoader(clA);
}
+ assertNoClassLoader(rA);
}
public void testNoReExport() throws Exception
{
ClassLoader clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("a").
createPackage(PACKAGE_A);
- clA = createClassLoader("A", builderA, JAR_A_1);
+ clA = createClassLoader(rA, "A", builderA, JAR_A_1);
Class<?> classA = assertLoadClass(CLASS_A, clA);
assertCannotLoadClass(clA, CLASS_B);
assertCannotLoadClass(clA, CLASS_C);
ClassLoader clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createModule("b").
createPackage(PACKAGE_B).
createReExportModule("a");
- clB = createClassLoader("B", builderB, JAR_B_1);
+ clB = createClassLoader(rB, "B", builderB, JAR_B_1);
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -157,11 +166,12 @@
assertCannotLoadClass(clB, CLASS_C);
ClassLoader clC = null;
+ Result rC = new Result();
try
{
BundleInfoBuilder builderC = BundleInfoBuilder.getBuilder().
createRequirePackage(PACKAGE_B);
- clC = createClassLoader("C", builderC, JAR_C_1);
+ clC = createClassLoader(rC, "C", builderC, JAR_C_1);
classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
@@ -181,6 +191,7 @@
{
unregisterClassLoader(clC);
}
+ assertNoClassLoader(rC);
classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -195,6 +206,7 @@
{
unregisterClassLoader(clB);
}
+ assertNoClassLoader(rB);
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -204,5 +216,6 @@
{
unregisterClassLoader(clA);
}
+ assertNoClassLoader(rA);
}
}
Modified: projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithReExportPackageSanityTestCase.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithReExportPackageSanityTestCase.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithReExportPackageSanityTestCase.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -24,6 +24,7 @@
import junit.framework.Test;
import org.jboss.test.aop.classpool.jbosscl.support.BundleInfoBuilder;
+import org.jboss.test.aop.classpool.jbosscl.support.Result;
/**
* Tests the behaviour of the new classloaders so that we can get the same in the new classpools
@@ -49,17 +50,19 @@
public void testReExport() throws Exception
{
ClassLoader clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("a").
createPackage(PACKAGE_A);
- clA = createClassLoader("A", builderA, JAR_A_1);
+ clA = createClassLoader(rA, "A", builderA, JAR_A_1);
Class<?> classA = assertLoadClass(CLASS_A, clA);
assertCannotLoadClass(clA, CLASS_B);
assertCannotLoadClass(clA, CLASS_C);
ClassLoader clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
@@ -67,7 +70,7 @@
createPackage(PACKAGE_B).
createReExportPackage(PACKAGE_A);
- clB = createClassLoader("B", builderB, JAR_B_1);
+ clB = createClassLoader(rB, "B", builderB, JAR_B_1);
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -78,11 +81,12 @@
assertCannotLoadClass(clB, CLASS_C);
ClassLoader clC = null;
+ Result rC = new Result();
try
{
BundleInfoBuilder builderC = BundleInfoBuilder.getBuilder().
createRequireModule("b");
- clC = createClassLoader("C", builderC, JAR_C_1);
+ clC = createClassLoader(rC, "C", builderC, JAR_C_1);
classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
@@ -103,6 +107,7 @@
{
unregisterClassLoader(clC);
}
+ assertNoClassLoader(rC);
classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -117,6 +122,7 @@
{
unregisterClassLoader(clB);
}
+ assertNoClassLoader(rB);
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -126,29 +132,32 @@
{
unregisterClassLoader(clA);
}
+ assertNoClassLoader(rA);
}
public void testNoReExport() throws Exception
{
ClassLoader clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("a").
createPackage(PACKAGE_A);
- clA = createClassLoader("A", builderA, JAR_A_1);
+ clA = createClassLoader(rA, "A", builderA, JAR_A_1);
Class<?> classA = assertLoadClass(CLASS_A, clA);
assertCannotLoadClass(clA, CLASS_B);
assertCannotLoadClass(clA, CLASS_C);
ClassLoader clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createModule("b").
createPackage(PACKAGE_B).
createReExportModule("a");
- clB = createClassLoader("B", builderB, JAR_B_1);
+ clB = createClassLoader(rB, "B", builderB, JAR_B_1);
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -159,11 +168,12 @@
assertCannotLoadClass(clB, CLASS_C);
ClassLoader clC = null;
+ Result rC = new Result();
try
{
BundleInfoBuilder builderC = BundleInfoBuilder.getBuilder().
createRequirePackage(PACKAGE_B);
- clC = createClassLoader("C", builderC, JAR_C_1);
+ clC = createClassLoader(rC, "C", builderC, JAR_C_1);
assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
@@ -183,6 +193,7 @@
{
unregisterClassLoader(clC);
}
+ assertNoClassLoader(rC);
assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -197,6 +208,7 @@
{
unregisterClassLoader(clB);
}
+ assertNoClassLoader(rB);
Class<?> classA1 = assertLoadClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadClass(clA, CLASS_B);
@@ -206,5 +218,7 @@
{
unregisterClassLoader(clA);
}
+ assertNoClassLoader(rA);
+
}
}
Modified: projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithUsesPackageSanityTestCase.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithUsesPackageSanityTestCase.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassLoaderWithUsesPackageSanityTestCase.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -24,6 +24,7 @@
import junit.framework.Test;
import org.jboss.test.aop.classpool.jbosscl.support.BundleInfoBuilder;
+import org.jboss.test.aop.classpool.jbosscl.support.Result;
/**
* Tests the behaviour of the new classloaders so that we can get the same in the new classpools
@@ -49,23 +50,24 @@
public void testUsesImport() throws Exception
{
ClassLoader clA1 = null;
-
+ Result rA1 = new Result();
try
{
BundleInfoBuilder builderA1 = BundleInfoBuilder.getBuilder().
createModule("a1").
createPackage(PACKAGE_A);
- clA1 = createClassLoader("A1", builderA1, JAR_A_1);
+ clA1 = createClassLoader(rA1, "A1", builderA1, JAR_A_1);
Class<?> classA = assertLoadClass(CLASS_A, clA1);
ClassLoader clA2 = null;
+ Result rA2 = new Result();
try
{
BundleInfoBuilder builderA2 = BundleInfoBuilder.getBuilder().
createModule("a2").
createUsesPackage(PACKAGE_A);
- clA2 = createClassLoader("A2", builderA2, JAR_A_1);
+ clA2 = createClassLoader(rA2, "A2", builderA2, JAR_A_1);
Class<?> classA1 = assertLoadClass(CLASS_A, clA1);
assertSame(classA, classA1);
classA1 = assertLoadClass(CLASS_A, clA2, clA1);
@@ -75,30 +77,33 @@
{
unregisterClassLoader(clA2);
}
+ assertNoClassLoader(rA2);
assertLoadClass(CLASS_A, clA1);
}
finally
{
unregisterClassLoader(clA1);
}
+ assertNoClassLoader(rA1);
}
public void testUsesNoImport() throws Exception
{
ClassLoader clA1 = null;
-
+ Result rA1 = new Result();
try
{
BundleInfoBuilder builderA1 = BundleInfoBuilder.getBuilder().
createModule("a1").
createUsesPackage(PACKAGE_A);
- clA1 = createClassLoader("A1", builderA1, JAR_A_1);
+ clA1 = createClassLoader(rA1, "A1", builderA1, JAR_A_1);
assertLoadClass(CLASS_A, clA1);
}
finally
{
unregisterClassLoader(clA1);
}
+ assertNoClassLoader(rA1);
}
}
Modified: projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithModuleDependencyTestCase.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithModuleDependencyTestCase.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithModuleDependencyTestCase.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -27,6 +27,7 @@
import org.jboss.classloading.spi.version.VersionRange;
import org.jboss.test.aop.classpool.jbosscl.support.BundleInfoBuilder;
+import org.jboss.test.aop.classpool.jbosscl.support.Result;
/**
* Reproduces the behavior found in ClassLoaderWithModuleDependencySanityTestCase
@@ -52,23 +53,25 @@
public void testImportNoVersionCheck() throws Exception
{
ClassPool clA = null;
+ Result resultA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("ModuleA").
createPackage(PACKAGE_A);
- clA = createClassPool("A", builderA, JAR_A_1);
+ clA = createClassPool(resultA, "A", builderA, JAR_A_1);
CtClass aFromA = assertLoadCtClass(CLASS_A, clA);
assertCannotLoadCtClass(clA, CLASS_B);
ClassPool clB = null;
+ Result resultB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createModule("ModuleB").
createRequireModule("ModuleA");
- clB = createClassPool("B", builderB, JAR_B_1);
+ clB = createClassPool(resultB, "B", builderB, JAR_B_1);
CtClass aFromA1 = assertLoadCtClass(CLASS_A, clA, clA);
assertSame(aFromA, aFromA1);
@@ -84,33 +87,37 @@
CtClass aFromA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(aFromA, aFromA1);
assertCannotLoadCtClass(clA, CLASS_B);
- //TODO assertNoClassLoader(b);
+
+ assertNoClassLoader(resultB);
}
finally
{
unregisterClassPool(clA);
}
+ assertNoClassLoader(resultA);
}
public void testImportVersionCheck() throws Exception
{
ClassPool clA = null;
+ Result resultA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("ModuleA", "1.0.0").
createPackage(PACKAGE_A);
- clA = createClassPool("A", builderA, JAR_A_1);
+ clA = createClassPool(resultA, "A", builderA, JAR_A_1);
CtClass classA = assertLoadCtClass(CLASS_A, clA);
assertCannotLoadCtClass(clA, CLASS_B);
ClassPool clB = null;
+ Result resultB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createRequireModule("ModuleA", new VersionRange("1.0.0", "2.0.0")).
createPackage(PACKAGE_B);
- clB = createClassPool("B", builderB, JAR_B_1);
+ clB = createClassPool(resultB, "B", builderB, JAR_B_1);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -122,6 +129,7 @@
{
unregisterClassPool(clB);
}
+ assertNoClassLoader(resultB);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -130,11 +138,13 @@
{
unregisterClassPool(clA);
}
+ assertNoClassLoader(resultA);
}
public void testImportVersionCheckFailed() throws Exception
{
ClassPool clA = null;
+ Result resultA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
@@ -143,6 +153,7 @@
clA = createClassPool("A", builderA, JAR_A_1);
CtClass classA = assertLoadCtClass(CLASS_A, clA);
assertCannotLoadCtClass(clA, CLASS_B);
+ Result resultB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
@@ -150,7 +161,7 @@
createPackage(PACKAGE_B);
try
{
- createClassPool("B", builderB, JAR_B_1);
+ createClassPool(resultB, "B", builderB, JAR_B_1);
fail("Should not have been able to create loader");
}
catch(NoSuchClassLoaderException expected)
@@ -159,11 +170,14 @@
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
+ assertNoClassLoader(resultB);
}
finally
{
unregisterClassLoader("B");
}
+ assertNoClassLoader(resultB);
+
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -180,23 +194,26 @@
ClassPool clAModuleX = null;
ClassPool clAModuleA = null;
ClassPool clAModuleY = null;
+ Result rAX = new Result();
+ Result rAA = new Result();
+ Result rAY = new Result();
try
{
BundleInfoBuilder builderAX = BundleInfoBuilder.getBuilder().
createModule("ModuleX").
createPackage(PACKAGE_A);
- clAModuleX = createClassPool("X", builderAX, JAR_A_1);
+ clAModuleX = createClassPool(rAX, "X", builderAX, JAR_A_1);
BundleInfoBuilder builderAA = BundleInfoBuilder.getBuilder().
createModule("ModuleA").
createPackage(PACKAGE_A);
- clAModuleA = createClassPool("A", builderAA, JAR_A_1);
+ clAModuleA = createClassPool(rAA, "A", builderAA, JAR_A_1);
BundleInfoBuilder builderAY = BundleInfoBuilder.getBuilder().
createModule("ModuleY").
createPackage(PACKAGE_A);
- clAModuleY = createClassPool("Y", builderAY, JAR_A_1);
+ clAModuleY = createClassPool(rAY, "Y", builderAY, JAR_A_1);
CtClass classAX = assertLoadCtClass(CLASS_A, clAModuleX);
CtClass classAA = assertLoadCtClass(CLASS_A, clAModuleA);
@@ -206,12 +223,13 @@
assertCannotLoadCtClass(clAModuleY, CLASS_B);
ClassPool clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createRequireModule("ModuleA").
createPackage(PACKAGE_B);
- clB = createClassPool("B", builderB, JAR_B_1);
+ clB = createClassPool(rB, "B", builderB, JAR_B_1);
CtClass classAX1 = assertLoadCtClass(CLASS_A, clAModuleX);
assertSame(classAX, classAX1);
CtClass classAA1 = assertLoadCtClass(CLASS_A, clAModuleA);
@@ -230,6 +248,8 @@
{
unregisterClassPool(clB);
}
+ assertNoClassLoader(rB);
+
CtClass classAX1 = assertLoadCtClass(CLASS_A, clAModuleX);
assertSame(classAX, classAX1);
CtClass classAA1 = assertLoadCtClass(CLASS_A, clAModuleA);
@@ -246,6 +266,9 @@
unregisterClassPool(clAModuleA);
unregisterClassPool(clAModuleX);
}
+ assertNoClassLoader(rAY);
+ assertNoClassLoader(rAA);
+ assertNoClassLoader(rAX);
}
public void testSeveralModulesWithSameNamesDifferentVersions() throws Exception
@@ -253,23 +276,26 @@
ClassPool clAModuleA1 = null;
ClassPool clAModuleA2 = null;
ClassPool clAModuleA3 = null;
+ Result rA1 = new Result();
+ Result rA2 = new Result();
+ Result rA3 = new Result();
try
{
BundleInfoBuilder builderA1 = BundleInfoBuilder.getBuilder().
createModule("ModuleA", "1.0.0").
createPackage(PACKAGE_A);
- clAModuleA1 = createClassPool("X", builderA1, JAR_A_1);
+ clAModuleA1 = createClassPool(rA1, "X", builderA1, JAR_A_1);
BundleInfoBuilder builderA2 = BundleInfoBuilder.getBuilder().
createModule("ModuleA", "2.0.0").
createPackage(PACKAGE_A);
- clAModuleA2 = createClassPool("A", builderA2, JAR_A_1);
+ clAModuleA2 = createClassPool(rA2, "A", builderA2, JAR_A_1);
BundleInfoBuilder builderA3 = BundleInfoBuilder.getBuilder().
createModule("ModuleA", "3.0.0").
createPackage(PACKAGE_A);
- clAModuleA3 = createClassPool("Y", builderA3, JAR_A_1);
+ clAModuleA3 = createClassPool(rA3, "Y", builderA3, JAR_A_1);
CtClass classAX = assertLoadCtClass(CLASS_A, clAModuleA1);
CtClass classAA = assertLoadCtClass(CLASS_A, clAModuleA2);
@@ -279,12 +305,13 @@
assertCannotLoadCtClass(clAModuleA3, CLASS_B);
ClassPool clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createRequireModule("ModuleA", new VersionRange("2.0.0", true, "3.0.0", false)).
createPackage(PACKAGE_B);
- clB = createClassPool("B", builderB, JAR_B_1);
+ clB = createClassPool(rB, "B", builderB, JAR_B_1);
CtClass classAX1 = assertLoadCtClass(CLASS_A, clAModuleA1);
assertSame(classAX, classAX1);
CtClass classAA1 = assertLoadCtClass(CLASS_A, clAModuleA2);
@@ -303,6 +330,8 @@
{
unregisterClassPool(clB);
}
+ assertNoClassLoader(rB);
+
CtClass classAX1 = assertLoadCtClass(CLASS_A, clAModuleA1);
assertSame(classAX, classAX1);
CtClass classAA1 = assertLoadCtClass(CLASS_A, clAModuleA2);
@@ -319,7 +348,9 @@
unregisterClassPool(clAModuleA2);
unregisterClassPool(clAModuleA1);
}
-
+ assertNoClassLoader(rA1);
+ assertNoClassLoader(rA2);
+ assertNoClassLoader(rA3);
}
}
Modified: projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithPackageDependencyTestCase.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithPackageDependencyTestCase.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithPackageDependencyTestCase.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -27,6 +27,7 @@
import org.jboss.classloading.spi.version.VersionRange;
import org.jboss.test.aop.classpool.jbosscl.support.BundleInfoBuilder;
+import org.jboss.test.aop.classpool.jbosscl.support.Result;
/**
* Reproduces the behaviour found in ClassLoaderWithPackageDependencySanityTestCase
@@ -50,22 +51,24 @@
public void testImportNoVersionCheck() throws Exception
{
ClassPool clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("ModuleA").
createPackage(PACKAGE_A);
- clA = createClassPool("A", builderA, JAR_A_1);
+ clA = createClassPool(rA, "A", builderA, JAR_A_1);
CtClass classA = assertLoadCtClass(CLASS_A, clA);
assertCannotLoadCtClass(clA, CLASS_B);
ClassPool clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createPackage(PACKAGE_B).
createRequirePackage(PACKAGE_A);
- clB = createClassPool("B", builderB, JAR_B_1);
+ clB = createClassPool(rB, "B", builderB, JAR_B_1);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -77,6 +80,8 @@
{
unregisterClassPool(clB);
}
+ assertNoClassLoader(rB);
+
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -85,27 +90,30 @@
{
unregisterClassPool(clA);
}
+ assertNoClassLoader(rA);
}
public void testImportVersionCheck() throws Exception
{
ClassPool clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("ModuleA").
createPackage(PACKAGE_A, "1.0.0");
- clA = createClassPool("A", builderA, JAR_A_1);
+ clA = createClassPool(rA, "A", builderA, JAR_A_1);
CtClass classA = assertLoadCtClass(CLASS_A, clA);
assertCannotLoadCtClass(clA, CLASS_B);
ClassPool clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createPackage(PACKAGE_B).
createRequirePackage(PACKAGE_A, new VersionRange("1.0.0", "2.0.0"));
- clB = createClassPool("B", builderB, JAR_B_1);
+ clB = createClassPool(rB, "B", builderB, JAR_B_1);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -117,6 +125,8 @@
{
unregisterClassPool(clB);
}
+ assertNoClassLoader(rB);
+
assertLoadCtClass(CLASS_A, clA);
assertCannotLoadCtClass(clA, CLASS_B);
}
@@ -124,20 +134,23 @@
{
unregisterClassPool(clA);
}
+ assertNoClassLoader(rA);
}
public void testImportVersionCheckFailed() throws Exception
{
ClassPool clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("ModuleA").
createPackage(PACKAGE_A, "3.0.0");
- clA = createClassPool("A", builderA, JAR_A_1);
+ clA = createClassPool(rA, "A", builderA, JAR_A_1);
CtClass classA = assertLoadCtClass(CLASS_A, clA);
assertCannotLoadCtClass(clA, CLASS_B);
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
@@ -145,7 +158,7 @@
createRequirePackage(PACKAGE_A, new VersionRange("1.0.0", "2.0.0"));
try
{
- createClassPool("B", builderB, JAR_B_1);
+ createClassPool(rB, "B", builderB, JAR_B_1);
fail("Should not have been able to create loader");
}
catch(NoSuchClassLoaderException expected)
@@ -176,22 +189,25 @@
ClassPool clA1 = null;
ClassPool clA2 = null;
ClassPool clA3 = null;
+ Result rA1 = new Result();
+ Result rA2 = new Result();
+ Result rA3 = new Result();
try
{
BundleInfoBuilder builderA1 = BundleInfoBuilder.getBuilder().
createModule("PackageA").
createPackage(PACKAGE_A, "1.0.0");
- clA1 = createClassPool("A1", builderA1, JAR_A_1);
+ clA1 = createClassPool(rA1, "A1", builderA1, JAR_A_1);
BundleInfoBuilder builderA2 = BundleInfoBuilder.getBuilder().
createModule("PackageA").
createPackage(PACKAGE_A, "2.0.0");
- clA2 = createClassPool("A2", builderA2, JAR_A_1);
+ clA2 = createClassPool(rA2, "A2", builderA2, JAR_A_1);
BundleInfoBuilder builderA3 = BundleInfoBuilder.getBuilder().
createModule("PackageA").
createPackage(PACKAGE_A, "3.0.0");
- clA3 = createClassPool("A3", builderA3, JAR_A_1);
+ clA3 = createClassPool(rA3, "A3", builderA3, JAR_A_1);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA1);
CtClass classA2 = assertLoadCtClass(CLASS_A, clA2);
@@ -201,12 +217,13 @@
assertCannotLoadCtClass(clA3, CLASS_B);
ClassPool clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createPackage(PACKAGE_B).
createRequirePackage(PACKAGE_A, new VersionRange("1.0.0", false, "2.0.0", true));
- clB = createClassPool("B", builderB, JAR_B_1);
+ clB = createClassPool(rB, "B", builderB, JAR_B_1);
CtClass classA11 = assertLoadCtClass(CLASS_A, clA1);
assertSame(classA1, classA11);
CtClass classA21 = assertLoadCtClass(CLASS_A, clA2);
@@ -225,6 +242,7 @@
{
unregisterClassPool(clB);
}
+ assertNoClassLoader(rB);
CtClass classA11 = assertLoadCtClass(CLASS_A, clA1);
assertSame(classA1, classA11);
CtClass classA21 = assertLoadCtClass(CLASS_A, clA2);
@@ -241,6 +259,8 @@
unregisterClassPool(clA2);
unregisterClassPool(clA1);
}
-
+ assertNoClassLoader(rA1);
+ assertNoClassLoader(rA2);
+ assertNoClassLoader(rA3);
}
}
Modified: projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithReExportModuleTestCase.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithReExportModuleTestCase.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithReExportModuleTestCase.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -26,6 +26,7 @@
import junit.framework.Test;
import org.jboss.test.aop.classpool.jbosscl.support.BundleInfoBuilder;
+import org.jboss.test.aop.classpool.jbosscl.support.Result;
/**
* Reproduces the behaviour of ClassLoaderWithReExportModuleSanityTestCase
@@ -49,24 +50,26 @@
public void testReExport() throws Exception
{
ClassPool clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("a").
createPackage(PACKAGE_A);
- clA = createClassPool("A", builderA, JAR_A_1);
+ clA = createClassPool(rA, "A", builderA, JAR_A_1);
CtClass classA = assertLoadCtClass(CLASS_A, clA);
assertCannotLoadCtClass(clA, CLASS_B);
assertCannotLoadCtClass(clA, CLASS_C);
ClassPool clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createModule("b").
createPackage(PACKAGE_B).
createReExportModule("a");
- clB = createClassPool("B", builderB, JAR_B_1);
+ clB = createClassPool(rB, "B", builderB, JAR_B_1);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -77,11 +80,12 @@
assertCannotLoadCtClass(clB, CLASS_C);
ClassPool clC = null;
+ Result rC = new Result();
try
{
BundleInfoBuilder builderC = BundleInfoBuilder.getBuilder().
createRequireModule("b");
- clC = createClassPool("C", builderC, JAR_C_1);
+ clC = createClassPool(rC, "C", builderC, JAR_C_1);
classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
@@ -102,6 +106,7 @@
{
unregisterClassPool(clC);
}
+ assertNoClassLoader(rC);
classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -116,6 +121,7 @@
{
unregisterClassPool(clB);
}
+ assertNoClassLoader(rB);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -125,29 +131,32 @@
{
unregisterClassPool(clA);
}
+ assertNoClassLoader(rA);
}
public void testNoReExport() throws Exception
{
ClassPool clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("a").
createPackage(PACKAGE_A);
- clA = createClassPool("A", builderA, JAR_A_1);
+ clA = createClassPool(rA, "A", builderA, JAR_A_1);
CtClass classA = assertLoadCtClass(CLASS_A, clA);
assertCannotLoadCtClass(clA, CLASS_B);
assertCannotLoadCtClass(clA, CLASS_C);
ClassPool clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createModule("b").
createPackage(PACKAGE_B).
createReExportModule("a");
- clB = createClassPool("B", builderB, JAR_B_1);
+ clB = createClassPool(rB, "B", builderB, JAR_B_1);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -158,11 +167,12 @@
assertCannotLoadCtClass(clB, CLASS_C);
ClassPool clC = null;
+ Result rC = new Result();
try
{
BundleInfoBuilder builderC = BundleInfoBuilder.getBuilder().
createRequirePackage(PACKAGE_B);
- clC = createClassPool("C", builderC, JAR_C_1);
+ clC = createClassPool(rC, "C", builderC, JAR_C_1);
classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
@@ -182,6 +192,7 @@
{
unregisterClassPool(clC);
}
+ assertNoClassLoader(rC);
classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -196,6 +207,7 @@
{
unregisterClassPool(clB);
}
+ assertNoClassLoader(rB);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -205,5 +217,6 @@
{
unregisterClassPool(clA);
}
+ assertNoClassLoader(rA);
}
}
Modified: projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithReExportPackageTestCase.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithReExportPackageTestCase.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithReExportPackageTestCase.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -26,6 +26,7 @@
import junit.framework.Test;
import org.jboss.test.aop.classpool.jbosscl.support.BundleInfoBuilder;
+import org.jboss.test.aop.classpool.jbosscl.support.Result;
/**
* Reproduces ClassLoaderWithReExportPackageSanityTestCase
@@ -49,17 +50,19 @@
public void testReExport() throws Exception
{
ClassPool clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("a").
createPackage(PACKAGE_A);
- clA = createClassPool("A", builderA, JAR_A_1);
+ clA = createClassPool(rA, "A", builderA, JAR_A_1);
CtClass classA = assertLoadCtClass(CLASS_A, clA);
assertCannotLoadCtClass(clA, CLASS_B);
assertCannotLoadCtClass(clA, CLASS_C);
ClassPool clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
@@ -67,7 +70,7 @@
createPackage(PACKAGE_B).
createReExportPackage(PACKAGE_A);
- clB = createClassPool("B", builderB, JAR_B_1);
+ clB = createClassPool(rB, "B", builderB, JAR_B_1);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -78,11 +81,12 @@
assertCannotLoadCtClass(clB, CLASS_C);
ClassPool clC = null;
+ Result rC = new Result();
try
{
BundleInfoBuilder builderC = BundleInfoBuilder.getBuilder().
createRequireModule("b");
- clC = createClassPool("C", builderC, JAR_C_1);
+ clC = createClassPool(rC, "C", builderC, JAR_C_1);
classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
@@ -103,6 +107,7 @@
{
unregisterClassPool(clC);
}
+ assertNoClassLoader(rC);
classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -117,6 +122,7 @@
{
unregisterClassPool(clB);
}
+ assertNoClassLoader(rB);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -126,29 +132,32 @@
{
unregisterClassPool(clA);
}
+ assertNoClassLoader(rA);
}
public void testNoReExport() throws Exception
{
ClassPool clA = null;
+ Result rA = new Result();
try
{
BundleInfoBuilder builderA = BundleInfoBuilder.getBuilder().
createModule("a").
createPackage(PACKAGE_A);
- clA = createClassPool("A", builderA, JAR_A_1);
+ clA = createClassPool(rA, "A", builderA, JAR_A_1);
CtClass classA = assertLoadCtClass(CLASS_A, clA);
assertCannotLoadCtClass(clA, CLASS_B);
assertCannotLoadCtClass(clA, CLASS_C);
ClassPool clB = null;
+ Result rB = new Result();
try
{
BundleInfoBuilder builderB = BundleInfoBuilder.getBuilder().
createModule("b").
createPackage(PACKAGE_B).
createReExportModule("a");
- clB = createClassPool("B", builderB, JAR_B_1);
+ clB = createClassPool(rB, "B", builderB, JAR_B_1);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -159,11 +168,12 @@
assertCannotLoadCtClass(clB, CLASS_C);
ClassPool clC = null;
+ Result rC = new Result();
try
{
BundleInfoBuilder builderC = BundleInfoBuilder.getBuilder().
createRequirePackage(PACKAGE_B);
- clC = createClassPool("C", builderC, JAR_C_1);
+ clC = createClassPool(rC, "C", builderC, JAR_C_1);
classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
@@ -183,6 +193,7 @@
{
unregisterClassPool(clC);
}
+ assertNoClassLoader(rC);
classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -197,6 +208,7 @@
{
unregisterClassPool(clB);
}
+ assertNoClassLoader(rB);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA);
assertSame(classA, classA1);
assertCannotLoadCtClass(clA, CLASS_B);
@@ -206,5 +218,6 @@
{
unregisterClassPool(clA);
}
+ assertNoClassLoader(rA);
}
}
Modified: projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithUsesPackageTestCase.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithUsesPackageTestCase.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/ClassPoolWithUsesPackageTestCase.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -26,6 +26,7 @@
import junit.framework.Test;
import org.jboss.test.aop.classpool.jbosscl.support.BundleInfoBuilder;
+import org.jboss.test.aop.classpool.jbosscl.support.Result;
/**
* Reproduces ClassLoaderWithUsesPackageSanityTestCase
@@ -49,23 +50,24 @@
public void testUsesImport() throws Exception
{
ClassPool clA1 = null;
-
+ Result rA1 = new Result();
try
{
BundleInfoBuilder builderA1 = BundleInfoBuilder.getBuilder().
createModule("a1").
createPackage(PACKAGE_A);
- clA1 = createClassPool("A1", builderA1, JAR_A_1);
+ clA1 = createClassPool(rA1, "A1", builderA1, JAR_A_1);
CtClass classA = assertLoadCtClass(CLASS_A, clA1);
ClassPool clA2 = null;
+ Result rA2 = new Result();
try
{
BundleInfoBuilder builderA2 = BundleInfoBuilder.getBuilder().
createModule("a2").
createUsesPackage(PACKAGE_A);
- clA2 = createClassPool("A2", builderA2, JAR_A_1);
+ clA2 = createClassPool(rA2, "A2", builderA2, JAR_A_1);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA1);
assertSame(classA, classA1);
classA1 = assertLoadCtClass(CLASS_A, clA2, clA1);
@@ -75,6 +77,7 @@
{
unregisterClassPool(clA2);
}
+ assertNoClassLoader(rA2);
CtClass classA1 = assertLoadCtClass(CLASS_A, clA1);
assertSame(classA, classA1);
}
@@ -82,24 +85,26 @@
{
unregisterClassPool(clA1);
}
+ assertNoClassLoader(rA1);
}
public void testUsesNoImport() throws Exception
{
ClassPool clA1 = null;
-
+ Result rA1 = new Result();
try
{
BundleInfoBuilder builderA1 = BundleInfoBuilder.getBuilder().
createModule("a1").
createUsesPackage(PACKAGE_A);
- clA1 = createClassPool("A1", builderA1, JAR_A_1);
+ clA1 = createClassPool(rA1, "A1", builderA1, JAR_A_1);
assertLoadCtClass(CLASS_A, clA1);
}
finally
{
unregisterClassPool(clA1);
}
+ assertNoClassLoader(rA1);
}
}
Modified: projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/JBossClClassPoolTest.java
===================================================================
--- projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/JBossClClassPoolTest.java 2009-01-06 15:27:29 UTC (rev 82633)
+++ projects/aop/trunk/asintegration-mc/src/tests/org/jboss/test/aop/classpool/jbosscl/test/JBossClClassPoolTest.java 2009-01-06 17:46:49 UTC (rev 82634)
@@ -52,6 +52,7 @@
import org.jboss.test.AbstractTestCaseWithSetup;
import org.jboss.test.AbstractTestDelegate;
import org.jboss.test.aop.classpool.jbosscl.support.BundleInfoBuilder;
+import org.jboss.test.aop.classpool.jbosscl.support.Result;
import org.jboss.test.aop.classpool.jbosscl.support.TestVFSClassLoaderFactory;
import org.jboss.test.aop.classpool.jbosscl.support.TestVFSClassLoaderFactoryFactory;
import org.jboss.test.kernel.junit.MicrocontainerTest;
@@ -184,51 +185,96 @@
protected ClassLoader createClassLoader(String name, boolean importAll, URL... urls) throws Exception
{
+ return createClassLoader(null, name, importAll, urls);
+ }
+
+ protected ClassLoader createClassLoader(Result result, String name, boolean importAll, URL... urls) throws Exception
+ {
TestVFSClassLoaderFactory factory = TestVFSClassLoaderFactoryFactory.createClassLoaderFactory(name, importAll, urls);
- return createClassLoader(factory);
+ return createClassLoader(result, factory);
}
protected ClassLoader createClassLoader(String name, BundleInfoBuilder builder, URL... urls) throws Exception
{
+ return createClassLoader(null, name, builder, urls);
+ }
+
+ protected ClassLoader createClassLoader(Result result, String name, BundleInfoBuilder builder, URL... urls) throws Exception
+ {
TestVFSClassLoaderFactory factory = TestVFSClassLoaderFactoryFactory.createClassLoaderFactory(name, builder, urls);
- return createClassLoader(factory);
+ return createClassLoader(result, factory);
}
protected ClassLoader createChildDomainParentFirstClassLoader(String name, String domainName, boolean importAll, URL... urls) throws Exception
{
- return createChildDomainParentFirstClassLoader(name, domainName, importAll, null, urls);
+ return createChildDomainParentFirstClassLoader((Result)null, name, domainName, importAll, urls);
}
+ protected ClassLoader createChildDomainParentFirstClassLoader(Result result, String name, String domainName, boolean importAll, URL... urls) throws Exception
+ {
+ return createChildDomainParentFirstClassLoader(result, name, domainName, importAll, null, urls);
+ }
+
protected ClassLoader createChildDomainParentFirstClassLoader(String name, String domainName, boolean importAll, ClassLoader parent, URL... urls) throws Exception
{
- return createChildDomainClassLoader(name, domainName, null, true, importAll, parent, urls);
+ return createChildDomainParentFirstClassLoader(null, name, domainName, importAll, parent, urls);
}
+ protected ClassLoader createChildDomainParentFirstClassLoader(Result result, String name, String domainName, boolean importAll, ClassLoader parent, URL... urls) throws Exception
+ {
+ return createChildDomainClassLoader(result, name, domainName, null, true, importAll, parent, urls);
+ }
+
protected ClassLoader createChildDomainParentFirstClassLoader(String name, String domainName, String parentDomainName, boolean importAll, URL... urls) throws Exception
{
- return createChildDomainClassLoader(name, domainName, parentDomainName, true, importAll, null, urls);
+ return createChildDomainParentFirstClassLoader(null, name, domainName, parentDomainName, importAll, urls);
}
+ protected ClassLoader createChildDomainParentFirstClassLoader(Result result, String name, String domainName, String parentDomainName, boolean importAll, URL... urls) throws Exception
+ {
+ return createChildDomainClassLoader(result, name, domainName, parentDomainName, true, importAll, null, urls);
+ }
+
protected ClassLoader createChildDomainParentLastClassLoader(String name, String domainName, boolean importAll, URL... urls) throws Exception
{
- return createChildDomainParentLastClassLoader(name, domainName, importAll, null, urls);
+ return createChildDomainParentLastClassLoader((Result)null, name, domainName, importAll, urls);
}
+ protected ClassLoader createChildDomainParentLastClassLoader(Result result, String name, String domainName, boolean importAll, URL... urls) throws Exception
+ {
+ return createChildDomainParentLastClassLoader(result, name, domainName, importAll, null, urls);
+ }
+
protected ClassLoader createChildDomainParentLastClassLoader(String name, String domainName, boolean importAll, ClassLoader parent, URL... urls) throws Exception
{
- return createChildDomainClassLoader(name, domainName, null, false, importAll, parent, urls);
+ return createChildDomainParentLastClassLoader(null, name, domainName, importAll, parent, urls);
}
+
+ protected ClassLoader createChildDomainParentLastClassLoader(Result result, String name, String domainName, boolean importAll, ClassLoader parent, URL... urls) throws Exception
+ {
+ return createChildDomainClassLoader(result, name, domainName, null, false, importAll, parent, urls);
+ }
protected ClassLoader createChildDomainParentLastClassLoader(String name, String domainName, String parentDomainName, boolean importAll, URL... urls) throws Exception
{
- return createChildDomainClassLoader(name, domainName, parentDomainName, false, importAll, null, urls);
+ return createChildDomainParentLastClassLoader(null, name, domainName, parentDomainName, importAll, urls);
}
+ protected ClassLoader createChildDomainParentLastClassLoader(Result result, String name, String domainName, String parentDomainName, boolean importAll, URL... urls) throws Exception
+ {
+ return createChildDomainClassLoader(result, name, domainName, parentDomainName, false, importAll, null, urls);
+ }
+
protected ClassLoader createChildDomainClassLoader(String name, String domainName, String parentDomainName, boolean parentFirst, boolean importAll, ClassLoader parent, URL... urls) throws Exception
{
+ return createChildDomainClassLoader(null, name, domainName, parentDomainName, parentFirst, importAll, parent, urls);
+ }
+
+ protected ClassLoader createChildDomainClassLoader(Result result, String name, String domainName, String parentDomainName, boolean parentFirst, boolean importAll, ClassLoader parent, URL... urls) throws Exception
+ {
TestVFSClassLoaderFactory factory = TestVFSClassLoaderFactoryFactory.createClassLoaderFactory(name, importAll, domainName, parentDomainName, parentFirst, urls);
- ClassLoader classLoader = createClassLoader(factory, parent);
+ ClassLoader classLoader = createClassLoader(result, factory, parent);
ClassLoaderDomain domain = getSystem().getDomain(domainName);
scopedChildDomainsByLoader.put(classLoader, domain);
@@ -242,12 +288,12 @@
return cl;
}
- private ClassLoader createClassLoader(TestVFSClassLoaderFactory factory) throws Exception
+ private ClassLoader createClassLoader(Result result, TestVFSClassLoaderFactory factory) throws Exception
{
- return createClassLoader(factory, null);
+ return createClassLoader(result, factory, null);
}
- private ClassLoader createClassLoader(TestVFSClassLoaderFactory factory, ClassLoader parent) throws Exception
+ private ClassLoader createClassLoader(Result result, TestVFSClassLoaderFactory factory, ClassLoader parent) throws Exception
{
if (parent != null)
{
@@ -256,6 +302,10 @@
KernelDeployment deployment = install(factory);
loaderNameDeploymentRegistry.registerDeployment(factory.getName(), deployment);
+ if (result != null)
+ {
+ result.setFactory(factory);
+ }
ClassLoader loader = assertClassLoader(factory);
Module module = assertModule(getContextName(factory));
registerModule(loader, module);
@@ -349,43 +399,78 @@
protected ClassPool createClassPool(String name, boolean importAll, URL... urls) throws Exception
{
- ClassLoader loader = createClassLoader(name, importAll, urls);
+ return createClassPool(null, name, importAll, urls);
+ }
+
+ protected ClassPool createClassPool(Result result, String name, boolean importAll, URL... urls) throws Exception
+ {
+ ClassLoader loader = createClassLoader(result, name, importAll, urls);
return AspectManager.instance().registerClassLoader(loader);
}
protected ClassPool createClassPool(String name, BundleInfoBuilder builder, URL... urls) throws Exception
{
- ClassLoader loader = createClassLoader(name, builder, urls);
+ return createClassPool(null, name, builder, urls);
+ }
+
+ protected ClassPool createClassPool(Result result, String name, BundleInfoBuilder builder, URL... urls) throws Exception
+ {
+ ClassLoader loader = createClassLoader(result, name, builder, urls);
return AspectManager.instance().registerClassLoader(loader);
}
protected ClassPool createChildDomainParentFirstClassPool(String name, String domainName, boolean importAll, URL... urls) throws Exception
{
- ClassLoader loader = createChildDomainParentFirstClassLoader(name, domainName, importAll, urls);
+ return createChildDomainParentFirstClassPool((Result)null, name, domainName, importAll, urls);
+ }
+
+ protected ClassPool createChildDomainParentFirstClassPool(Result result, String name, String domainName, boolean importAll, URL... urls) throws Exception
+ {
+ ClassLoader loader = createChildDomainParentFirstClassLoader(result, name, domainName, importAll, urls);
return AspectManager.instance().registerClassLoader(loader);
}
protected ClassPool createChildDomainParentFirstClassPool(String name, String domainName, boolean importAll, ClassPool parent, URL... urls) throws Exception
{
- ClassLoader loader = createChildDomainParentFirstClassLoader(name, domainName, importAll, parent.getClassLoader(), urls);
+ return createChildDomainParentFirstClassPool(null, name, domainName, importAll, parent, urls);
+
+ }
+ protected ClassPool createChildDomainParentFirstClassPool(Result result, String name, String domainName, boolean importAll, ClassPool parent, URL... urls) throws Exception
+ {
+ ClassLoader loader = createChildDomainParentFirstClassLoader(result, name, domainName, importAll, parent.getClassLoader(), urls);
return AspectManager.instance().registerClassLoader(loader);
}
protected ClassPool createChildDomainParentFirstClassPool(String name, String domainName, String parentDomainName, boolean importAll, URL... urls) throws Exception
{
- ClassLoader loader = createChildDomainParentFirstClassLoader(name, domainName, parentDomainName, importAll, urls);
+ return createChildDomainParentFirstClassPool(null, name, domainName, parentDomainName, importAll, urls);
+ }
+
+ protected ClassPool createChildDomainParentFirstClassPool(Result result, String name, String domainName, String parentDomainName, boolean importAll, URL... urls) throws Exception
+ {
+ ClassLoader loader = createChildDomainParentFirstClassLoader(result, name, domainName, parentDomainName, importAll, urls);
return AspectManager.instance().registerClassLoader(loader);
}
-
+
protected ClassPool createChildDomainParentLastClassPool(String name, String domainName, boolean importAll, URL... urls) throws Exception
{
- ClassLoader loader = createChildDomainParentLastClassLoader(name, domainName, importAll, urls);
+ return createChildDomainParentLastClassPool((Result)null, name, domainName, importAll, urls);
+ }
+
+ protected ClassPool createChildDomainParentLastClassPool(Result result, String name, String domainName, boolean importAll, URL... urls) throws Exception
+ {
+ ClassLoader loader = createChildDomainParentLastClassLoader(result, name, domainName, importAll, urls);
return AspectManager.instance().registerClassLoader(loader);
}
protected ClassPool createChildDomainParentLastClassPool(String name, String domainName, String parentDomainName, boolean importAll, URL... urls) throws Exception
{
- ClassLoader loader = createChildDomainParentLastClassLoader(name, domainName, parentDomainName, importAll, urls);
+ return createChildDomainParentLastClassPool(null, name, domainName, parentDomainName, importAll, urls);
+ }
+
+ protected ClassPool createChildDomainParentLastClassPool(Result result, String name, String domainName, String parentDomainName, boolean importAll, URL... urls) throws Exception
+ {
+ ClassLoader loader = createChildDomainParentLastClassLoader(result, name, domainName, parentDomainName, importAll, urls);
return AspectManager.instance().registerClassLoader(loader);
}
@@ -436,6 +521,29 @@
assertEquals(domainForModule.getName(), module.getDomainName());
assertEquals(domainForModule.getParentDomainName(), module.getParentDomainName());
}
+
+ protected void assertNoClassLoader(Result result) throws Exception
+ {
+ if (result == null)
+ {
+ throw new IllegalStateException("Null result");
+ }
+ assertNoClassLoader(getContextName(result.getFactory()));
+ }
+
+ protected void assertNoClassLoader(String name) throws Exception
+ {
+ try
+ {
+ Object bean = getBean(name, null);
+ if (bean != null)
+ fail("Should not be here: " + bean);
+ }
+ catch (Throwable t)
+ {
+ checkThrowable(IllegalStateException.class, t);
+ }
+ }
protected void unregisterClassPool(ClassPool pool) throws Exception
{
More information about the jboss-cvs-commits
mailing list