[jboss-cvs] JBossAS SVN: r111485 - in projects/jboss-cl/branches/Branch_2_2: classloading/src/main/java/org/jboss/classloading/spi/metadata and 8 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue May 31 10:18:51 EDT 2011
Author: alesj
Date: 2011-05-31 10:18:50 -0400 (Tue, 31 May 2011)
New Revision: 111485
Added:
projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleExcludedExportFilter.xml
projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleExcludedFilter.xml
projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleIncludedFilter.xml
projects/jboss-cl/branches/Branch_2_2/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleExcludedExportFilter.xml
projects/jboss-cl/branches/Branch_2_2/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleExcludedFilter.xml
projects/jboss-cl/branches/Branch_2_2/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleIncludedFilter.xml
Modified:
projects/jboss-cl/branches/Branch_2_2/
projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/metadata/VFSClassLoaderFactory10.java
projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/test/ManagedObjectVFSClassLoaderFactoryUnitTestCase.java
projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/support/NoopClassLoaderFactory.java
projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/test/VFSClassLoaderFactoryXMLUnitTestCase.java
projects/jboss-cl/branches/Branch_2_2/classloading/src/main/java/org/jboss/classloading/spi/metadata/ClassLoadingMetaData.java
projects/jboss-cl/branches/Branch_2_2/classloading/src/main/java/org/jboss/classloading/spi/metadata/ClassLoadingMetaData10.java
projects/jboss-cl/branches/Branch_2_2/classloading/src/main/java/org/jboss/classloading/spi/metadata/FilterMetaData.java
projects/jboss-cl/branches/Branch_2_2/classloading/src/test/java/org/jboss/test/classloading/metadata/test/ManagedObjectClassLoadingMetaDataUnitTestCase.java
projects/jboss-cl/branches/Branch_2_2/classloading/src/test/java/org/jboss/test/classloading/metadata/xml/test/ClassLoadingDomainMetaDataXmlUnitTestCase.java
projects/jboss-cl/branches/Branch_2_2/classloading/src/test/java/org/jboss/test/classloading/metadata/xml/test/ClassLoadingMetaDataXmlUnitTestCase.java
Log:
Port JBCL-84; better filter xml config
Property changes on: projects/jboss-cl/branches/Branch_2_2
___________________________________________________________________
Modified: svn:mergeinfo
- /projects/jboss-cl/trunk:111073-111080
+ /projects/jboss-cl/trunk:111073-111080,111484
Modified: projects/jboss-cl/branches/Branch_2_2/classloading/src/main/java/org/jboss/classloading/spi/metadata/ClassLoadingMetaData.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading/src/main/java/org/jboss/classloading/spi/metadata/ClassLoadingMetaData.java 2011-05-31 13:36:56 UTC (rev 111484)
+++ projects/jboss-cl/branches/Branch_2_2/classloading/src/main/java/org/jboss/classloading/spi/metadata/ClassLoadingMetaData.java 2011-05-31 14:18:50 UTC (rev 111485)
@@ -21,11 +21,11 @@
*/
package org.jboss.classloading.spi.metadata;
+import java.util.List;
import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlTransient;
-import java.util.List;
-
import org.jboss.classloader.plugins.filter.CombiningClassFilter;
import org.jboss.classloader.spi.ShutdownPolicy;
import org.jboss.classloader.spi.filter.ClassFilter;
@@ -85,6 +85,15 @@
private String excludedExportPackages;
/** The included packages */
+ private FilterMetaData includedMetaData;
+
+ /** The excluded packages */
+ private FilterMetaData excludedMetaData;
+
+ /** The excluded export packages */
+ private FilterMetaData excludedExportMetaData;
+
+ /** The included packages */
private ClassFilter included;
/** The excluded packages */
@@ -213,6 +222,28 @@
}
/**
+ * Get included metadata.
+ *
+ * @return the included filter metadata
+ */
+ public FilterMetaData getIncludedMetaData()
+ {
+ return includedMetaData;
+ }
+
+ /**
+ * The included filter metadata.
+ *
+ * @param includedMetaData the included metadata
+ */
+ @ManagementProperty(name="includedMetaData")
+ @XmlElement(name="included-filter")
+ public void setIncludedMetaData(FilterMetaData includedMetaData)
+ {
+ this.includedMetaData = includedMetaData;
+ }
+
+ /**
* Get a filter for the included packages
*
* @return the included packages
@@ -222,7 +253,9 @@
ClassFilter packageFilter = null;
if (includedPackages != null)
packageFilter = PackageClassFilter.createPackageClassFilterFromString(includedPackages);
-
+ else if (includedMetaData != null)
+ packageFilter = includedMetaData.createFilter();
+
if (packageFilter == null)
return included;
if (included == null)
@@ -264,6 +297,28 @@
}
/**
+ * Get excluded metadata.
+ *
+ * @return the included filter metadata
+ */
+ public FilterMetaData getExcludedMetaData()
+ {
+ return excludedMetaData;
+ }
+
+ /**
+ * The excluded filter metadata.
+ *
+ * @param excludedMetaData the excluded metadata
+ */
+ @ManagementProperty(name="excludedMetaData")
+ @XmlElement(name="excluded-filter")
+ public void setExcludedMetaData(FilterMetaData excludedMetaData)
+ {
+ this.excludedMetaData = excludedMetaData;
+ }
+
+ /**
* Get a filter for the excluded packages
*
* @return the excluded packages
@@ -273,6 +328,8 @@
ClassFilter packageFilter = null;
if (excludedPackages != null)
packageFilter = PackageClassFilter.createPackageClassFilterFromString(excludedPackages);
+ else if (excludedMetaData != null)
+ packageFilter = excludedMetaData.createFilter();
if (packageFilter == null)
return excluded;
@@ -314,7 +371,24 @@
this.excludedExportPackages = excludedExportPackages;
}
+ public FilterMetaData getExcludedExportMetaData()
+ {
+ return excludedExportMetaData;
+ }
+
/**
+ * The excluded export filter metadata.
+ *
+ * @param excludedExportMetaData the excluded export metadata
+ */
+ @ManagementProperty(name="excludedExportMetaData")
+ @XmlElement(name="excluded-export-filter")
+ public void setExcludedExportMetaData(FilterMetaData excludedExportMetaData)
+ {
+ this.excludedExportMetaData = excludedExportMetaData;
+ }
+
+ /**
* Get a filter for the excluded export packages
*
* @return the excluded export packages
@@ -324,6 +398,8 @@
ClassFilter packageFilter = null;
if (excludedExportPackages != null)
packageFilter = PackageClassFilter.createPackageClassFilterFromString(excludedExportPackages);
+ else if (excludedExportMetaData != null)
+ packageFilter = excludedExportMetaData.createFilter();
if (packageFilter == null)
return excludedExport;
Modified: projects/jboss-cl/branches/Branch_2_2/classloading/src/main/java/org/jboss/classloading/spi/metadata/ClassLoadingMetaData10.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading/src/main/java/org/jboss/classloading/spi/metadata/ClassLoadingMetaData10.java 2011-05-31 13:36:56 UTC (rev 111484)
+++ projects/jboss-cl/branches/Branch_2_2/classloading/src/main/java/org/jboss/classloading/spi/metadata/ClassLoadingMetaData10.java 2011-05-31 14:18:50 UTC (rev 111485)
@@ -36,7 +36,7 @@
*/
@JBossXmlSchema(namespace="urn:jboss:classloading:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
@XmlRootElement(name="classloading")
- at XmlType(propOrder = {"requirements", "capabilities", "parentPolicy"})
+ at XmlType(propOrder = {"includedMetaData", "excludedMetaData", "excludedExportMetaData", "requirements", "capabilities", "parentPolicy"})
public class ClassLoadingMetaData10 extends ClassLoadingMetaData
{
/** The serialVersionUID */
Modified: projects/jboss-cl/branches/Branch_2_2/classloading/src/main/java/org/jboss/classloading/spi/metadata/FilterMetaData.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading/src/main/java/org/jboss/classloading/spi/metadata/FilterMetaData.java 2011-05-31 13:36:56 UTC (rev 111484)
+++ projects/jboss-cl/branches/Branch_2_2/classloading/src/main/java/org/jboss/classloading/spi/metadata/FilterMetaData.java 2011-05-31 14:18:50 UTC (rev 111485)
@@ -21,21 +21,22 @@
*/
package org.jboss.classloading.spi.metadata;
+import java.io.Serializable;
+import java.lang.reflect.Constructor;
import javax.xml.bind.annotation.XmlAnyElement;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.XmlValue;
-import java.io.Serializable;
-import java.lang.reflect.Constructor;
-
import org.jboss.classloader.spi.filter.ClassFilter;
import org.jboss.classloader.spi.filter.PackageClassFilter;
import org.jboss.managed.api.annotation.ManagementProperty;
/**
* FilterMetaData.
- *
+ * If the value is string, it's split with ',' and turned into String array.
+ * You can ignore this by setting the ignore-split attribute.
+ *
* @author <a href="ales.justin at jboss.org">Ales Justin</a>
*/
@XmlType(name="filter", propOrder= {"value"})
@@ -46,6 +47,7 @@
private String filterClassName = PackageClassFilter.class.getName();
private Object value;
+ private boolean ignoreSplit;
/**
* Create filter.
@@ -61,11 +63,17 @@
}
else
{
+ Object arg;
+ if (value instanceof String && ignoreSplit == false)
+ arg = ((String) value).split(",");
+ else
+ arg = value;
+
try
{
Class<?> clazz = getClass().getClassLoader().loadClass(filterClassName);
- Constructor<?> ctor = (value != null) ? clazz.getDeclaredConstructor(value.getClass()) : clazz.getDeclaredConstructor();
- return (ClassFilter) ctor.newInstance(value);
+ Constructor<?> ctor = (arg != null) ? clazz.getDeclaredConstructor(arg.getClass()) : clazz.getDeclaredConstructor();
+ return (ClassFilter) ((arg != null) ? ctor.newInstance(arg) : ctor.newInstance());
}
catch (Throwable t)
{
@@ -94,23 +102,30 @@
@ManagementProperty(ignored = true)
public void setValueObject(Object value)
{
- if (value instanceof String)
- setValueString((String) value);
- else
- this.value = value;
+ this.value = value;
}
@XmlValue
@ManagementProperty(ignored = true)
public void setValueString(String value)
{
- if (value != null)
- this.value = value.split(",");
+ this.value = value;
}
+ public boolean isIgnoreSplit()
+ {
+ return ignoreSplit;
+ }
+
+ @XmlAttribute(name = "ignore-split", required = false)
+ public void setIgnoreSplit(boolean ignoreSplit)
+ {
+ this.ignoreSplit = ignoreSplit;
+ }
+
public int hashCode()
{
- return 3 * filterClassName.hashCode() + 7 * (value != null ? value.hashCode() : 0);
+ return 3 * filterClassName.hashCode() + 7 * (value != null ? value.hashCode() : 0) + 11 * Boolean.valueOf(ignoreSplit).hashCode();
}
public boolean equals(Object obj)
@@ -119,7 +134,8 @@
return false;
FilterMetaData other = (FilterMetaData) obj;
- return filterClassName.equals(other.filterClassName) && ClassLoadingMetaData.equals(value, other.value);
+ return filterClassName.equals(other.filterClassName) && ClassLoadingMetaData.equals(value, other.value) && ignoreSplit == other.ignoreSplit;
+
}
@Override
Modified: projects/jboss-cl/branches/Branch_2_2/classloading/src/test/java/org/jboss/test/classloading/metadata/test/ManagedObjectClassLoadingMetaDataUnitTestCase.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading/src/test/java/org/jboss/test/classloading/metadata/test/ManagedObjectClassLoadingMetaDataUnitTestCase.java 2011-05-31 13:36:56 UTC (rev 111484)
+++ projects/jboss-cl/branches/Branch_2_2/classloading/src/test/java/org/jboss/test/classloading/metadata/test/ManagedObjectClassLoadingMetaDataUnitTestCase.java 2011-05-31 14:18:50 UTC (rev 111485)
@@ -25,11 +25,13 @@
import java.util.List;
import java.util.Set;
+import junit.framework.Test;
import org.jboss.classloader.spi.ShutdownPolicy;
import org.jboss.classloading.spi.metadata.CapabilitiesMetaData;
import org.jboss.classloading.spi.metadata.ClassLoadingMetaData;
import org.jboss.classloading.spi.metadata.ClassLoadingMetaDataFactory;
import org.jboss.classloading.spi.metadata.ExportAll;
+import org.jboss.classloading.spi.metadata.FilterMetaData;
import org.jboss.classloading.spi.metadata.ParentPolicyMetaData;
import org.jboss.classloading.spi.metadata.RequirementsMetaData;
import org.jboss.classloading.spi.version.Version;
@@ -42,8 +44,6 @@
import org.jboss.metatype.api.values.MetaValueFactory;
import org.jboss.test.BaseTestCase;
-import junit.framework.Test;
-
/**
* ManagedObjectClassLoadingMetaDataUnitTestCase.
*
@@ -71,7 +71,7 @@
{
ManagedObject result = moFactory.initManagedObject(test, null, null);
assertNotNull(result);
- List<String> expectedProperties = Arrays.asList("name", "version", "domain", "parentDomain", "topLevelClassLoader", "exportAll", "shutdown", "included", "excluded", "excludedExport", "importAll", "parentFirst", "cache", "blackList", "capabilities", "requirements", "parentPolicy");
+ List<String> expectedProperties = Arrays.asList("name", "version", "domain", "parentDomain", "topLevelClassLoader", "exportAll", "shutdown", "included", "includedMetaData", "excluded", "excludedMetaData", "excludedExport", "excludedExportMetaData", "importAll", "parentFirst", "cache", "blackList", "capabilities", "requirements", "parentPolicy");
Set<String> actualProperties = result.getPropertyNames();
for (String expected : expectedProperties)
{
@@ -118,8 +118,11 @@
assertManagedProperty(mo, "exportAll", ExportAll.class, null);
assertManagedProperty(mo, "shutdown", ShutdownPolicy.class, null);
assertManagedProperty(mo, "included", String.class, null);
+ assertManagedProperty(mo, "includedMetaData", FilterMetaData.class, null);
assertManagedProperty(mo, "excluded", String.class, null);
+ assertManagedProperty(mo, "excludedMetaData", FilterMetaData.class, null);
assertManagedProperty(mo, "excludedExport", String.class, null);
+ assertManagedProperty(mo, "excludedExportMetaData", FilterMetaData.class, null);
assertManagedProperty(mo, "importAll", boolean.class, false);
assertManagedProperty(mo, "parentFirst", boolean.class, true);
assertManagedProperty(mo, "capabilities", CapabilitiesMetaData.class, new CapabilitiesMetaData());
@@ -191,6 +194,15 @@
assertManagedProperty(mo, "included", String.class, "Included");
}
+ public void testSetIncludedMetaData() throws Exception
+ {
+ ClassLoadingMetaData test = new ClassLoadingMetaData();
+ FilterMetaData fmd = new FilterMetaData();
+ test.setIncludedMetaData(fmd);
+ ManagedObject mo = assertManagedObject(test);
+ assertManagedProperty(mo, "includedMetaData", FilterMetaData.class, fmd);
+ }
+
public void testSetExcludedPackages() throws Exception
{
ClassLoadingMetaData test = new ClassLoadingMetaData();
@@ -199,6 +211,15 @@
assertManagedProperty(mo, "excluded", String.class, "Excluded");
}
+ public void testSetExcludedMetaData() throws Exception
+ {
+ ClassLoadingMetaData test = new ClassLoadingMetaData();
+ FilterMetaData fmd = new FilterMetaData();
+ test.setExcludedMetaData(fmd);
+ ManagedObject mo = assertManagedObject(test);
+ assertManagedProperty(mo, "excludedMetaData", FilterMetaData.class, fmd);
+ }
+
public void testSetExcludedExportPackages() throws Exception
{
ClassLoadingMetaData test = new ClassLoadingMetaData();
@@ -207,6 +228,15 @@
assertManagedProperty(mo, "excludedExport", String.class, "ExcludedExport");
}
+ public void testSetExcludedExportMetaData() throws Exception
+ {
+ ClassLoadingMetaData test = new ClassLoadingMetaData();
+ FilterMetaData fmd = new FilterMetaData();
+ test.setExcludedExportMetaData(fmd);
+ ManagedObject mo = assertManagedObject(test);
+ assertManagedProperty(mo, "excludedExportMetaData", FilterMetaData.class, fmd);
+ }
+
public void testSetImportAll() throws Exception
{
ClassLoadingMetaData test = new ClassLoadingMetaData();
Modified: projects/jboss-cl/branches/Branch_2_2/classloading/src/test/java/org/jboss/test/classloading/metadata/xml/test/ClassLoadingDomainMetaDataXmlUnitTestCase.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading/src/test/java/org/jboss/test/classloading/metadata/xml/test/ClassLoadingDomainMetaDataXmlUnitTestCase.java 2011-05-31 13:36:56 UTC (rev 111484)
+++ projects/jboss-cl/branches/Branch_2_2/classloading/src/test/java/org/jboss/test/classloading/metadata/xml/test/ClassLoadingDomainMetaDataXmlUnitTestCase.java 2011-05-31 14:18:50 UTC (rev 111485)
@@ -21,6 +21,7 @@
*/
package org.jboss.test.classloading.metadata.xml.test;
+import junit.framework.Test;
import org.jboss.classloader.spi.ShutdownPolicy;
import org.jboss.classloading.spi.metadata.ClassLoadingDomainMetaData;
import org.jboss.classloading.spi.metadata.ClassLoadingDomainMetaData10;
@@ -30,8 +31,6 @@
import org.jboss.javabean.plugins.jaxb.JavaBean20;
import org.jboss.test.classloading.metadata.xml.AbstractJBossXBTest;
-import junit.framework.Test;
-
/**
* ClassLoadingDomainMetaDataXmlUnitTestCase.
*
@@ -124,7 +123,8 @@
{
assertNotNull(expected);
assertNotNull(result);
- assertTrue(result instanceof String[]);
+ if (result instanceof String[] == false)
+ result = assertInstanceOf(result, String.class).split(",");
String[] strings = (String[]) result;
assertEquals(expected.length, strings.length);
for (int i = 0; i < expected.length; i++)
Modified: projects/jboss-cl/branches/Branch_2_2/classloading/src/test/java/org/jboss/test/classloading/metadata/xml/test/ClassLoadingMetaDataXmlUnitTestCase.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading/src/test/java/org/jboss/test/classloading/metadata/xml/test/ClassLoadingMetaDataXmlUnitTestCase.java 2011-05-31 13:36:56 UTC (rev 111484)
+++ projects/jboss-cl/branches/Branch_2_2/classloading/src/test/java/org/jboss/test/classloading/metadata/xml/test/ClassLoadingMetaDataXmlUnitTestCase.java 2011-05-31 14:18:50 UTC (rev 111485)
@@ -24,8 +24,16 @@
import java.util.ArrayList;
import java.util.List;
+import junit.framework.Test;
import org.jboss.classloader.spi.ShutdownPolicy;
-import org.jboss.classloading.spi.metadata.*;
+import org.jboss.classloading.spi.metadata.Capability;
+import org.jboss.classloading.spi.metadata.ClassLoadingMetaData;
+import org.jboss.classloading.spi.metadata.ClassLoadingMetaData10;
+import org.jboss.classloading.spi.metadata.ClassLoadingMetaDataFactory;
+import org.jboss.classloading.spi.metadata.ExportAll;
+import org.jboss.classloading.spi.metadata.FilterMetaData;
+import org.jboss.classloading.spi.metadata.ParentPolicyMetaData;
+import org.jboss.classloading.spi.metadata.Requirement;
import org.jboss.classloading.spi.version.Version;
import org.jboss.classloading.spi.version.VersionRange;
import org.jboss.javabean.plugins.jaxb.JavaBean20;
@@ -33,8 +41,6 @@
import org.jboss.test.classloading.metadata.xml.support.TestCapability;
import org.jboss.test.classloading.metadata.xml.support.TestRequirement;
-import junit.framework.Test;
-
/**
* ClassLoadingMetaDataXmlUnitTestCase.
*
@@ -64,8 +70,11 @@
assertFalse(result.isTopLevelClassLoader());
assertNull(result.getExportAll());
assertNull(result.getIncludedPackages());
+ assertNull(result.getIncludedMetaData());
assertNull(result.getExcludedPackages());
+ assertNull(result.getExcludedMetaData());
assertNull(result.getExcludedExportPackages());
+ assertNull(result.getExcludedExportMetaData());
assertFalse(result.isImportAll());
assertTrue(result.isJ2seClassLoadingCompliance());
assertTrue(result.isCacheable());
@@ -111,18 +120,54 @@
assertEquals("Included", result.getIncludedPackages());
}
+ public void testModuleIncludedFilter() throws Exception
+ {
+ FilterMetaData expected = new FilterMetaData();
+ expected.setValueString("org.jboss.acme");
+
+ ClassLoadingMetaData result = unmarshal();
+ FilterMetaData filter = result.getIncludedMetaData();
+ assertEquals(expected, filter);
+
+ assertNotNull(result.getIncluded());
+ }
+
public void testModuleExcluded() throws Exception
{
ClassLoadingMetaData result = unmarshal();
assertEquals("Excluded", result.getExcludedPackages());
}
+ public void testModuleExcludedFilter() throws Exception
+ {
+ FilterMetaData expected = new FilterMetaData();
+ expected.setValueString("com.redhat.foobar");
+
+ ClassLoadingMetaData result = unmarshal();
+ FilterMetaData filter = result.getExcludedMetaData();
+ assertEquals(expected, filter);
+
+ assertNotNull(result.getExcluded());
+ }
+
public void testModuleExcludedExport() throws Exception
{
ClassLoadingMetaData result = unmarshal();
assertEquals("ExcludedExport", result.getExcludedExportPackages());
}
+ public void testModuleExcludedExportFilter() throws Exception
+ {
+ FilterMetaData expected = new FilterMetaData();
+ expected.setValueString("org.ceylon.modules");
+
+ ClassLoadingMetaData result = unmarshal();
+ FilterMetaData filter = result.getExcludedExportMetaData();
+ assertEquals(expected, filter);
+
+ assertNotNull(result.getExcludedExport());
+ }
+
public void testModuleImportAll() throws Exception
{
ClassLoadingMetaData result = unmarshal();
@@ -381,7 +426,8 @@
{
assertNotNull(expected);
assertNotNull(result);
- assertTrue(result instanceof String[]);
+ if (result instanceof String[] == false)
+ result = assertInstanceOf(result, String.class).split(",");
String[] strings = (String[]) result;
assertEquals(expected.length, strings.length);
for (int i = 0; i < expected.length; i++)
Copied: projects/jboss-cl/branches/Branch_2_2/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleExcludedExportFilter.xml (from rev 111484, projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleExcludedExportFilter.xml)
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleExcludedExportFilter.xml (rev 0)
+++ projects/jboss-cl/branches/Branch_2_2/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleExcludedExportFilter.xml 2011-05-31 14:18:50 UTC (rev 111485)
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<classloading xmlns="urn:jboss:classloading:1.0" name="test">
+ <excluded-export-filter>org.ceylon.modules</excluded-export-filter>
+</classloading>
Copied: projects/jboss-cl/branches/Branch_2_2/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleExcludedFilter.xml (from rev 111484, projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleExcludedFilter.xml)
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleExcludedFilter.xml (rev 0)
+++ projects/jboss-cl/branches/Branch_2_2/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleExcludedFilter.xml 2011-05-31 14:18:50 UTC (rev 111485)
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<classloading xmlns="urn:jboss:classloading:1.0" name="test">
+ <excluded-filter>com.redhat.foobar</excluded-filter>
+</classloading>
Copied: projects/jboss-cl/branches/Branch_2_2/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleIncludedFilter.xml (from rev 111484, projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleIncludedFilter.xml)
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleIncludedFilter.xml (rev 0)
+++ projects/jboss-cl/branches/Branch_2_2/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ModuleIncludedFilter.xml 2011-05-31 14:18:50 UTC (rev 111485)
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<classloading xmlns="urn:jboss:classloading:1.0" name="test">
+ <included-filter>org.jboss.acme</included-filter>
+</classloading>
Modified: projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/metadata/VFSClassLoaderFactory10.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/metadata/VFSClassLoaderFactory10.java 2011-05-31 13:36:56 UTC (rev 111484)
+++ projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/metadata/VFSClassLoaderFactory10.java 2011-05-31 14:18:50 UTC (rev 111485)
@@ -31,11 +31,12 @@
* VFSClassLoaderFactory.
*
* @author <a href="adrian at jboss.com">Adrian Brock</a>
+ * @author <a href="ales.justin at jboss.org">Ales Justin</a>
* @version $Revision: 1.1 $
*/
@JBossXmlSchema(namespace="urn:jboss:classloader:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
@XmlRootElement(name="classloader")
- at XmlType(propOrder = {"requirements", "capabilities", "roots"})
+ at XmlType(propOrder = {"includedMetaData", "excludedMetaData", "excludedExportMetaData", "requirements", "capabilities", "roots"})
public class VFSClassLoaderFactory10 extends VFSClassLoaderFactory
{
/** The serialVersionUID */
Modified: projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/test/ManagedObjectVFSClassLoaderFactoryUnitTestCase.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/test/ManagedObjectVFSClassLoaderFactoryUnitTestCase.java 2011-05-31 13:36:56 UTC (rev 111484)
+++ projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/test/ManagedObjectVFSClassLoaderFactoryUnitTestCase.java 2011-05-31 14:18:50 UTC (rev 111485)
@@ -27,10 +27,12 @@
import java.util.List;
import java.util.Set;
+import junit.framework.Test;
import org.jboss.classloader.spi.ShutdownPolicy;
import org.jboss.classloading.spi.metadata.CapabilitiesMetaData;
import org.jboss.classloading.spi.metadata.ClassLoadingMetaDataFactory;
import org.jboss.classloading.spi.metadata.ExportAll;
+import org.jboss.classloading.spi.metadata.FilterMetaData;
import org.jboss.classloading.spi.metadata.ParentPolicyMetaData;
import org.jboss.classloading.spi.metadata.RequirementsMetaData;
import org.jboss.classloading.spi.version.Version;
@@ -44,8 +46,6 @@
import org.jboss.metatype.api.values.MetaValueFactory;
import org.jboss.test.BaseTestCase;
-import junit.framework.Test;
-
/**
* ManagedObjectVFSClassLoaderFactoryUnitTestCase.
*
@@ -73,7 +73,7 @@
{
ManagedObject result = moFactory.initManagedObject(test, null, null);
assertNotNull(result);
- List<String> expectedProperties = Arrays.asList("name", "version", "context", "domain", "parentDomain", "topLevelClassLoader", "exportAll", "shutdown", "included", "excluded", "excludedExport", "importAll", "parentFirst", "cache", "blackList", "system", "roots", "capabilities", "requirements", "parentPolicy");
+ List<String> expectedProperties = Arrays.asList("name", "version", "context", "domain", "parentDomain", "topLevelClassLoader", "exportAll", "shutdown", "included", "includedMetaData", "excluded", "excludedMetaData", "excludedExport", "excludedExportMetaData", "importAll", "parentFirst", "cache", "blackList", "system", "roots", "capabilities", "requirements", "parentPolicy");
Set<String> actualProperties = result.getPropertyNames();
for (String expected : expectedProperties)
{
@@ -125,8 +125,11 @@
assertManagedProperty(mo, "exportAll", ExportAll.class, null);
assertManagedProperty(mo, "shutdown", ShutdownPolicy.class, null);
assertManagedProperty(mo, "included", String.class, null);
+ assertManagedProperty(mo, "includedMetaData", FilterMetaData.class, null);
assertManagedProperty(mo, "excluded", String.class, null);
+ assertManagedProperty(mo, "excludedMetaData", FilterMetaData.class, null);
assertManagedProperty(mo, "excludedExport", String.class, null);
+ assertManagedProperty(mo, "excludedExportMetaData", FilterMetaData.class, null);
assertManagedProperty(mo, "importAll", boolean.class, false);
assertManagedProperty(mo, "parentFirst", boolean.class, true);
assertManagedProperty(mo, "capabilities", CapabilitiesMetaData.class, new CapabilitiesMetaData());
@@ -206,6 +209,15 @@
assertManagedProperty(mo, "included", String.class, "Included");
}
+ public void testSetIncludedMetaData() throws Exception
+ {
+ VFSClassLoaderFactory test = new VFSClassLoaderFactory();
+ FilterMetaData fmd = new FilterMetaData();
+ test.setIncludedMetaData(fmd);
+ ManagedObject mo = assertManagedObject(test);
+ assertManagedProperty(mo, "includedMetaData", FilterMetaData.class, fmd);
+ }
+
public void testSetExcludedPackages() throws Exception
{
VFSClassLoaderFactory test = new VFSClassLoaderFactory();
@@ -214,6 +226,15 @@
assertManagedProperty(mo, "excluded", String.class, "Excluded");
}
+ public void testSetExcludedMetaData() throws Exception
+ {
+ VFSClassLoaderFactory test = new VFSClassLoaderFactory();
+ FilterMetaData fmd = new FilterMetaData();
+ test.setExcludedMetaData(fmd);
+ ManagedObject mo = assertManagedObject(test);
+ assertManagedProperty(mo, "excludedMetaData", FilterMetaData.class, fmd);
+ }
+
public void testSetExcludedExportPackages() throws Exception
{
VFSClassLoaderFactory test = new VFSClassLoaderFactory();
@@ -222,6 +243,15 @@
assertManagedProperty(mo, "excludedExport", String.class, "ExcludedExport");
}
+ public void testSetExcludedExportMetaData() throws Exception
+ {
+ VFSClassLoaderFactory test = new VFSClassLoaderFactory();
+ FilterMetaData fmd = new FilterMetaData();
+ test.setExcludedExportMetaData(fmd);
+ ManagedObject mo = assertManagedObject(test);
+ assertManagedProperty(mo, "excludedExportMetaData", FilterMetaData.class, fmd);
+ }
+
public void testSetImportAll() throws Exception
{
VFSClassLoaderFactory test = new VFSClassLoaderFactory();
Modified: projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/support/NoopClassLoaderFactory.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/support/NoopClassLoaderFactory.java 2011-05-31 13:36:56 UTC (rev 111484)
+++ projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/support/NoopClassLoaderFactory.java 2011-05-31 14:18:50 UTC (rev 111485)
@@ -39,7 +39,7 @@
*/
@JBossXmlSchema(namespace="urn:jboss:classloader:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
@XmlRootElement(name="classloader")
- at XmlType(propOrder = {"requirements", "capabilities", "roots"})
+ at XmlType(propOrder = {"includedMetaData", "excludedMetaData", "excludedExportMetaData", "requirements", "capabilities", "roots"})
public class NoopClassLoaderFactory extends VFSClassLoaderFactory
{
private static final long serialVersionUID = 1l;
Modified: projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/test/VFSClassLoaderFactoryXMLUnitTestCase.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/test/VFSClassLoaderFactoryXMLUnitTestCase.java 2011-05-31 13:36:56 UTC (rev 111484)
+++ projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/test/VFSClassLoaderFactoryXMLUnitTestCase.java 2011-05-31 14:18:50 UTC (rev 111485)
@@ -25,10 +25,12 @@
import java.util.Arrays;
import java.util.List;
+import junit.framework.Test;
import org.jboss.classloader.spi.ShutdownPolicy;
import org.jboss.classloading.spi.metadata.Capability;
import org.jboss.classloading.spi.metadata.ClassLoadingMetaDataFactory;
import org.jboss.classloading.spi.metadata.ExportAll;
+import org.jboss.classloading.spi.metadata.FilterMetaData;
import org.jboss.classloading.spi.metadata.Requirement;
import org.jboss.classloading.spi.version.Version;
import org.jboss.classloading.spi.version.VersionRange;
@@ -38,8 +40,6 @@
import org.jboss.test.classloading.vfs.metadata.xml.support.TestCapability;
import org.jboss.test.classloading.vfs.metadata.xml.support.TestRequirement;
-import junit.framework.Test;
-
/**
* VFSClassLoaderFactoryXMLUnitTestCase.
*
@@ -70,8 +70,11 @@
assertNull(result.getExportAll());
assertNull(result.getShutdownPolicy());
assertNull(result.getIncludedPackages());
+ assertNull(result.getIncludedMetaData());
assertNull(result.getExcludedPackages());
+ assertNull(result.getExcludedMetaData());
assertNull(result.getExcludedExportPackages());
+ assertNull(result.getExcludedExportMetaData());
assertFalse(result.isImportAll());
assertTrue(result.isJ2seClassLoadingCompliance());
assertTrue(result.isCacheable());
@@ -124,18 +127,54 @@
assertEquals("Included", result.getIncludedPackages());
}
+ public void testModuleIncludedFilter() throws Exception
+ {
+ FilterMetaData expected = new FilterMetaData();
+ expected.setValueString("org.jboss.acme");
+
+ VFSClassLoaderFactory result = unmarshal();
+ FilterMetaData filter = result.getIncludedMetaData();
+ assertEquals(expected, filter);
+
+ assertNotNull(result.getIncluded());
+ }
+
public void testModuleExcluded() throws Exception
{
VFSClassLoaderFactory result = unmarshal();
assertEquals("Excluded", result.getExcludedPackages());
}
+ public void testModuleExcludedFilter() throws Exception
+ {
+ FilterMetaData expected = new FilterMetaData();
+ expected.setValueString("com.redhat.foobar");
+
+ VFSClassLoaderFactory result = unmarshal();
+ FilterMetaData filter = result.getExcludedMetaData();
+ assertEquals(expected, filter);
+
+ assertNotNull(result.getExcluded());
+ }
+
public void testModuleExcludedExport() throws Exception
{
VFSClassLoaderFactory result = unmarshal();
assertEquals("ExcludedExport", result.getExcludedExportPackages());
}
+ public void testModuleExcludedExportFilter() throws Exception
+ {
+ FilterMetaData expected = new FilterMetaData();
+ expected.setValueString("org.ceylon.modules");
+
+ VFSClassLoaderFactory result = unmarshal();
+ FilterMetaData filter = result.getExcludedExportMetaData();
+ assertEquals(expected, filter);
+
+ assertNotNull(result.getExcludedExport());
+ }
+
public void testModuleImportAll() throws Exception
{
VFSClassLoaderFactory result = unmarshal();
Copied: projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleExcludedExportFilter.xml (from rev 111484, projects/jboss-cl/trunk/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleExcludedExportFilter.xml)
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleExcludedExportFilter.xml (rev 0)
+++ projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleExcludedExportFilter.xml 2011-05-31 14:18:50 UTC (rev 111485)
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<classloader xmlns="urn:jboss:classloader:1.0" name="test">
+ <excluded-export-filter>org.ceylon.modules</excluded-export-filter>
+</classloader>
Copied: projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleExcludedFilter.xml (from rev 111484, projects/jboss-cl/trunk/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleExcludedFilter.xml)
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleExcludedFilter.xml (rev 0)
+++ projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleExcludedFilter.xml 2011-05-31 14:18:50 UTC (rev 111485)
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<classloader xmlns="urn:jboss:classloader:1.0" name="test">
+ <excluded-filter>com.redhat.foobar</excluded-filter>
+</classloader>
Copied: projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleIncludedFilter.xml (from rev 111484, projects/jboss-cl/trunk/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleIncludedFilter.xml)
===================================================================
--- projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleIncludedFilter.xml (rev 0)
+++ projects/jboss-cl/branches/Branch_2_2/classloading-vfs/src/test/resources/org/jboss/test/classloading/vfs/metadata/xml/test/ModuleIncludedFilter.xml 2011-05-31 14:18:50 UTC (rev 111485)
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<classloader xmlns="urn:jboss:classloader:1.0" name="test">
+ <included-filter>org.jboss.acme</included-filter>
+</classloader>
More information about the jboss-cvs-commits
mailing list