[jboss-cvs] JBossAS SVN: r81565 - in projects/jboss-cl/branches/Branch_2_0: classloader/src/test/java and 4 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Nov 25 13:26:49 EST 2008
Author: adrian at jboss.org
Date: 2008-11-25 13:26:49 -0500 (Tue, 25 Nov 2008)
New Revision: 81565
Added:
projects/jboss-cl/branches/Branch_2_0/classloader/src/test/java/javax/
projects/jboss-cl/branches/Branch_2_0/classloader/src/test/java/javax/swing/
projects/jboss-cl/branches/Branch_2_0/classloader/src/test/java/javax/swing/MutableComboBoxModel.java
Modified:
projects/jboss-cl/branches/Branch_2_0/classloader/src/main/java/org/jboss/classloader/spi/ParentPolicy.java
projects/jboss-cl/branches/Branch_2_0/classloader/src/test/java/org/jboss/test/classloader/domain/test/ParentPolicyUnitTestCase.java
projects/jboss-cl/branches/Branch_2_0/classloading/src/main/java/org/jboss/classloading/spi/dependency/Module.java
Log:
[JBCL-73] - Fix the parent policy for j2seClassLoadingCompliance=false
Modified: projects/jboss-cl/branches/Branch_2_0/classloader/src/main/java/org/jboss/classloader/spi/ParentPolicy.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_0/classloader/src/main/java/org/jboss/classloader/spi/ParentPolicy.java 2008-11-25 18:02:06 UTC (rev 81564)
+++ projects/jboss-cl/branches/Branch_2_0/classloader/src/main/java/org/jboss/classloader/spi/ParentPolicy.java 2008-11-25 18:26:49 UTC (rev 81565)
@@ -40,8 +40,11 @@
/** Standard Java Delegation for java classes */
public static final ParentPolicy BEFORE_BUT_JAVA_ONLY = new ParentPolicy(ClassFilter.JAVA_ONLY, ClassFilter.NOTHING, "BEFORE_BUT_JAVA_ONLY");
+ /** Java and Javax classes before, everything else after */
+ public static final ParentPolicy AFTER_BUT_JAVA_BEFORE = new ParentPolicy(ClassFilter.JAVA_ONLY, ClassFilter.EVERYTHING, "AFTER_BUT_JAVA_BEFORE");
+
/** Java classes before, everything else after */
- public static final ParentPolicy AFTER_BUT_JAVA_BEFORE = new ParentPolicy(ClassFilter.JAVA_ONLY, ClassFilter.EVERYTHING, "AFTER_BUT_JAVA_BEFORE");
+ public static final ParentPolicy AFTER_BUT_ONLY_JAVA_BEFORE = new ParentPolicy(ClassFilter.NOTHING_BUT_JAVA, ClassFilter.EVERYTHING, "AFTER_BUT_JAVA_BEFORE");
/** The before filter */
private ClassFilter beforeFilter;
Added: projects/jboss-cl/branches/Branch_2_0/classloader/src/test/java/javax/swing/MutableComboBoxModel.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_0/classloader/src/test/java/javax/swing/MutableComboBoxModel.java (rev 0)
+++ projects/jboss-cl/branches/Branch_2_0/classloader/src/test/java/javax/swing/MutableComboBoxModel.java 2008-11-25 18:26:49 UTC (rev 81565)
@@ -0,0 +1,33 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2007, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt 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 javax.swing;
+
+/**
+ * MutableComboBoxModel.
+ *
+ * @author <a href="adrian at jboss.com">Adrian Brock</a>
+ * @version $Revision: 1.1 $
+ */
+public class MutableComboBoxModel
+{
+
+}
Modified: projects/jboss-cl/branches/Branch_2_0/classloader/src/test/java/org/jboss/test/classloader/domain/test/ParentPolicyUnitTestCase.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_0/classloader/src/test/java/org/jboss/test/classloader/domain/test/ParentPolicyUnitTestCase.java 2008-11-25 18:02:06 UTC (rev 81564)
+++ projects/jboss-cl/branches/Branch_2_0/classloader/src/test/java/org/jboss/test/classloader/domain/test/ParentPolicyUnitTestCase.java 2008-11-25 18:26:49 UTC (rev 81565)
@@ -21,6 +21,8 @@
*/
package org.jboss.test.classloader.domain.test;
+import javax.swing.MutableComboBoxModel;
+
import junit.framework.Test;
import org.jboss.classloader.spi.ClassLoaderDomain;
@@ -138,10 +140,11 @@
ClassLoaderDomain domain = system.createAndRegisterDomain("test", ParentPolicy.AFTER_BUT_JAVA_BEFORE, null);
MockClassLoaderPolicy policy = createMockClassLoaderPolicy();
- policy.setPathsAndPackageNames(ClassLoaderDomain.class);
+ policy.setPathsAndPackageNames(ClassLoaderDomain.class, MutableComboBoxModel.class);
ClassLoader classLoader = system.registerClassLoaderPolicy(domain, policy);
assertLoadClass(Object.class, classLoader, null, true);
+ assertLoadClass(MutableComboBoxModel.class, classLoader, null, true);
assertLoadClass(ClassLoaderDomain.class, classLoader);
assertPackage(ClassLoaderDomain.class, classLoader);
}
@@ -152,13 +155,45 @@
ClassLoaderDomain domain = system.createAndRegisterDomain("test", ParentPolicy.AFTER_BUT_JAVA_BEFORE, null);
MockClassLoaderPolicy policy = createMockClassLoaderPolicy();
+ policy.setPathsAndPackageNames(MutableComboBoxModel.class);
ClassLoader classLoader = system.registerClassLoaderPolicy(domain, policy);
assertLoadClass(Object.class, classLoader, null, true);
+ assertLoadClass(MutableComboBoxModel.class, classLoader, null, true);
assertLoadClass(ClassLoaderDomain.class, classLoader, null, true);
assertPackage(ClassLoaderDomain.class, classLoader);
}
+ public void testAfterButOnlyJavaBeforeNotReached() throws Exception
+ {
+ ClassLoaderSystem system = createClassLoaderSystem();
+ ClassLoaderDomain domain = system.createAndRegisterDomain("test", ParentPolicy.AFTER_BUT_ONLY_JAVA_BEFORE, null);
+
+ MockClassLoaderPolicy policy = createMockClassLoaderPolicy();
+ policy.setPathsAndPackageNames(ClassLoaderDomain.class);
+ ClassLoader classLoader = system.registerClassLoaderPolicy(domain, policy);
+
+ assertLoadClass(Object.class, classLoader, null, true);
+ assertLoadClass(MutableComboBoxModel.class, classLoader, null, true);
+ assertLoadClass(ClassLoaderDomain.class, classLoader);
+ assertPackage(ClassLoaderDomain.class, classLoader);
+ }
+
+ public void testAfterButOnlyJavaBeforeReached() throws Exception
+ {
+ ClassLoaderSystem system = createClassLoaderSystem();
+ ClassLoaderDomain domain = system.createAndRegisterDomain("test", ParentPolicy.AFTER_BUT_ONLY_JAVA_BEFORE, null);
+
+ MockClassLoaderPolicy policy = createMockClassLoaderPolicy();
+ policy.setPathsAndPackageNames(MutableComboBoxModel.class);
+ ClassLoader classLoader = system.registerClassLoaderPolicy(domain, policy);
+
+ assertLoadClass(Object.class, classLoader, null, true);
+ assertLoadClass(MutableComboBoxModel.class, classLoader, classLoader);
+ assertLoadClass(ClassLoaderDomain.class, classLoader, null, true);
+ assertPackage(ClassLoaderDomain.class, classLoader);
+ }
+
public void testBeforeFilteredNotMatched() throws Exception
{
ClassLoaderSystem system = createClassLoaderSystem();
Modified: projects/jboss-cl/branches/Branch_2_0/classloading/src/main/java/org/jboss/classloading/spi/dependency/Module.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_0/classloading/src/main/java/org/jboss/classloading/spi/dependency/Module.java 2008-11-25 18:02:06 UTC (rev 81564)
+++ projects/jboss-cl/branches/Branch_2_0/classloading/src/main/java/org/jboss/classloading/spi/dependency/Module.java 2008-11-25 18:26:49 UTC (rev 81565)
@@ -290,7 +290,7 @@
if (isJ2seClassLoadingCompliance())
return ParentPolicy.BEFORE;
else
- return ParentPolicy.AFTER_BUT_JAVA_BEFORE;
+ return ParentPolicy.AFTER_BUT_ONLY_JAVA_BEFORE;
}
/**
More information about the jboss-cvs-commits
mailing list