[jboss-cvs] JBossAS SVN: r81558 - in projects/jboss-cl/tags: 2.0.0.GA and 10 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Nov 25 09:42:02 EST 2008
Author: alesj
Date: 2008-11-25 09:42:02 -0500 (Tue, 25 Nov 2008)
New Revision: 81558
Added:
projects/jboss-cl/tags/2.0.0.GA/
projects/jboss-cl/tags/2.0.0.GA/build/pom.xml
projects/jboss-cl/tags/2.0.0.GA/classloader/pom.xml
projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/pom.xml
projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs/PackageVisitor.java
projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/dependency/VFSClassLoaderPolicyModule.java
projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy/VFSClassLoaderPolicy.java
projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/ClassLoadingVFSTestSuite.java
projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/support/NoopClassLoaderFactory.java
projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/test/NoopClassLoaderFactoryXMLUnitTestCase.java
projects/jboss-cl/tags/2.0.0.GA/classloading/pom.xml
projects/jboss-cl/tags/2.0.0.GA/pom.xml
Removed:
projects/jboss-cl/tags/2.0.0.GA/build/pom.xml
projects/jboss-cl/tags/2.0.0.GA/classloader/pom.xml
projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/pom.xml
projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs/PackageVisitor.java
projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/dependency/VFSClassLoaderPolicyModule.java
projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy/VFSClassLoaderPolicy.java
projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/ClassLoadingVFSTestSuite.java
projects/jboss-cl/tags/2.0.0.GA/classloading/pom.xml
projects/jboss-cl/tags/2.0.0.GA/pom.xml
Log:
[maven-release-plugin] copy for tag 2.0.0.GA
Copied: projects/jboss-cl/tags/2.0.0.GA (from rev 81554, projects/jboss-cl/branches/Branch_2_0)
Deleted: projects/jboss-cl/tags/2.0.0.GA/build/pom.xml
===================================================================
--- projects/jboss-cl/branches/Branch_2_0/build/pom.xml 2008-11-25 14:14:45 UTC (rev 81554)
+++ projects/jboss-cl/tags/2.0.0.GA/build/pom.xml 2008-11-25 14:42:02 UTC (rev 81558)
@@ -1,31 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <groupId>org.jboss.cl</groupId>
- <artifactId>jboss-cl</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.cl</groupId>
- <artifactId>jboss-cl-dist</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- <packaging>pom</packaging>
- <name>JBoss ClassLoader Distribution Build</name>
- <url>http://www.jboss.com/products/jbossmc</url>
- <description>JBoss ClassLoader Distribution Build</description>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-assembly-plugin</artifactId>
- <configuration>
- <descriptors>
- <descriptor>src/assembly/dist.xml</descriptor>
- <descriptor>src/assembly/src.xml</descriptor>
- </descriptors>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
-</project>
\ No newline at end of file
Copied: projects/jboss-cl/tags/2.0.0.GA/build/pom.xml (from rev 81557, projects/jboss-cl/branches/Branch_2_0/build/pom.xml)
===================================================================
--- projects/jboss-cl/tags/2.0.0.GA/build/pom.xml (rev 0)
+++ projects/jboss-cl/tags/2.0.0.GA/build/pom.xml 2008-11-25 14:42:02 UTC (rev 81558)
@@ -0,0 +1,31 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.cl</groupId>
+ <artifactId>jboss-cl</artifactId>
+ <version>2.0.0.GA</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.cl</groupId>
+ <artifactId>jboss-cl-dist</artifactId>
+ <version>2.0.0.GA</version>
+ <packaging>pom</packaging>
+ <name>JBoss ClassLoader Distribution Build</name>
+ <url>http://www.jboss.com/products/jbossmc</url>
+ <description>JBoss ClassLoader Distribution Build</description>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <descriptors>
+ <descriptor>src/assembly/dist.xml</descriptor>
+ <descriptor>src/assembly/src.xml</descriptor>
+ </descriptors>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
\ No newline at end of file
Deleted: projects/jboss-cl/tags/2.0.0.GA/classloader/pom.xml
===================================================================
--- projects/jboss-cl/branches/Branch_2_0/classloader/pom.xml 2008-11-25 14:14:45 UTC (rev 81554)
+++ projects/jboss-cl/tags/2.0.0.GA/classloader/pom.xml 2008-11-25 14:42:02 UTC (rev 81558)
@@ -1,87 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <groupId>org.jboss.cl</groupId>
- <artifactId>jboss-cl</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>jboss-classloader</artifactId>
- <packaging>jar</packaging>
- <name>JBoss ClassLoader</name>
- <url>http://www.jboss.com/products/jbossmc</url>
- <description>JBoss ClassLoader</description>
-
- <!-- Do not add version information here, use ../pom.xml instead -->
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>org.jboss.test</groupId>
- <artifactId>jboss-test</artifactId>
- <version>${version.org.jboss.test}</version>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>${version.junit}</version>
- <scope>compile</scope>
- </dependency>
- </dependencies>
- </dependencyManagement>
-
- <dependencies>
- <!-- Global dependencies -->
- <dependency>
- <groupId>org.jboss.integration</groupId>
- <artifactId>jboss-classloading-spi</artifactId>
- <exclusions>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.logging</groupId>
- <artifactId>jboss-logging-spi</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- <exclusions>
- <exclusion>
- <groupId>jboss</groupId>
- <artifactId>jboss-common-logging-spi</artifactId>
- </exclusion>
- <exclusion>
- <groupId>apache-httpclient</groupId>
- <artifactId>commons-httpclient</artifactId>
- </exclusion>
- <exclusion>
- <groupId>apache-slide</groupId>
- <artifactId>webdavlib</artifactId>
- </exclusion>
- <exclusion>
- <groupId>apache-xerces</groupId>
- <artifactId>xml-apis</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <!-- Test dependencies -->
- <dependency>
- <groupId>org.jboss.test</groupId>
- <artifactId>jboss-test</artifactId>
- <optional>true</optional>
- </dependency>
-
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <optional>true</optional>
- </dependency>
-
- </dependencies>
-</project>
\ No newline at end of file
Copied: projects/jboss-cl/tags/2.0.0.GA/classloader/pom.xml (from rev 81557, projects/jboss-cl/branches/Branch_2_0/classloader/pom.xml)
===================================================================
--- projects/jboss-cl/tags/2.0.0.GA/classloader/pom.xml (rev 0)
+++ projects/jboss-cl/tags/2.0.0.GA/classloader/pom.xml 2008-11-25 14:42:02 UTC (rev 81558)
@@ -0,0 +1,87 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.cl</groupId>
+ <artifactId>jboss-cl</artifactId>
+ <version>2.0.0.GA</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>jboss-classloader</artifactId>
+ <packaging>jar</packaging>
+ <name>JBoss ClassLoader</name>
+ <url>http://www.jboss.com/products/jbossmc</url>
+ <description>JBoss ClassLoader</description>
+
+ <!-- Do not add version information here, use ../pom.xml instead -->
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.test</groupId>
+ <artifactId>jboss-test</artifactId>
+ <version>${version.org.jboss.test}</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>${version.junit}</version>
+ <scope>compile</scope>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+ <dependencies>
+ <!-- Global dependencies -->
+ <dependency>
+ <groupId>org.jboss.integration</groupId>
+ <artifactId>jboss-classloading-spi</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.logging</groupId>
+ <artifactId>jboss-logging-spi</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-common-logging-spi</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>apache-httpclient</groupId>
+ <artifactId>commons-httpclient</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>apache-slide</groupId>
+ <artifactId>webdavlib</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>apache-xerces</groupId>
+ <artifactId>xml-apis</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <!-- Test dependencies -->
+ <dependency>
+ <groupId>org.jboss.test</groupId>
+ <artifactId>jboss-test</artifactId>
+ <optional>true</optional>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <optional>true</optional>
+ </dependency>
+
+ </dependencies>
+</project>
\ No newline at end of file
Deleted: projects/jboss-cl/tags/2.0.0.GA/classloading/pom.xml
===================================================================
--- projects/jboss-cl/branches/Branch_2_0/classloading/pom.xml 2008-11-25 14:14:45 UTC (rev 81554)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading/pom.xml 2008-11-25 14:42:02 UTC (rev 81558)
@@ -1,126 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <groupId>org.jboss.cl</groupId>
- <artifactId>jboss-cl</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>jboss-classloading</artifactId>
- <packaging>jar</packaging>
- <name>JBoss ClassLoading</name>
- <url>http://www.jboss.com/products/jbossmc</url>
- <description>JBoss ClassLoading</description>
-
- <!-- Do not add version information here, use ../pom.xml instead -->
- <dependencies>
-
- <!-- Global dependencies -->
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.logging</groupId>
- <artifactId>jboss-logging-spi</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.cl</groupId>
- <artifactId>jboss-classloader</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.microcontainer</groupId>
- <artifactId>jboss-dependency</artifactId>
- <exclusions>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- </exclusion>
- <exclusion>
- <groupId>jboss</groupId>
- <artifactId>jboss-common-logging-spi</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.microcontainer</groupId>
- <artifactId>jboss-kernel</artifactId>
- <optional>true</optional>
- <exclusions>
- <exclusion>
- <groupId>org.jboss.microcontainer</groupId>
- <artifactId>jboss-dependency</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- </exclusion>
- <exclusion>
- <groupId>jboss</groupId>
- <artifactId>jboss-common-logging-spi</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jbossxb</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossxb</artifactId>
- <optional>true</optional>
- <exclusions>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-reflect</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- </exclusion>
- <exclusion>
- <groupId>jboss</groupId>
- <artifactId>jboss-common-logging-spi</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.man</groupId>
- <artifactId>jboss-managed</artifactId>
- <optional>true</optional>
- <exclusions>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-reflect</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- </exclusion>
- <exclusion>
- <groupId>jboss</groupId>
- <artifactId>jboss-common-logging-spi</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <!-- Test dependencies -->
- <dependency>
- <groupId>org.jboss.test</groupId>
- <artifactId>jboss-test</artifactId>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
-
- </dependencies>
-</project>
\ No newline at end of file
Copied: projects/jboss-cl/tags/2.0.0.GA/classloading/pom.xml (from rev 81557, projects/jboss-cl/branches/Branch_2_0/classloading/pom.xml)
===================================================================
--- projects/jboss-cl/tags/2.0.0.GA/classloading/pom.xml (rev 0)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading/pom.xml 2008-11-25 14:42:02 UTC (rev 81558)
@@ -0,0 +1,126 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.cl</groupId>
+ <artifactId>jboss-cl</artifactId>
+ <version>2.0.0.GA</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>jboss-classloading</artifactId>
+ <packaging>jar</packaging>
+ <name>JBoss ClassLoading</name>
+ <url>http://www.jboss.com/products/jbossmc</url>
+ <description>JBoss ClassLoading</description>
+
+ <!-- Do not add version information here, use ../pom.xml instead -->
+ <dependencies>
+
+ <!-- Global dependencies -->
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.logging</groupId>
+ <artifactId>jboss-logging-spi</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.cl</groupId>
+ <artifactId>jboss-classloader</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-common-logging-spi</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ <optional>true</optional>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-common-logging-spi</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossxb</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossxb</artifactId>
+ <optional>true</optional>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-reflect</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-common-logging-spi</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.man</groupId>
+ <artifactId>jboss-managed</artifactId>
+ <optional>true</optional>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-reflect</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-common-logging-spi</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <!-- Test dependencies -->
+ <dependency>
+ <groupId>org.jboss.test</groupId>
+ <artifactId>jboss-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+</project>
\ No newline at end of file
Deleted: projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/pom.xml
===================================================================
--- projects/jboss-cl/branches/Branch_2_0/classloading-vfs/pom.xml 2008-11-25 14:14:45 UTC (rev 81554)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/pom.xml 2008-11-25 14:42:02 UTC (rev 81558)
@@ -1,128 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <groupId>org.jboss.cl</groupId>
- <artifactId>jboss-cl</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- <relativePath>../build</relativePath>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>jboss-classloading-vfs</artifactId>
- <packaging>jar</packaging>
- <name>JBoss ClassLoading VFS</name>
- <url>http://www.jboss.com/products/jbossmc</url>
- <description>JBoss ClassLoading VFS</description>
-
- <!-- Do not add version information here, use ../pom.xml instead -->
- <dependencies>
-
- <!-- Global dependencies -->
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.logging</groupId>
- <artifactId>jboss-logging-spi</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.cl</groupId>
- <artifactId>jboss-classloading</artifactId>
- <exclusions>
- <exclusion>
- <groupId>org.jboss.microcontainer</groupId>
- <artifactId>jboss-kernel</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.microcontainer</groupId>
- <artifactId>jboss-kernel</artifactId>
- <exclusions>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- </exclusion>
- <exclusion>
- <groupId>jboss</groupId>
- <artifactId>jboss-common-logging-spi</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jbossxb</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossxb</artifactId>
- <optional>true</optional>
- <exclusions>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-reflect</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- </exclusion>
- <exclusion>
- <groupId>jboss</groupId>
- <artifactId>jboss-common-logging-spi</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.man</groupId>
- <artifactId>jboss-managed</artifactId>
- <optional>true</optional>
- <exclusions>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-reflect</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- </exclusion>
- <exclusion>
- <groupId>jboss</groupId>
- <artifactId>jboss-common-logging-spi</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-vfs</artifactId>
- <exclusions>
- <exclusion>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- </exclusion>
- <exclusion>
- <groupId>jboss</groupId>
- <artifactId>jboss-common-logging-spi</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <!-- Test dependencies -->
- <dependency>
- <groupId>org.jboss.test</groupId>
- <artifactId>jboss-test</artifactId>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
-
- </dependencies>
-</project>
\ No newline at end of file
Copied: projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/pom.xml (from rev 81557, projects/jboss-cl/branches/Branch_2_0/classloading-vfs/pom.xml)
===================================================================
--- projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/pom.xml (rev 0)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/pom.xml 2008-11-25 14:42:02 UTC (rev 81558)
@@ -0,0 +1,128 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.cl</groupId>
+ <artifactId>jboss-cl</artifactId>
+ <version>2.0.0.GA</version>
+ <relativePath>../build</relativePath>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>jboss-classloading-vfs</artifactId>
+ <packaging>jar</packaging>
+ <name>JBoss ClassLoading VFS</name>
+ <url>http://www.jboss.com/products/jbossmc</url>
+ <description>JBoss ClassLoading VFS</description>
+
+ <!-- Do not add version information here, use ../pom.xml instead -->
+ <dependencies>
+
+ <!-- Global dependencies -->
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.logging</groupId>
+ <artifactId>jboss-logging-spi</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.cl</groupId>
+ <artifactId>jboss-classloading</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-common-logging-spi</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossxb</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossxb</artifactId>
+ <optional>true</optional>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-reflect</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-common-logging-spi</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.man</groupId>
+ <artifactId>jboss-managed</artifactId>
+ <optional>true</optional>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-reflect</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-common-logging-spi</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-vfs</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-common-logging-spi</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <!-- Test dependencies -->
+ <dependency>
+ <groupId>org.jboss.test</groupId>
+ <artifactId>jboss-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+</project>
\ No newline at end of file
Deleted: projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs/PackageVisitor.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_0/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs/PackageVisitor.java 2008-11-25 14:14:45 UTC (rev 81554)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs/PackageVisitor.java 2008-11-25 14:42:02 UTC (rev 81558)
@@ -1,242 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2007, 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.classloading.plugins.vfs;
-
-import java.io.IOException;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.jboss.classloader.spi.filter.ClassFilter;
-import org.jboss.classloading.spi.metadata.ExportAll;
-import org.jboss.virtual.VirtualFile;
-import org.jboss.virtual.VirtualFileVisitor;
-import org.jboss.virtual.VisitorAttributes;
-import org.jboss.virtual.plugins.vfs.helpers.AbstractVirtualFileFilterWithAttributes;
-
-/**
- * Visits a virtual file system recursively
- * to determine package names based on the exportAll policy
- *
- * @author <a href="adrian at jboss.org">Adrian Brock</a>
- * @version $Revision: 1.1 $
- */
-public class PackageVisitor extends AbstractVirtualFileFilterWithAttributes implements VirtualFileVisitor
-{
- /** The packages */
- private Set<String> packages = new HashSet<String>();
-
- /** The roots */
- private VirtualFile[] roots;
-
- /** The excluded roots */
- private VirtualFile[] excludedRoots;
-
- /** The current root */
- private VirtualFile root;
-
- /** The export all */
- private ExportAll exportAll;
-
- /** The root */
- private String rootPath;
-
- /** The root with slash*/
- private String rootPathWithSlash;
-
- /** The included packages */
- private ClassFilter included;
-
- /** The excluded packages */
- private ClassFilter excluded;
-
- /** The excluded export packages */
- private ClassFilter excludedExport;
-
- /**
- * Determine the packages
- *
- * @param roots the roots
- * @param excludedRoots the excluded roots
- * @param exportAll the exportAll
- * @param included the included packages
- * @param excluded the excluded packages
- * @param excludedExport the excluded export packages
- * @return the packages
- */
- public static Set<String> determineAllPackages(VirtualFile[] roots, VirtualFile[] excludedRoots, ExportAll exportAll, ClassFilter included, ClassFilter excluded, ClassFilter excludedExport)
- {
- PackageVisitor visitor = new PackageVisitor(roots, excludedRoots, exportAll, included, excluded, excludedExport);
- for (VirtualFile root : roots)
- {
- try
- {
- visitor.setRoot(root);
- root.visit(visitor);
- }
- catch (Exception e)
- {
- throw new Error("Error visiting " + root, e);
- }
- }
- return visitor.getPackages();
- }
-
- /**
- * Create a new PackageVisitor.
- *
- * @param roots the vfs roots
- * @param excludedRoots the excluded roots
- * @param exportAll the export all policy
- * @param included the included packages
- * @param excluded the excluded packages
- * @param excludedExport the excluded export packages
- * @throws IllegalArgumentException for a null exportAll policy
- */
- PackageVisitor(VirtualFile[] roots, VirtualFile[] excludedRoots, ExportAll exportAll, ClassFilter included, ClassFilter excluded, ClassFilter excludedExport)
- {
- if (exportAll == null)
- throw new IllegalArgumentException("Null export policy");
- this.roots = roots;
- this.excludedRoots = excludedRoots;
- this.exportAll = exportAll;
- this.included = included;
- this.excluded = excluded;
- this.excludedExport = excludedExport;
- }
-
- /**
- * Set the root
- *
- * @param root the root
- * @throws IllegalArgumentException for a null root
- */
- void setRoot(VirtualFile root)
- {
- if (root == null)
- throw new IllegalArgumentException("Null root");
- this.root = root;
- rootPath = root.getPathName();
- rootPathWithSlash = rootPath + "/";
- }
-
- /**
- * Get the packages.
- *
- * @return the packages.
- */
- Set<String> getPackages()
- {
- return packages;
- }
-
- public VisitorAttributes getAttributes()
- {
- VisitorAttributes attributes = new VisitorAttributes();
- attributes.setIncludeRoot(true);
- attributes.setRecurseFilter(this);
- return attributes;
- }
-
- public boolean accepts(VirtualFile file)
- {
- // This is our current root
- if (file.equals(root))
- return true;
-
- // Some other root, it will be handled later
- for (VirtualFile other : roots)
- {
- if (file.equals(other))
- return false;
- }
- // Is this an excluded roots?
- if (excludedRoots != null)
- {
- for (VirtualFile other : excludedRoots)
- {
- if (file.equals(other))
- return false;
- }
- }
-
- // Ok
- return true;
- }
-
- public void visit(VirtualFile file)
- {
- try
- {
- // We only want only directories
- if (file.isLeaf() == false && accepts(file))
- {
- boolean empty = true;
- // Include empty directories?
- if (exportAll == ExportAll.ALL)
- empty = false;
- else
- {
- // Determine whether there is anything there
- List<VirtualFile> children = file.getChildren();
- if (children != null && children.isEmpty() == false)
- {
- for (VirtualFile child : children)
- {
- // We must have a leaf to be non-empty
- if (child.isLeaf())
- {
- empty = false;
- break;
- }
- }
- }
- }
- // This looks interesting
- if (empty == false)
- {
- String path = file.getPathName();
- if (path.equals(rootPath))
- path = "";
- else if (path.startsWith(rootPathWithSlash))
- path = path.substring(rootPathWithSlash.length());
- String pkg = path.replace('/', '.');
-
- // Check for inclusions/exclusions
- if (included != null && included.matchesPackageName(pkg) == false)
- return;
- if (excluded != null && excluded.matchesPackageName(pkg))
- return;
- if (excludedExport != null && excludedExport.matchesPackageName(pkg))
- return;
-
- // Ok this is a package for export
- packages.add(pkg);
- }
- }
- }
- catch (IOException e)
- {
- throw new Error("Error visiting " + file, e);
- }
- }
-}
\ No newline at end of file
Copied: projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs/PackageVisitor.java (from rev 81555, projects/jboss-cl/branches/Branch_2_0/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs/PackageVisitor.java)
===================================================================
--- projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs/PackageVisitor.java (rev 0)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs/PackageVisitor.java 2008-11-25 14:42:02 UTC (rev 81558)
@@ -0,0 +1,242 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2007, 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.classloading.plugins.vfs;
+
+import java.io.IOException;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.jboss.classloader.spi.filter.ClassFilter;
+import org.jboss.classloading.spi.metadata.ExportAll;
+import org.jboss.virtual.VirtualFile;
+import org.jboss.virtual.VirtualFileVisitor;
+import org.jboss.virtual.VisitorAttributes;
+import org.jboss.virtual.plugins.vfs.helpers.AbstractVirtualFileFilterWithAttributes;
+
+/**
+ * Visits a virtual file system recursively
+ * to determine package names based on the exportAll policy
+ *
+ * @author <a href="adrian at jboss.org">Adrian Brock</a>
+ * @version $Revision: 1.1 $
+ */
+public class PackageVisitor extends AbstractVirtualFileFilterWithAttributes implements VirtualFileVisitor
+{
+ /** The packages */
+ private Set<String> packages = new HashSet<String>();
+
+ /** The roots */
+ private VirtualFile[] roots;
+
+ /** The excluded roots */
+ private VirtualFile[] excludedRoots;
+
+ /** The current root */
+ private VirtualFile root;
+
+ /** The export all */
+ private ExportAll exportAll;
+
+ /** The root */
+ private String rootPath;
+
+ /** The root with slash*/
+ private String rootPathWithSlash;
+
+ /** The included packages */
+ private ClassFilter included;
+
+ /** The excluded packages */
+ private ClassFilter excluded;
+
+ /** The excluded export packages */
+ private ClassFilter excludedExport;
+
+ /**
+ * Determine the packages
+ *
+ * @param roots the roots
+ * @param excludedRoots the excluded roots
+ * @param exportAll the exportAll
+ * @param included the included packages
+ * @param excluded the excluded packages
+ * @param excludedExport the excluded export packages
+ * @return the packages
+ */
+ public static Set<String> determineAllPackages(VirtualFile[] roots, VirtualFile[] excludedRoots, ExportAll exportAll, ClassFilter included, ClassFilter excluded, ClassFilter excludedExport)
+ {
+ PackageVisitor visitor = new PackageVisitor(roots, excludedRoots, exportAll, included, excluded, excludedExport);
+ for (VirtualFile root : roots)
+ {
+ try
+ {
+ visitor.setRoot(root);
+ root.visit(visitor);
+ }
+ catch (Exception e)
+ {
+ throw new Error("Error visiting " + root, e);
+ }
+ }
+ return visitor.getPackages();
+ }
+
+ /**
+ * Create a new PackageVisitor.
+ *
+ * @param roots the vfs roots
+ * @param excludedRoots the excluded roots
+ * @param exportAll the export all policy
+ * @param included the included packages
+ * @param excluded the excluded packages
+ * @param excludedExport the excluded export packages
+ * @throws IllegalArgumentException for a null exportAll policy
+ */
+ PackageVisitor(VirtualFile[] roots, VirtualFile[] excludedRoots, ExportAll exportAll, ClassFilter included, ClassFilter excluded, ClassFilter excludedExport)
+ {
+ if (exportAll == null)
+ throw new IllegalArgumentException("Null export policy");
+ this.roots = roots;
+ this.excludedRoots = excludedRoots;
+ this.exportAll = exportAll;
+ this.included = included;
+ this.excluded = excluded;
+ this.excludedExport = excludedExport;
+ }
+
+ /**
+ * Set the root
+ *
+ * @param root the root
+ * @throws IllegalArgumentException for a null root
+ */
+ void setRoot(VirtualFile root)
+ {
+ if (root == null)
+ throw new IllegalArgumentException("Null root");
+ this.root = root;
+ rootPath = root.getPathName();
+ rootPathWithSlash = rootPath + "/";
+ }
+
+ /**
+ * Get the packages.
+ *
+ * @return the packages.
+ */
+ Set<String> getPackages()
+ {
+ return packages;
+ }
+
+ public VisitorAttributes getAttributes()
+ {
+ VisitorAttributes attributes = new VisitorAttributes();
+ attributes.setIncludeRoot(true);
+ attributes.setRecurseFilter(this);
+ return attributes;
+ }
+
+ public boolean accepts(VirtualFile file)
+ {
+ // This is our current root
+ if (file.equals(root))
+ return true;
+
+ // Some other root, it will be handled later
+ for (VirtualFile other : roots)
+ {
+ if (file.equals(other))
+ return false;
+ }
+ // Is this an excluded roots?
+ if (excludedRoots != null)
+ {
+ for (VirtualFile other : excludedRoots)
+ {
+ if (file.equals(other))
+ return false;
+ }
+ }
+
+ // Ok
+ return true;
+ }
+
+ public void visit(VirtualFile file)
+ {
+ try
+ {
+ // We only want only directories
+ if (file.isLeaf() == false && accepts(file))
+ {
+ boolean empty = true;
+ // Include empty directories?
+ if (exportAll == ExportAll.ALL)
+ empty = false;
+ else
+ {
+ // Determine whether there is anything there
+ List<VirtualFile> children = file.getChildren();
+ if (children != null && children.isEmpty() == false)
+ {
+ for (VirtualFile child : children)
+ {
+ // We must have a leaf to be non-empty
+ if (child.isLeaf())
+ {
+ empty = false;
+ break;
+ }
+ }
+ }
+ }
+ // This looks interesting
+ if (empty == false)
+ {
+ String path = file.getPathName();
+ if (path.equals(rootPath))
+ path = "";
+ else if (path.startsWith(rootPathWithSlash))
+ path = path.substring(rootPathWithSlash.length());
+ String pkg = path.replace('/', '.');
+
+ // Check for inclusions/exclusions
+ if (included != null && included.matchesPackageName(pkg) == false)
+ return;
+ if (excluded != null && excluded.matchesPackageName(pkg))
+ return;
+ if (excludedExport != null && excludedExport.matchesPackageName(pkg))
+ return;
+
+ // Ok this is a package for export
+ packages.add(pkg);
+ }
+ }
+ }
+ catch (IOException e)
+ {
+ throw new Error("Error visiting " + file, e);
+ }
+ }
+}
\ No newline at end of file
Deleted: projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/dependency/VFSClassLoaderPolicyModule.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_0/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/dependency/VFSClassLoaderPolicyModule.java 2008-11-25 14:14:45 UTC (rev 81554)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/dependency/VFSClassLoaderPolicyModule.java 2008-11-25 14:42:02 UTC (rev 81558)
@@ -1,247 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, 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 org.jboss.classloading.spi.vfs.dependency;
-
-import java.net.URI;
-import java.net.URL;
-import java.util.List;
-import java.util.Set;
-import java.util.concurrent.CopyOnWriteArrayList;
-
-import org.jboss.classloader.spi.filter.ClassFilter;
-import org.jboss.classloading.plugins.vfs.PackageVisitor;
-import org.jboss.classloading.plugins.vfs.VFSResourceVisitor;
-import org.jboss.classloading.spi.dependency.policy.ClassLoaderPolicyModule;
-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.vfs.metadata.VFSClassLoaderFactory;
-import org.jboss.classloading.spi.vfs.policy.VFSClassLoaderPolicy;
-import org.jboss.classloading.spi.visitor.ResourceFilter;
-import org.jboss.classloading.spi.visitor.ResourceVisitor;
-import org.jboss.kernel.spi.dependency.KernelControllerContext;
-import org.jboss.kernel.spi.dependency.KernelControllerContextAware;
-import org.jboss.virtual.VFS;
-import org.jboss.virtual.VirtualFile;
-
-/**
- * VFSClassLoaderPolicyModule.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision: 1.1 $
- */
-public class VFSClassLoaderPolicyModule extends ClassLoaderPolicyModule implements KernelControllerContextAware
-{
- /** The serialVersionUID */
- private static final long serialVersionUID = 1L;
-
- /** The roots */
- private List<String> roots;
-
- /** Our cached vfs roots */
- private VirtualFile[] vfsRoots;
-
- /**
- * Create a new VFSClassLoaderPolicyModule.
- *
- * @param classLoadingMetaData the classloading metadata
- * @param contextName the context name
- */
- public VFSClassLoaderPolicyModule(VFSClassLoaderFactory classLoadingMetaData, String contextName)
- {
- super(classLoadingMetaData, contextName);
- }
-
- /**
- * Get the roots.
- *
- * @return the roots.
- */
- public List<String> getRoots()
- {
- return roots;
- }
-
- /**
- * Set the roots.
- *
- * @param roots the roots.
- */
- public void setRoots(List<String> roots)
- {
- this.roots = roots;
- }
-
- @Override
- protected List<Capability> determineCapabilities()
- {
- // While we are here, check the roots
- VirtualFile[] roots = determineVFSRoots();
-
- List<Capability> capabilities = super.determineCapabilities();
- if (capabilities != null)
- return capabilities;
-
- // We need to work it out
- ClassLoadingMetaDataFactory factory = ClassLoadingMetaDataFactory.getInstance();
- capabilities = new CopyOnWriteArrayList<Capability>();
-
- // We have a module capability
- Object version = getVersion();
- Capability capability = factory.createModule(getName(), version);
- capabilities.add(capability);
-
- // Do we determine package capabilities
- ClassFilter included = getIncluded();
- ClassFilter excluded = getExcluded();
- ClassFilter excludedExport = getExcludedExport();
- ExportAll exportAll = getExportAll();
- if (exportAll != null)
- {
- Set<String> exportedPackages = PackageVisitor.determineAllPackages(roots, null, exportAll, included, excluded, excludedExport);
- for (String packageName : exportedPackages)
- {
- capability = factory.createPackage(packageName, version);
- capabilities.add(capability);
- }
- }
-
- return capabilities;
- }
-
- public void setKernelControllerContext(KernelControllerContext context) throws Exception
- {
- setControllerContext(context);
- }
-
- public void unsetKernelControllerContext(KernelControllerContext context) throws Exception
- {
- setControllerContext(null);
- }
-
- @Override
- protected VFSClassLoaderFactory getClassLoadingMetaData()
- {
- return (VFSClassLoaderFactory) super.getClassLoadingMetaData();
- }
-
- /**
- * Get the virtual file roots
- *
- * @return the roots
- */
- protected VirtualFile[] determineVFSRoots()
- {
- if (vfsRoots != null)
- return vfsRoots;
-
- if (roots == null)
- {
- vfsRoots = new VirtualFile[0];
- }
- else
- {
- VirtualFile[] vfsRoots = new VirtualFile[roots.size()];
- for (int i = 0; i < roots.size(); ++i)
- {
- String root = roots.get(i);
- try
- {
- URI uri = new URI(root);
- vfsRoots[i] = getVirtualFile(uri);
- }
- catch (RuntimeException e)
- {
- throw e;
- }
- catch (Exception e)
- {
- throw new RuntimeException("Error creating VFS file for " + root, e);
- }
- }
- this.vfsRoots = vfsRoots;
- }
- return vfsRoots;
- }
-
- /**
- * Get virtual file for uri.
- *
- * @param uri the uri
- * @return virtual file for uri
- * @throws Exception for any error
- */
- protected VirtualFile getVirtualFile(URI uri) throws Exception
- {
- if (isCacheable())
- return VFS.getCachedFile(uri);
- else
- return VFS.getRoot(uri);
- }
-
- @Override
- public VFSClassLoaderPolicy getPolicy()
- {
- return (VFSClassLoaderPolicy) super.getPolicy();
- }
-
- @Override
- protected VFSClassLoaderPolicy determinePolicy()
- {
- VirtualFile[] roots = determineVFSRoots();
- VFSClassLoaderPolicy policy = VFSClassLoaderPolicy.createVFSClassLoaderPolicy(getContextName(), roots);
- String[] packageNames = getPackageNames();
- policy.setExportedPackages(packageNames);
- policy.setIncluded(getIncluded());
- policy.setExcluded(getExcluded());
- policy.setExcludedExport(getExcludedExport());
- policy.setExportAll(getExportAll());
- policy.setImportAll(isImportAll());
- policy.setCacheable(isCacheable());
- policy.setBlackListable(isBlackListable());
- policy.setDelegates(getDelegates());
- return policy;
- }
-
- @Override
- public void reset()
- {
- super.reset();
- vfsRoots = null;
- }
-
- @Override
- public void visit(ResourceVisitor visitor, ResourceFilter filter, ResourceFilter recurseFilter, URL... urls)
- {
- ClassLoader classLoader = getClassLoader();
- if (classLoader == null)
- throw new IllegalStateException("ClassLoader has not been constructed for " + getContextName());
-
- VirtualFile[] roots = determineVFSRoots();
- if (roots != null && roots.length > 0)
- {
- ClassFilter included = getIncluded();
- ClassFilter excluded = getExcluded();
- VFSResourceVisitor.visit(roots, null, included, excluded, classLoader, visitor, filter, recurseFilter, urls);
- }
- }
-}
Copied: projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/dependency/VFSClassLoaderPolicyModule.java (from rev 81555, projects/jboss-cl/branches/Branch_2_0/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/dependency/VFSClassLoaderPolicyModule.java)
===================================================================
--- projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/dependency/VFSClassLoaderPolicyModule.java (rev 0)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/dependency/VFSClassLoaderPolicyModule.java 2008-11-25 14:42:02 UTC (rev 81558)
@@ -0,0 +1,248 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2008, 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 org.jboss.classloading.spi.vfs.dependency;
+
+import java.net.URI;
+import java.net.URL;
+import java.util.List;
+import java.util.Set;
+import java.util.concurrent.CopyOnWriteArrayList;
+
+import org.jboss.classloader.spi.filter.ClassFilter;
+import org.jboss.classloading.plugins.vfs.PackageVisitor;
+import org.jboss.classloading.plugins.vfs.VFSResourceVisitor;
+import org.jboss.classloading.spi.dependency.policy.ClassLoaderPolicyModule;
+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.vfs.metadata.VFSClassLoaderFactory;
+import org.jboss.classloading.spi.vfs.policy.VFSClassLoaderPolicy;
+import org.jboss.classloading.spi.visitor.ResourceFilter;
+import org.jboss.classloading.spi.visitor.ResourceVisitor;
+import org.jboss.kernel.spi.dependency.KernelControllerContext;
+import org.jboss.kernel.spi.dependency.KernelControllerContextAware;
+import org.jboss.virtual.VFS;
+import org.jboss.virtual.VirtualFile;
+
+/**
+ * VFSClassLoaderPolicyModule.
+ *
+ * @author <a href="adrian at jboss.com">Adrian Brock</a>
+ * @version $Revision: 1.1 $
+ */
+public class VFSClassLoaderPolicyModule extends ClassLoaderPolicyModule implements KernelControllerContextAware
+{
+ /** The serialVersionUID */
+ private static final long serialVersionUID = 1L;
+
+ /** The roots */
+ private List<String> roots;
+
+ /** Our cached vfs roots */
+ private VirtualFile[] vfsRoots;
+
+ /**
+ * Create a new VFSClassLoaderPolicyModule.
+ *
+ * @param classLoadingMetaData the classloading metadata
+ * @param contextName the context name
+ */
+ public VFSClassLoaderPolicyModule(VFSClassLoaderFactory classLoadingMetaData, String contextName)
+ {
+ super(classLoadingMetaData, contextName);
+ }
+
+ /**
+ * Get the roots.
+ *
+ * @return the roots.
+ */
+ public List<String> getRoots()
+ {
+ return roots;
+ }
+
+ /**
+ * Set the roots.
+ *
+ * @param roots the roots.
+ */
+ public void setRoots(List<String> roots)
+ {
+ this.roots = roots;
+ }
+
+ @Override
+ protected List<Capability> determineCapabilities()
+ {
+ // While we are here, check the roots
+ VirtualFile[] roots = determineVFSRoots();
+
+ List<Capability> capabilities = super.determineCapabilities();
+ if (capabilities != null)
+ return capabilities;
+
+ // We need to work it out
+ ClassLoadingMetaDataFactory factory = ClassLoadingMetaDataFactory.getInstance();
+ capabilities = new CopyOnWriteArrayList<Capability>();
+
+ // We have a module capability
+ Object version = getVersion();
+ Capability capability = factory.createModule(getName(), version);
+ capabilities.add(capability);
+
+ // Do we determine package capabilities
+ ClassFilter included = getIncluded();
+ ClassFilter excluded = getExcluded();
+ ClassFilter excludedExport = getExcludedExport();
+ ExportAll exportAll = getExportAll();
+ if (exportAll != null)
+ {
+ Set<String> exportedPackages = PackageVisitor.determineAllPackages(roots, null, exportAll, included, excluded, excludedExport);
+ for (String packageName : exportedPackages)
+ {
+ capability = factory.createPackage(packageName, version);
+ capabilities.add(capability);
+ }
+ }
+
+ return capabilities;
+ }
+
+ public void setKernelControllerContext(KernelControllerContext context) throws Exception
+ {
+ setControllerContext(context);
+ }
+
+ public void unsetKernelControllerContext(KernelControllerContext context) throws Exception
+ {
+ setControllerContext(null);
+ }
+
+ @Override
+ protected VFSClassLoaderFactory getClassLoadingMetaData()
+ {
+ return (VFSClassLoaderFactory) super.getClassLoadingMetaData();
+ }
+
+ /**
+ * Get the virtual file roots
+ *
+ * @return the roots
+ */
+ protected VirtualFile[] determineVFSRoots()
+ {
+ if (vfsRoots != null)
+ return vfsRoots;
+
+ if (roots == null)
+ {
+ vfsRoots = new VirtualFile[0];
+ }
+ else
+ {
+ VirtualFile[] vfsRoots = new VirtualFile[roots.size()];
+ for (int i = 0; i < roots.size(); ++i)
+ {
+ String root = roots.get(i);
+ try
+ {
+ URI uri = new URI(root);
+ vfsRoots[i] = getVirtualFile(uri);
+ }
+ catch (RuntimeException e)
+ {
+ throw e;
+ }
+ catch (Exception e)
+ {
+ throw new RuntimeException("Error creating VFS file for " + root, e);
+ }
+ }
+ this.vfsRoots = vfsRoots;
+ }
+ return vfsRoots;
+ }
+
+ /**
+ * Get virtual file for uri.
+ *
+ * @param uri the uri
+ * @return virtual file for uri
+ * @throws Exception for any error
+ */
+ protected VirtualFile getVirtualFile(URI uri) throws Exception
+ {
+ if (isCacheable())
+ return VFS.getCachedFile(uri);
+ else
+ return VFS.getRoot(uri);
+ }
+
+ @Override
+ public VFSClassLoaderPolicy getPolicy()
+ {
+ return (VFSClassLoaderPolicy) super.getPolicy();
+ }
+
+ @Override
+ protected VFSClassLoaderPolicy determinePolicy()
+ {
+ VirtualFile[] roots = determineVFSRoots();
+ VFSClassLoaderPolicy policy = VFSClassLoaderPolicy.createVFSClassLoaderPolicy(getContextName(), roots);
+
+ String[] packageNames = getPackageNames();
+ policy.setExportedPackages(packageNames);
+ policy.setIncluded(getIncluded());
+ policy.setExcluded(getExcluded());
+ policy.setExcludedExport(getExcludedExport());
+ policy.setExportAll(getExportAll());
+ policy.setImportAll(isImportAll());
+ policy.setCacheable(isCacheable());
+ policy.setBlackListable(isBlackListable());
+ policy.setDelegates(getDelegates());
+ return policy;
+ }
+
+ @Override
+ public void reset()
+ {
+ super.reset();
+ vfsRoots = null;
+ }
+
+ @Override
+ public void visit(ResourceVisitor visitor, ResourceFilter filter, ResourceFilter recurseFilter, URL... urls)
+ {
+ ClassLoader classLoader = getClassLoader();
+ if (classLoader == null)
+ throw new IllegalStateException("ClassLoader has not been constructed for " + getContextName());
+
+ VirtualFile[] roots = determineVFSRoots();
+ if (roots != null && roots.length > 0)
+ {
+ ClassFilter included = getIncluded();
+ ClassFilter excluded = getExcluded();
+ VFSResourceVisitor.visit(roots, null, included, excluded, classLoader, visitor, filter, recurseFilter, urls);
+ }
+ }
+}
Deleted: projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy/VFSClassLoaderPolicy.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_0/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy/VFSClassLoaderPolicy.java 2008-11-25 14:14:45 UTC (rev 81554)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy/VFSClassLoaderPolicy.java 2008-11-25 14:42:02 UTC (rev 81558)
@@ -1,695 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2007, 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.classloading.spi.vfs.policy;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
-import java.security.CodeSource;
-import java.security.PermissionCollection;
-import java.security.Policy;
-import java.security.ProtectionDomain;
-import java.security.cert.Certificate;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.jar.Manifest;
-
-import org.jboss.classloader.plugins.ClassLoaderUtils;
-import org.jboss.classloader.spi.ClassLoaderPolicy;
-import org.jboss.classloader.spi.DelegateLoader;
-import org.jboss.classloader.spi.PackageInformation;
-import org.jboss.classloader.spi.filter.ClassFilter;
-import org.jboss.classloader.spi.filter.FilteredDelegateLoader;
-import org.jboss.classloading.plugins.vfs.PackageVisitor;
-import org.jboss.classloading.spi.metadata.ExportAll;
-import org.jboss.logging.Logger;
-import org.jboss.util.collection.SoftValueHashMap;
-import org.jboss.virtual.VFSUtils;
-import org.jboss.virtual.VirtualFile;
-
-/**
- * VFSClassLoaderPolicy.
- *
- * @author <a href="adrian at jboss.org">Adrian Brock</a>
- * @version $Revision: 1.1 $
- */
-public class VFSClassLoaderPolicy extends ClassLoaderPolicy
-{
- /** The log */
- private static Logger log = Logger.getLogger(VFSClassLoaderPolicy.class);
-
- /** Tag for no manifest */
- private static final Manifest NO_MANIFEST = new Manifest();
-
- /** A name for the policy */
- private String name;
-
- /** The delegates */
- private List<? extends DelegateLoader> delegates;
-
- /** The roots */
- private VirtualFile[] roots;
-
- /** The excluded roots */
- private VirtualFile[] excludedRoots;
-
- /** Whether to export all */
- private ExportAll exportAll;
-
- /** The included */
- private ClassFilter included;
-
- /** The excluded */
- private ClassFilter excluded;
-
- /** The excluded for export */
- private ClassFilter excludedExport;
-
- /** The exported packages */
- private String[] exportedPackages;
-
- /** The import all */
- private boolean importAll;
-
- /** Whether we are cachable */
- private boolean cacheable = true;
-
- /** Whether we are blacklistable */
- private boolean blackListable = true;
-
- /** Manifest cache */
- private Map<URL, Manifest> manifestCache = new ConcurrentHashMap<URL, Manifest>();
-
- /** Cache of virtual file information by path */
- @SuppressWarnings("unchecked")
- private Map<String, VirtualFileInfo> vfsCache = Collections.synchronizedMap(new SoftValueHashMap());
-
- /**
- * Determine a name from the roots
- *
- * @param roots the roots
- * @return the name
- */
- private static String determineName(VirtualFile[] roots)
- {
- if (roots == null)
- return "";
-
- try
- {
- for (VirtualFile root : roots)
- return root.toURL().toString();
- }
- catch (Exception ignored)
- {
- }
- return "";
- }
-
- /**
- * Create a new VFSClassLoaderPolicy.
- *
- * @param roots the roots
- * @return the classloader policy
- * @throws IllegalArgumentException for null roots
- */
- public static VFSClassLoaderPolicy createVFSClassLoaderPolicy(VirtualFile... roots)
- {
- return new VFSClassLoaderPolicy(roots);
- }
-
- /**
- * Create a new VFSClassLoaderPolicy.
- *
- * @param name a name of the policy
- * @param roots the roots
- * @return the classloader policy
- * @throws IllegalArgumentException for null roots
- */
- public static VFSClassLoaderPolicy createVFSClassLoaderPolicy(String name, VirtualFile... roots)
- {
- return new VFSClassLoaderPolicy(name, roots);
- }
-
- /**
- * Create a new VFSClassLoaderPolicy.
- *
- * @param roots the roots
- * @param excludedRoots the excluded roots
- * @return the classloader policy
- * @throws IllegalArgumentException for null roots
- */
- public static VFSClassLoaderPolicy createVFSClassLoaderPolicy(VirtualFile[] roots, VirtualFile[] excludedRoots)
- {
- return new VFSClassLoaderPolicy(roots, excludedRoots);
- }
-
- /**
- * Create a new VFSClassLoaderPolicy.
- *
- * @param name a name of the policy
- * @param roots the roots
- * @param excludedRoots the excluded roots
- * @return the classloader policy
- * @throws IllegalArgumentException for null roots
- */
- public static VFSClassLoaderPolicy createVFSClassLoaderPolicy(String name, VirtualFile[] roots, VirtualFile[] excludedRoots)
- {
- return new VFSClassLoaderPolicy(name, roots, excludedRoots);
- }
-
- /**
- * Create a new VFSClassLoaderPolicy.
- *
- * @param roots the roots
- * @throws IllegalArgumentException for null roots
- */
- public VFSClassLoaderPolicy(VirtualFile[] roots)
- {
- this(determineName(roots), roots);
- }
-
- /**
- * Create a new VFSClassLoaderPolicy.
- *
- * @param roots the roots
- * @param excludedRoots the excluded roots
- * @throws IllegalArgumentException for null roots
- */
- public VFSClassLoaderPolicy(VirtualFile[] roots, VirtualFile[] excludedRoots)
- {
- this(determineName(roots), roots, excludedRoots);
- }
-
- /**
- * Create a new VFSClassLoaderPolicy.
- *
- * @param name the name
- * @param roots the roots
- * @throws IllegalArgumentException for null roots
- */
- public VFSClassLoaderPolicy(String name, VirtualFile[] roots)
- {
- this(name, roots, null);
- }
-
- /**
- * Create a new VFSClassLoaderPolicy.
- *
- * @param name the name
- * @param roots the roots
- * @param excludedRoots the excluded roots
- * @throws IllegalArgumentException for null roots
- */
- public VFSClassLoaderPolicy(String name, VirtualFile[] roots, VirtualFile[] excludedRoots)
- {
- if (name == null)
- throw new IllegalArgumentException("Null name");
- if (roots == null)
- throw new IllegalArgumentException("Null roots");
- for (VirtualFile root : roots)
- {
- if (root == null)
- throw new IllegalArgumentException("Null root in " + Arrays.asList(roots));
- }
- if (excludedRoots != null)
- {
- for (VirtualFile excludedRoot : excludedRoots)
- {
- if (excludedRoot == null)
- throw new IllegalArgumentException("Null excluded root in " + Arrays.asList(excludedRoots));
- }
- }
-
- this.name = name;
- this.roots = roots;
- this.excludedRoots = excludedRoots;
- }
-
- @Override
- public String getName()
- {
- return name;
- }
-
- @Override
- public List<? extends DelegateLoader> getDelegates()
- {
- return delegates;
- }
-
- /**
- * Set the delegates.
- *
- * @param delegates the delegates.
- */
- public void setDelegates(List<? extends DelegateLoader> delegates)
- {
- this.delegates = delegates;
- }
-
- /**
- * Get the included.
- *
- * @return the included.
- */
- public ClassFilter getIncluded()
- {
- return included;
- }
-
- /**
- * Set the included.
- *
- * @param included the included.
- */
- public void setIncluded(ClassFilter included)
- {
- this.included = included;
- }
-
- /**
- * Get the excluded.
- *
- * @return the excluded.
- */
- public ClassFilter getExcluded()
- {
- return excluded;
- }
-
- /**
- * Set the excluded.
- *
- * @param excluded the excluded.
- */
- public void setExcluded(ClassFilter excluded)
- {
- this.excluded = excluded;
- }
-
- /**
- * Get the excludedExport.
- *
- * @return the excludedExport.
- */
- public ClassFilter getExcludedExport()
- {
- return excludedExport;
- }
-
- /**
- * Set the excludedExport.
- *
- * @param excludedExport the excludedExport.
- */
- public void setExcludedExport(ClassFilter excludedExport)
- {
- this.excludedExport = excludedExport;
- }
-
- /**
- * Get the exportAll.
- *
- * @return the exportAll.
- */
- public ExportAll getExportAll()
- {
- return exportAll;
- }
-
- /**
- * Set the exportAll.
- *
- * @param exportAll the exportAll.
- */
- public void setExportAll(ExportAll exportAll)
- {
- this.exportAll = exportAll;
- if (exportAll != null)
- {
- if (exportedPackages == null)
- {
- Set<String> exported = PackageVisitor.determineAllPackages(roots, excludedRoots, exportAll, included, excluded, excludedExport);
- exportedPackages = exported.toArray(new String[exported.size()]);
- }
- }
- }
-
- /**
- * Get the exported packages
- *
- * @return the exported packages
- */
- public String[] getExportedPackages()
- {
- return exportedPackages;
- }
-
- /**
- * Set the exportedPackages.
- *
- * @param exportedPackages the exportedPackages.
- */
- public void setExportedPackages(String[] exportedPackages)
- {
- this.exportedPackages = exportedPackages;
- }
-
- @Override
- public String[] getPackageNames()
- {
- return exportedPackages;
- }
-
- @Override
- public boolean isImportAll()
- {
- return importAll;
- }
-
- /**
- * Set the importAll.
- *
- * @param importAll the importAll.
- */
- public void setImportAll(boolean importAll)
- {
- this.importAll = importAll;
- }
-
- @Override
- public boolean isCacheable()
- {
- return cacheable;
- }
-
- /**
- * Set the cacheable.
- *
- * @param cacheable the cacheable.
- */
- public void setCacheable(boolean cacheable)
- {
- this.cacheable = cacheable;
- }
-
- @Override
- public boolean isBlackListable()
- {
- return blackListable;
- }
-
- /**
- * Set the blackListable.
- *
- * @param blackListable the blackListable.
- */
- public void setBlackListable(boolean blackListable)
- {
- this.blackListable = blackListable;
- }
-
- @Override
- public DelegateLoader getExported()
- {
- if (getExportAll() != null)
- return new FilteredDelegateLoader(this, ClassFilter.EVERYTHING);
- return super.getExported();
- }
-
- @Override
- public URL getResource(String path)
- {
- if (checkFilters(path, "getResource"))
- return null;
-
- VirtualFile child = findChild(path);
- if (child != null)
- {
- try
- {
- return child.toURL();
- }
- catch (Exception ignored)
- {
- log.debug("Error determining URL for " + child, ignored);
- return null;
- }
- }
- return null;
- }
-
- @Override
- public InputStream getResourceAsStream(String path)
- {
- if (checkFilters(path, "getResourceAsStream"))
- return null;
-
- VirtualFile child = findChild(path);
- if (child != null)
- {
- try
- {
- return child.openStream();
- }
- catch (Exception ignored)
- {
- log.debug("Error opening stream for " + child, ignored);
- return null;
- }
- }
- return null;
- }
-
- @Override
- public void getResources(String name, Set<URL> urls) throws IOException
- {
- if (checkFilters(name, "getResources"))
- return;
-
- for (VirtualFile root : roots)
- {
- try
- {
- VirtualFile child = root.getChild(name);
- if (child != null)
- urls.add(child.toURL());
- }
- catch (Exception e)
- {
- log.debug("Error getting resources for " + root, e);
- }
- }
- }
-
- /**
- * Find a child from a path
- *
- * @param path the path
- * @return the child if found in the roots
- */
- protected VirtualFile findChild(String path)
- {
- VirtualFileInfo vfi = findVirtualFileInfo(path);
- if (vfi == null)
- return null;
- return vfi.getFile();
- }
-
- /**
- * Find a root from a path
- *
- * @param path the path
- * @return the root if found in the roots
- */
- protected VirtualFile findRoot(String path)
- {
- VirtualFileInfo vfi = findVirtualFileInfo(path);
- if (vfi == null)
- return null;
- return vfi.getRoot();
- }
-
- /**
- * Find the virtual file information for a path
- *
- * @param path the path
- * @return the virtual file information
- */
- protected VirtualFileInfo findVirtualFileInfo(String path)
- {
- VirtualFileInfo result = vfsCache.get(path);
- if (result != null)
- return result;
-
- for (VirtualFile root : roots)
- {
- try
- {
- VirtualFile file = root.getChild(path);
- if (file != null)
- {
- result = new VirtualFileInfo(file, root);
- vfsCache.put(path, result);
- return result;
- }
- }
- catch (Exception ignored)
- {
- }
- }
- return null;
- }
-
- @Override
- public PackageInformation getClassPackageInformation(String className, String packageName)
- {
- String path = ClassLoaderUtils.classNameToPath(className);
- VirtualFile root = findRoot(path);
- Manifest manifest = null;
- URL rootURL = null;
- if (root != null)
- {
- try
- {
- rootURL = root.toURL();
- manifest = manifestCache.get(rootURL);
- if (manifest == null)
- {
- manifest = VFSUtils.getManifest(root);
- if (manifest == null)
- manifestCache.put(rootURL, NO_MANIFEST);
- else
- manifestCache.put(rootURL, manifest);
- }
-
- if (manifest == NO_MANIFEST)
- manifest = null;
- }
- catch (Exception ignored)
- {
- if (log.isTraceEnabled())
- log.trace("Unable to retrieve manifest for " + path + " url=" + rootURL + " error=" + ignored.getMessage());
- }
- }
- return new PackageInformation(packageName, manifest);
- }
-
- @Override
- protected void toLongString(StringBuilder builder)
- {
- builder.append(" roots=").append(Arrays.asList(roots)).append(" ");
- super.toLongString(builder);
- if (exportAll != null)
- builder.append(exportAll);
- }
-
- @Override
- protected ProtectionDomain getProtectionDomain(String className, String path)
- {
- VirtualFile clazz = findChild(path);
- if (clazz == null)
- {
- log.trace("Unable to determine class file for " + className);
- return null;
- }
- try
- {
- VirtualFile root = findRoot(path);
- URL codeSourceURL = root.toURL();
- Certificate[] certs = null; // TODO JBMICROCONT-182 determine certificates
- CodeSource cs = new CodeSource(codeSourceURL, certs);
- PermissionCollection permissions = Policy.getPolicy().getPermissions(cs);
- return new ProtectionDomain(cs, permissions);
- }
- catch (Exception e)
- {
- throw new Error("Error determining protection domain for " + clazz, e);
- }
- }
-
- /**
- * Check the filters
- *
- * @param path the path to check
- * @param context the context
- * @return true if it fails the filters
- */
- protected boolean checkFilters(String path, String context)
- {
- if (included != null && included.matchesResourcePath(path) == false)
- {
- if (log.isTraceEnabled())
- log.trace(this + " " + context + " path=" + path + " doesn't match include filter: " + included);
- return true;
- }
- if (excluded != null && excluded.matchesResourcePath(path))
- {
- if (log.isTraceEnabled())
- log.trace(this + " " + context + " path=" + path + " matches exclude filter: " + excluded);
- return true;
- }
- return false;
- }
-
- /**
- * VirtualFileInfo. */
- private static class VirtualFileInfo
- {
- /** The file */
- private VirtualFile file;
-
- /** The root */
- private VirtualFile root;
-
- public VirtualFileInfo(VirtualFile file, VirtualFile root)
- {
- this.file = file;
- this.root = root;
- }
-
- /**
- * Get the file.
- *
- * @return the file.
- */
- public VirtualFile getFile()
- {
- return file;
- }
-
- /**
- * Get the root.
- *
- * @return the root.
- */
- public VirtualFile getRoot()
- {
- return root;
- }
- }
-}
Copied: projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy/VFSClassLoaderPolicy.java (from rev 81555, projects/jboss-cl/branches/Branch_2_0/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy/VFSClassLoaderPolicy.java)
===================================================================
--- projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy/VFSClassLoaderPolicy.java (rev 0)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy/VFSClassLoaderPolicy.java 2008-11-25 14:42:02 UTC (rev 81558)
@@ -0,0 +1,727 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2007, 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.classloading.spi.vfs.policy;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URL;
+import java.security.CodeSource;
+import java.security.PermissionCollection;
+import java.security.Policy;
+import java.security.ProtectionDomain;
+import java.security.cert.Certificate;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.jar.Manifest;
+
+import org.jboss.classloader.plugins.ClassLoaderUtils;
+import org.jboss.classloader.spi.ClassLoaderPolicy;
+import org.jboss.classloader.spi.DelegateLoader;
+import org.jboss.classloader.spi.PackageInformation;
+import org.jboss.classloader.spi.filter.ClassFilter;
+import org.jboss.classloader.spi.filter.FilteredDelegateLoader;
+import org.jboss.classloading.plugins.vfs.PackageVisitor;
+import org.jboss.classloading.spi.metadata.ExportAll;
+import org.jboss.logging.Logger;
+import org.jboss.util.collection.SoftValueHashMap;
+import org.jboss.virtual.VFSUtils;
+import org.jboss.virtual.VirtualFile;
+
+/**
+ * VFSClassLoaderPolicy.
+ *
+ * @author <a href="adrian at jboss.org">Adrian Brock</a>
+ * @author <a href="ales.justin at jboss.org">Ales Justin</a>
+ * @author <a href="anil.saldhana at jboss.org">Anil Saldhana</a>
+ * @version $Revision: 1.1 $
+ */
+public class VFSClassLoaderPolicy extends ClassLoaderPolicy
+{
+ /** The log */
+ private static Logger log = Logger.getLogger(VFSClassLoaderPolicy.class);
+
+ /** Tag for no manifest */
+ private static final Manifest NO_MANIFEST = new Manifest();
+
+ /** A name for the policy */
+ private String name;
+
+ /** The delegates */
+ private List<? extends DelegateLoader> delegates;
+
+ /** The roots */
+ private VirtualFile[] roots;
+
+ /** The excluded roots */
+ private VirtualFile[] excludedRoots;
+
+ /** Whether to export all */
+ private ExportAll exportAll;
+
+ /** The included */
+ private ClassFilter included;
+
+ /** The excluded */
+ private ClassFilter excluded;
+
+ /** The excluded for export */
+ private ClassFilter excludedExport;
+
+ /** The exported packages */
+ private String[] exportedPackages;
+
+ /** The import all */
+ private boolean importAll;
+
+ /** Whether we are cachable */
+ private boolean cacheable = true;
+
+ /** Whether we are blacklistable */
+ private boolean blackListable = true;
+
+ /** Manifest cache */
+ private Map<URL, Manifest> manifestCache = new ConcurrentHashMap<URL, Manifest>();
+
+ /** Cache of virtual file information by path */
+ @SuppressWarnings("unchecked")
+ private Map<String, VirtualFileInfo> vfsCache = Collections.synchronizedMap(new SoftValueHashMap());
+
+ /** JBCL-64, JBVFS-77: CodeSource should use real url **/
+ private boolean useRealURL = true;
+
+ /**
+ * Determine a name from the roots
+ *
+ * @param roots the roots
+ * @return the name
+ */
+ private static String determineName(VirtualFile[] roots)
+ {
+ if (roots == null)
+ return "";
+
+ try
+ {
+ for (VirtualFile root : roots)
+ return root.toURL().toString();
+ }
+ catch (Exception ignored)
+ {
+ }
+ return "";
+ }
+
+ /**
+ * Create a new VFSClassLoaderPolicy.
+ *
+ * @param roots the roots
+ * @return the classloader policy
+ * @throws IllegalArgumentException for null roots
+ */
+ public static VFSClassLoaderPolicy createVFSClassLoaderPolicy(VirtualFile... roots)
+ {
+ return new VFSClassLoaderPolicy(roots);
+ }
+
+ /**
+ * Create a new VFSClassLoaderPolicy.
+ *
+ * @param name a name of the policy
+ * @param roots the roots
+ * @return the classloader policy
+ * @throws IllegalArgumentException for null roots
+ */
+ public static VFSClassLoaderPolicy createVFSClassLoaderPolicy(String name, VirtualFile... roots)
+ {
+ return new VFSClassLoaderPolicy(name, roots);
+ }
+
+ /**
+ * Create a new VFSClassLoaderPolicy.
+ *
+ * @param roots the roots
+ * @param excludedRoots the excluded roots
+ * @return the classloader policy
+ * @throws IllegalArgumentException for null roots
+ */
+ public static VFSClassLoaderPolicy createVFSClassLoaderPolicy(VirtualFile[] roots, VirtualFile[] excludedRoots)
+ {
+ return new VFSClassLoaderPolicy(roots, excludedRoots);
+ }
+
+ /**
+ * Create a new VFSClassLoaderPolicy.
+ *
+ * @param name a name of the policy
+ * @param roots the roots
+ * @param excludedRoots the excluded roots
+ * @return the classloader policy
+ * @throws IllegalArgumentException for null roots
+ */
+ public static VFSClassLoaderPolicy createVFSClassLoaderPolicy(String name, VirtualFile[] roots, VirtualFile[] excludedRoots)
+ {
+ return new VFSClassLoaderPolicy(name, roots, excludedRoots);
+ }
+
+
+ /**
+ * Create a new VFSClassLoaderPolicy.
+ *
+ * @param roots the roots
+ * @throws IllegalArgumentException for null roots
+ */
+ public VFSClassLoaderPolicy(VirtualFile[] roots)
+ {
+ this(determineName(roots), roots);
+ }
+
+ /**
+ * Create a new VFSClassLoaderPolicy.
+ *
+ * @param roots the roots
+ * @param excludedRoots the excluded roots
+ * @throws IllegalArgumentException for null roots
+ */
+ public VFSClassLoaderPolicy(VirtualFile[] roots, VirtualFile[] excludedRoots)
+ {
+ this(determineName(roots), roots, excludedRoots);
+ }
+
+ /**
+ * Create a new VFSClassLoaderPolicy.
+ *
+ * @param name the name
+ * @param roots the roots
+ * @throws IllegalArgumentException for null roots
+ */
+ public VFSClassLoaderPolicy(String name, VirtualFile[] roots)
+ {
+ this(name, roots, null);
+ }
+
+ /**
+ * Create a new VFSClassLoaderPolicy.
+ *
+ * @param name the name
+ * @param roots the roots
+ * @param excludedRoots the excluded roots
+ * @throws IllegalArgumentException for null roots
+ */
+ public VFSClassLoaderPolicy(String name, VirtualFile[] roots, VirtualFile[] excludedRoots)
+ {
+ if (name == null)
+ throw new IllegalArgumentException("Null name");
+ if (roots == null)
+ throw new IllegalArgumentException("Null roots");
+ for (VirtualFile root : roots)
+ {
+ if (root == null)
+ throw new IllegalArgumentException("Null root in " + Arrays.asList(roots));
+ }
+ if (excludedRoots != null)
+ {
+ for (VirtualFile excludedRoot : excludedRoots)
+ {
+ if (excludedRoot == null)
+ throw new IllegalArgumentException("Null excluded root in " + Arrays.asList(excludedRoots));
+ }
+ }
+
+ this.name = name;
+ this.roots = roots;
+ this.excludedRoots = excludedRoots;
+ }
+
+ @Override
+ public String getName()
+ {
+ return name;
+ }
+
+ @Override
+ public List<? extends DelegateLoader> getDelegates()
+ {
+ return delegates;
+ }
+
+ /**
+ * Set the delegates.
+ *
+ * @param delegates the delegates.
+ */
+ public void setDelegates(List<? extends DelegateLoader> delegates)
+ {
+ this.delegates = delegates;
+ }
+
+ /**
+ * Get the included.
+ *
+ * @return the included.
+ */
+ public ClassFilter getIncluded()
+ {
+ return included;
+ }
+
+ /**
+ * Set the included.
+ *
+ * @param included the included.
+ */
+ public void setIncluded(ClassFilter included)
+ {
+ this.included = included;
+ }
+
+ /**
+ * Get the excluded.
+ *
+ * @return the excluded.
+ */
+ public ClassFilter getExcluded()
+ {
+ return excluded;
+ }
+
+ /**
+ * Set the excluded.
+ *
+ * @param excluded the excluded.
+ */
+ public void setExcluded(ClassFilter excluded)
+ {
+ this.excluded = excluded;
+ }
+
+ /**
+ * Get the excludedExport.
+ *
+ * @return the excludedExport.
+ */
+ public ClassFilter getExcludedExport()
+ {
+ return excludedExport;
+ }
+
+ /**
+ * Set the excludedExport.
+ *
+ * @param excludedExport the excludedExport.
+ */
+ public void setExcludedExport(ClassFilter excludedExport)
+ {
+ this.excludedExport = excludedExport;
+ }
+
+ /**
+ * Get the exportAll.
+ *
+ * @return the exportAll.
+ */
+ public ExportAll getExportAll()
+ {
+ return exportAll;
+ }
+
+ /**
+ * Set the exportAll.
+ *
+ * @param exportAll the exportAll.
+ */
+ public void setExportAll(ExportAll exportAll)
+ {
+ this.exportAll = exportAll;
+ if (exportAll != null)
+ {
+ if (exportedPackages == null)
+ {
+ Set<String> exported = PackageVisitor.determineAllPackages(roots, excludedRoots, exportAll, included, excluded, excludedExport);
+ exportedPackages = exported.toArray(new String[exported.size()]);
+ }
+ }
+ }
+
+ /**
+ * Get the exported packages
+ *
+ * @return the exported packages
+ */
+ public String[] getExportedPackages()
+ {
+ return exportedPackages;
+ }
+
+ /**
+ * Set the exportedPackages.
+ *
+ * @param exportedPackages the exportedPackages.
+ */
+ public void setExportedPackages(String[] exportedPackages)
+ {
+ this.exportedPackages = exportedPackages;
+ }
+
+ @Override
+ public String[] getPackageNames()
+ {
+ return exportedPackages;
+ }
+
+ @Override
+ public boolean isImportAll()
+ {
+ return importAll;
+ }
+
+ /**
+ * Set the importAll.
+ *
+ * @param importAll the importAll.
+ */
+ public void setImportAll(boolean importAll)
+ {
+ this.importAll = importAll;
+ }
+
+ @Override
+ public boolean isCacheable()
+ {
+ return cacheable;
+ }
+
+ /**
+ * Set the cacheable.
+ *
+ * @param cacheable the cacheable.
+ */
+ public void setCacheable(boolean cacheable)
+ {
+ this.cacheable = cacheable;
+ }
+
+ @Override
+ public boolean isBlackListable()
+ {
+ return blackListable;
+ }
+
+ /**
+ * Set the blackListable.
+ *
+ * @param blackListable the blackListable.
+ */
+ public void setBlackListable(boolean blackListable)
+ {
+ this.blackListable = blackListable;
+ }
+
+ @Override
+ public DelegateLoader getExported()
+ {
+ if (getExportAll() != null)
+ return new FilteredDelegateLoader(this, ClassFilter.EVERYTHING);
+ return super.getExported();
+ }
+
+ @Override
+ public URL getResource(String path)
+ {
+ if (checkFilters(path, "getResource"))
+ return null;
+
+ VirtualFile child = findChild(path);
+ if (child != null)
+ {
+ try
+ {
+ return child.toURL();
+ }
+ catch (Exception ignored)
+ {
+ log.debug("Error determining URL for " + child, ignored);
+ return null;
+ }
+ }
+ return null;
+ }
+
+ @Override
+ public InputStream getResourceAsStream(String path)
+ {
+ if (checkFilters(path, "getResourceAsStream"))
+ return null;
+
+ VirtualFile child = findChild(path);
+ if (child != null)
+ {
+ try
+ {
+ return child.openStream();
+ }
+ catch (Exception ignored)
+ {
+ log.debug("Error opening stream for " + child, ignored);
+ return null;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Do we use real url.
+ *
+ * @return true if real url should be used
+ */
+ public boolean isUseRealURL()
+ {
+ return useRealURL;
+ }
+
+ /**
+ * Set use real url flag.
+ *
+ * @param useRealURL the real url flag
+ */
+ public void setUseRealURL(boolean useRealURL)
+ {
+ this.useRealURL = useRealURL;
+ }
+
+ @Override
+ public void getResources(String name, Set<URL> urls) throws IOException
+ {
+ if (checkFilters(name, "getResources"))
+ return;
+
+ for (VirtualFile root : roots)
+ {
+ try
+ {
+ VirtualFile child = root.getChild(name);
+ if (child != null)
+ urls.add(child.toURL());
+ }
+ catch (Exception e)
+ {
+ log.debug("Error getting resources for " + root, e);
+ }
+ }
+ }
+
+ /**
+ * Find a child from a path
+ *
+ * @param path the path
+ * @return the child if found in the roots
+ */
+ protected VirtualFile findChild(String path)
+ {
+ VirtualFileInfo vfi = findVirtualFileInfo(path);
+ if (vfi == null)
+ return null;
+ return vfi.getFile();
+ }
+
+ /**
+ * Find a root from a path
+ *
+ * @param path the path
+ * @return the root if found in the roots
+ */
+ protected VirtualFile findRoot(String path)
+ {
+ VirtualFileInfo vfi = findVirtualFileInfo(path);
+ if (vfi == null)
+ return null;
+ return vfi.getRoot();
+ }
+
+ /**
+ * Find the virtual file information for a path
+ *
+ * @param path the path
+ * @return the virtual file information
+ */
+ protected VirtualFileInfo findVirtualFileInfo(String path)
+ {
+ VirtualFileInfo result = vfsCache.get(path);
+ if (result != null)
+ return result;
+
+ for (VirtualFile root : roots)
+ {
+ try
+ {
+ VirtualFile file = root.getChild(path);
+ if (file != null)
+ {
+ result = new VirtualFileInfo(file, root);
+ vfsCache.put(path, result);
+ return result;
+ }
+ }
+ catch (Exception ignored)
+ {
+ }
+ }
+ return null;
+ }
+
+ @Override
+ public PackageInformation getClassPackageInformation(String className, String packageName)
+ {
+ String path = ClassLoaderUtils.classNameToPath(className);
+ VirtualFile root = findRoot(path);
+ Manifest manifest = null;
+ URL rootURL = null;
+ if (root != null)
+ {
+ try
+ {
+ rootURL = root.toURL();
+ manifest = manifestCache.get(rootURL);
+ if (manifest == null)
+ {
+ manifest = VFSUtils.getManifest(root);
+ if (manifest == null)
+ manifestCache.put(rootURL, NO_MANIFEST);
+ else
+ manifestCache.put(rootURL, manifest);
+ }
+
+ if (manifest == NO_MANIFEST)
+ manifest = null;
+ }
+ catch (Exception ignored)
+ {
+ if (log.isTraceEnabled())
+ log.trace("Unable to retrieve manifest for " + path + " url=" + rootURL + " error=" + ignored.getMessage());
+ }
+ }
+ return new PackageInformation(packageName, manifest);
+ }
+
+ @Override
+ protected void toLongString(StringBuilder builder)
+ {
+ builder.append(" roots=").append(Arrays.asList(roots)).append(" ");
+ super.toLongString(builder);
+ if (exportAll != null)
+ builder.append(exportAll);
+ }
+
+ @Override
+ protected ProtectionDomain getProtectionDomain(String className, String path)
+ {
+ VirtualFile clazz = findChild(path);
+ if (clazz == null)
+ {
+ if (log.isTraceEnabled())
+ log.trace("Unable to determine class file for " + className);
+
+ return null;
+ }
+ try
+ {
+ VirtualFile root = findRoot(path);
+ URL codeSourceURL = isUseRealURL() ? VFSUtils.getRealURL(root) : root.toURL();
+
+ if (log.isTraceEnabled())
+ log.trace("getProtectionDomain:className="+ className + " path="+ path + " codeSourceURL=" + codeSourceURL);
+
+ Certificate[] certs = null; // TODO JBCL-67 determine certificates
+ CodeSource cs = new CodeSource(codeSourceURL, certs);
+ PermissionCollection permissions = Policy.getPolicy().getPermissions(cs);
+ return new ProtectionDomain(cs, permissions);
+ }
+ catch (Exception e)
+ {
+ throw new Error("Error determining protection domain for " + clazz, e);
+ }
+ }
+
+ /**
+ * Check the filters
+ *
+ * @param path the path to check
+ * @param context the context
+ * @return true if it fails the filters
+ */
+ protected boolean checkFilters(String path, String context)
+ {
+ if (included != null && included.matchesResourcePath(path) == false)
+ {
+ if (log.isTraceEnabled())
+ log.trace(this + " " + context + " path=" + path + " doesn't match include filter: " + included);
+ return true;
+ }
+ if (excluded != null && excluded.matchesResourcePath(path))
+ {
+ if (log.isTraceEnabled())
+ log.trace(this + " " + context + " path=" + path + " matches exclude filter: " + excluded);
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * VirtualFileInfo. */
+ private static class VirtualFileInfo
+ {
+ /** The file */
+ private VirtualFile file;
+
+ /** The root */
+ private VirtualFile root;
+
+ public VirtualFileInfo(VirtualFile file, VirtualFile root)
+ {
+ this.file = file;
+ this.root = root;
+ }
+
+ /**
+ * Get the file.
+ *
+ * @return the file.
+ */
+ public VirtualFile getFile()
+ {
+ return file;
+ }
+
+ /**
+ * Get the root.
+ *
+ * @return the root.
+ */
+ public VirtualFile getRoot()
+ {
+ return root;
+ }
+ }
+}
Deleted: projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/ClassLoadingVFSTestSuite.java
===================================================================
--- projects/jboss-cl/branches/Branch_2_0/classloading-vfs/src/test/java/org/jboss/test/classloading/ClassLoadingVFSTestSuite.java 2008-11-25 14:14:45 UTC (rev 81554)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/ClassLoadingVFSTestSuite.java 2008-11-25 14:42:02 UTC (rev 81558)
@@ -1,87 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, 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.classloading;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-import junit.textui.TestRunner;
-
-import org.jboss.test.classloading.vfs.client.test.ClientClassPathUnitTestCase;
-import org.jboss.test.classloading.vfs.metadata.test.DomainUnitTestCase;
-import org.jboss.test.classloading.vfs.metadata.test.ImportAllUnitTestCase;
-import org.jboss.test.classloading.vfs.metadata.test.ManagedObjectVFSClassLoaderFactoryUnitTestCase;
-import org.jboss.test.classloading.vfs.metadata.test.ModuleDependencyUnitTestCase;
-import org.jboss.test.classloading.vfs.metadata.test.PackageDependencyUnitTestCase;
-import org.jboss.test.classloading.vfs.metadata.test.ReExportModuleUnitTestCase;
-import org.jboss.test.classloading.vfs.metadata.test.ReExportPackageUnitTestCase;
-import org.jboss.test.classloading.vfs.metadata.test.UsesPackageUnitTestCase;
-import org.jboss.test.classloading.vfs.metadata.test.VFSClassLoaderFactoryUnitTestCase;
-import org.jboss.test.classloading.vfs.metadata.test.VFSResourceVisitorUnitTestCase;
-import org.jboss.test.classloading.vfs.metadata.xml.test.VFSClassLoaderFactoryXMLUnitTestCase;
-import org.jboss.test.classloading.vfs.policy.test.ExportAllUnitTestCase;
-import org.jboss.test.classloading.vfs.policy.test.PackageInfoUnitTestCase;
-
-/**
- * ClassLoading VFS Test Suite.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision: 37459 $
- */
-public class ClassLoadingVFSTestSuite extends TestSuite
-{
- /**
- * For running the testsuite from the command line
- *
- * @param args the command line args
- */
- public static void main(String[] args)
- {
- TestRunner.run(suite());
- }
-
- /**
- * Create the testsuite
- *
- * @return the testsuite
- */
- public static Test suite()
- {
- TestSuite suite = new TestSuite("ClassLoading VFS Tests");
-
- suite.addTest(ExportAllUnitTestCase.suite());
- suite.addTest(VFSClassLoaderFactoryXMLUnitTestCase.suite());
- suite.addTest(DomainUnitTestCase.suite());
- suite.addTest(ImportAllUnitTestCase.suite());
- suite.addTest(ModuleDependencyUnitTestCase.suite());
- suite.addTest(PackageDependencyUnitTestCase.suite());
- suite.addTest(VFSClassLoaderFactoryUnitTestCase.suite());
- suite.addTest(ManagedObjectVFSClassLoaderFactoryUnitTestCase.suite());
- suite.addTest(ReExportModuleUnitTestCase.suite());
- suite.addTest(ReExportPackageUnitTestCase.suite());
- suite.addTest(UsesPackageUnitTestCase.suite());
- suite.addTest(VFSResourceVisitorUnitTestCase.suite());
- suite.addTest(ClientClassPathUnitTestCase.suite());
- suite.addTest(PackageInfoUnitTestCase.suite());
-
- return suite;
- }
-}
Copied: projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/ClassLoadingVFSTestSuite.java (from rev 81555, projects/jboss-cl/branches/Branch_2_0/classloading-vfs/src/test/java/org/jboss/test/classloading/ClassLoadingVFSTestSuite.java)
===================================================================
--- projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/ClassLoadingVFSTestSuite.java (rev 0)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/ClassLoadingVFSTestSuite.java 2008-11-25 14:42:02 UTC (rev 81558)
@@ -0,0 +1,89 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.classloading;
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+import junit.textui.TestRunner;
+
+import org.jboss.test.classloading.vfs.client.test.ClientClassPathUnitTestCase;
+import org.jboss.test.classloading.vfs.metadata.test.DomainUnitTestCase;
+import org.jboss.test.classloading.vfs.metadata.test.ImportAllUnitTestCase;
+import org.jboss.test.classloading.vfs.metadata.test.ManagedObjectVFSClassLoaderFactoryUnitTestCase;
+import org.jboss.test.classloading.vfs.metadata.test.ModuleDependencyUnitTestCase;
+import org.jboss.test.classloading.vfs.metadata.test.PackageDependencyUnitTestCase;
+import org.jboss.test.classloading.vfs.metadata.test.ReExportModuleUnitTestCase;
+import org.jboss.test.classloading.vfs.metadata.test.ReExportPackageUnitTestCase;
+import org.jboss.test.classloading.vfs.metadata.test.UsesPackageUnitTestCase;
+import org.jboss.test.classloading.vfs.metadata.test.VFSClassLoaderFactoryUnitTestCase;
+import org.jboss.test.classloading.vfs.metadata.test.VFSResourceVisitorUnitTestCase;
+import org.jboss.test.classloading.vfs.metadata.xml.test.VFSClassLoaderFactoryXMLUnitTestCase;
+import org.jboss.test.classloading.vfs.metadata.xml.test.NoopClassLoaderFactoryXMLUnitTestCase;
+import org.jboss.test.classloading.vfs.policy.test.ExportAllUnitTestCase;
+import org.jboss.test.classloading.vfs.policy.test.PackageInfoUnitTestCase;
+
+/**
+ * ClassLoading VFS Test Suite.
+ *
+ * @author <a href="adrian at jboss.com">Adrian Brock</a>
+ * @version $Revision: 37459 $
+ */
+public class ClassLoadingVFSTestSuite extends TestSuite
+{
+ /**
+ * For running the testsuite from the command line
+ *
+ * @param args the command line args
+ */
+ public static void main(String[] args)
+ {
+ TestRunner.run(suite());
+ }
+
+ /**
+ * Create the testsuite
+ *
+ * @return the testsuite
+ */
+ public static Test suite()
+ {
+ TestSuite suite = new TestSuite("ClassLoading VFS Tests");
+
+ suite.addTest(ExportAllUnitTestCase.suite());
+ suite.addTest(VFSClassLoaderFactoryXMLUnitTestCase.suite());
+ suite.addTest(NoopClassLoaderFactoryXMLUnitTestCase.suite());
+ suite.addTest(DomainUnitTestCase.suite());
+ suite.addTest(ImportAllUnitTestCase.suite());
+ suite.addTest(ModuleDependencyUnitTestCase.suite());
+ suite.addTest(PackageDependencyUnitTestCase.suite());
+ suite.addTest(VFSClassLoaderFactoryUnitTestCase.suite());
+ suite.addTest(ManagedObjectVFSClassLoaderFactoryUnitTestCase.suite());
+ suite.addTest(ReExportModuleUnitTestCase.suite());
+ suite.addTest(ReExportPackageUnitTestCase.suite());
+ suite.addTest(UsesPackageUnitTestCase.suite());
+ suite.addTest(VFSResourceVisitorUnitTestCase.suite());
+ suite.addTest(ClientClassPathUnitTestCase.suite());
+ suite.addTest(PackageInfoUnitTestCase.suite());
+
+ return suite;
+ }
+}
Copied: projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/support/NoopClassLoaderFactory.java (from rev 81555, projects/jboss-cl/branches/Branch_2_0/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/support/NoopClassLoaderFactory.java)
===================================================================
--- projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/support/NoopClassLoaderFactory.java (rev 0)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/support/NoopClassLoaderFactory.java 2008-11-25 14:42:02 UTC (rev 81558)
@@ -0,0 +1,50 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.classloading.vfs.metadata.xml.support;
+
+import java.util.Collections;
+import java.util.List;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlTransient;
+
+import org.jboss.beans.metadata.spi.BeanMetaData;
+import org.jboss.classloading.spi.vfs.metadata.VFSClassLoaderFactory;
+import org.jboss.xb.annotations.JBossXmlSchema;
+
+/**
+ * Noop cl factory.
+ *
+ * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
+ */
+ at JBossXmlSchema(namespace="urn:jboss:classloader:1.0", elementFormDefault=XmlNsForm.QUALIFIED)
+ at XmlRootElement(name="classloader")
+public class NoopClassLoaderFactory extends VFSClassLoaderFactory
+{
+ private static final long serialVersionUID = 1l;
+
+ @XmlTransient
+ public List<BeanMetaData> getBeans()
+ {
+ return Collections.emptyList();
+ }
+}
Copied: projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/test/NoopClassLoaderFactoryXMLUnitTestCase.java (from rev 81555, projects/jboss-cl/branches/Branch_2_0/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/test/NoopClassLoaderFactoryXMLUnitTestCase.java)
===================================================================
--- projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/test/NoopClassLoaderFactoryXMLUnitTestCase.java (rev 0)
+++ projects/jboss-cl/tags/2.0.0.GA/classloading-vfs/src/test/java/org/jboss/test/classloading/vfs/metadata/xml/test/NoopClassLoaderFactoryXMLUnitTestCase.java 2008-11-25 14:42:02 UTC (rev 81558)
@@ -0,0 +1,91 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, 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.classloading.vfs.metadata.xml.test;
+
+import junit.framework.Test;
+import org.jboss.test.classloading.vfs.metadata.xml.AbstractJBossXBTest;
+import org.jboss.test.classloading.vfs.metadata.xml.support.NoopClassLoaderFactory;
+import org.jboss.xb.binding.sunday.unmarshalling.DefaultSchemaResolver;
+import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
+import org.jboss.xb.binding.sunday.unmarshalling.SingletonSchemaResolverFactory;
+import org.jboss.classloading.spi.vfs.metadata.VFSClassLoaderFactory10;
+
+/**
+ * NoopClassLoaderFactoryXMLUnitTestCase.
+ *
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+public class NoopClassLoaderFactoryXMLUnitTestCase extends AbstractJBossXBTest
+{
+ public static Test suite()
+ {
+ return suite(NoopClassLoaderFactoryXMLUnitTestCase.class);
+ }
+
+ public NoopClassLoaderFactoryXMLUnitTestCase(String name)
+ {
+ super(name);
+ }
+
+ protected void changeMetaDataClass(Class<?> clazz)
+ {
+ SingletonSchemaResolverFactory factory = SingletonSchemaResolverFactory.getInstance();
+ SchemaBindingResolver resolver = factory.getSchemaBindingResolver();
+ DefaultSchemaResolver dsr = assertInstanceOf(resolver, DefaultSchemaResolver.class);
+ dsr.removeClassBinding("urn:jboss:classloader:1.0");
+ dsr.addClassBinding("urn:jboss:classloader:1.0", clazz);
+ }
+
+ @Override
+ protected void setUp() throws Exception
+ {
+ changeMetaDataClass(NoopClassLoaderFactory.class);
+ try
+ {
+ super.setUp();
+ }
+ catch (Exception e)
+ {
+ changeMetaDataClass(VFSClassLoaderFactory10.class);
+ throw e;
+ }
+ }
+
+ @Override
+ protected void tearDown() throws Exception
+ {
+ try
+ {
+ super.tearDown();
+ }
+ finally
+ {
+ changeMetaDataClass(VFSClassLoaderFactory10.class);
+ }
+ }
+
+ public void testExportImportMixed() throws Exception
+ {
+ NoopClassLoaderFactory result = unmarshalObject(NoopClassLoaderFactory.class);
+ assertNotNull(result);
+ }
+}
\ No newline at end of file
Deleted: projects/jboss-cl/tags/2.0.0.GA/pom.xml
===================================================================
--- projects/jboss-cl/branches/Branch_2_0/pom.xml 2008-11-25 14:14:45 UTC (rev 81554)
+++ projects/jboss-cl/tags/2.0.0.GA/pom.xml 2008-11-25 14:42:02 UTC (rev 81558)
@@ -1,314 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-parent</artifactId>
- <version>4</version>
- </parent>
- <groupId>org.jboss.cl</groupId>
- <artifactId>jboss-cl</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- <packaging>pom</packaging>
- <name>JBoss ClassLoader Parent POM</name>
- <url>http://www.jboss.com/products/jbossmc</url>
- <description>
- JBoss ClassLoader
- </description>
- <scm>
- <connection>scm:svn:http://anonsvn.jboss.org/repos/jbossas/projects/jboss-cl/branches/Branch_2_0/</connection>
- <developerConnection>scm:svn:https://svn.jboss.org/repos/jbossas/projects/jboss-cl/branches/Branch_2_0/</developerConnection>
- <url>http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jbossas/projects/jboss-cl/branches/Branch_2_0</url>
- </scm>
-
- <modules>
- <module>classloader</module>
- <module>classloading</module>
- <module>classloading-vfs</module>
- <module>build</module>
- </modules>
-
- <properties>
- <version.jboss.man>2.0.0.CR2</version.jboss.man>
- <version.jboss.microcontainer>2.0.0.CR4</version.jboss.microcontainer>
- <version.jboss.common.core>2.2.9.GA</version.jboss.common.core>
- <version.jboss.logging.spi>2.0.5.GA</version.jboss.logging.spi>
- <version.jboss.classloading.spi>5.0.0.CR2</version.jboss.classloading.spi>
- <version.jboss.vfs>2.0.0.CR2</version.jboss.vfs>
- <version.jbossxb>2.0.0.GA</version.jbossxb>
- <version.org.jboss.test>1.1.1.GA</version.org.jboss.test>
- <version.junit>4.4</version.junit>
- </properties>
-
- <build>
- <outputDirectory>${microcontainer.outputDirectory}</outputDirectory>
- <testOutputDirectory>${microcontainer.testOutputDirectory}</testOutputDirectory>
- <finalName>${artifactId}</finalName>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>2.0.2</version>
- <configuration>
- <source>1.5</source>
- <target>1.5</target>
- <showDeprecation>true</showDeprecation>
- <showWarnings>true</showWarnings>
- <optimize>true</optimize>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-release-plugin</artifactId>
- <version>2.0-beta-7</version>
- <configuration>
- <generateReleasePoms>false</generateReleasePoms>
- <tagBase>https://svn.jboss.org/repos/jbossas/projects/jboss-cl/tags</tagBase>
- <autoVersionSubmodules>true</autoVersionSubmodules>
- </configuration>
- </plugin>
- </plugins>
- <pluginManagement>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-assembly-plugin</artifactId>
- <executions>
- <execution>
- <id>make-assembly</id>
- <phase>package</phase>
- <goals>
- <goal>attached</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <artifactId>maven-idea-plugin</artifactId>
- <configuration>
- <downloadSources>true</downloadSources>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <version>2.2</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <version>2.4.1</version>
- <configuration>
- <redirectTestOutputToFile>true</redirectTestOutputToFile>
- <includes>
- <include>org/jboss/test/**/*TestCase.java</include>
- </includes>
- </configuration>
- </plugin>
- <plugin>
- <!-- Configure javadoc plugin with APIviz -->
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <configuration>
- <doclet>net.gleamynode.apiviz.APIviz</doclet>
- <docletArtifact>
- <groupId>net.gleamynode.apiviz</groupId>
- <artifactId>apiviz</artifactId>
- <version>1.1.0</version>
- </docletArtifact>
- <encoding>UTF-8</encoding>
- </configuration>
- </plugin>
- </plugins>
- </pluginManagement>
- </build>
-
- <repositories>
- <repository>
- <id>repository.jboss.org</id>
- <name>JBoss Repository</name>
- <layout>default</layout>
- <url>http://repository.jboss.org/maven2/</url>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- </repository>
- <repository>
- <id>snapshots.jboss.org</id>
- <name>JBoss Snapshots Repository</name>
- <layout>default</layout>
- <url>http://snapshots.jboss.org/maven2/</url>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- <releases>
- <enabled>false</enabled>
- </releases>
- </repository>
- <!-- APIviz repository -->
- <repository>
- <id>apiviz.release</id>
- <name>APIviz releases</name>
- <url>http://apiviz.googlecode.com/svn/site/repo/mvn/release</url>
- <releases>
- <enabled>true</enabled>
- </releases>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- </repository>
- </repositories>
-
- <reporting>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-project-info-reports-plugin</artifactId>
- <reportSets>
- <reportSet>
- <reports>
- <report>dependencies</report>
- <report>issue-tracking</report>
- <report>license</report>
- <report>scm</report>
- </reports>
- </reportSet>
- </reportSets>
- </plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>findbugs-maven-plugin</artifactId>
- <version>1.0.0</version>
- </plugin>
- </plugins>
- </reporting>
-
- <dependencyManagement>
- <!-- The parent pom manages the inter-dependencies of the modules. -->
- <dependencies>
-
- <dependency>
- <groupId>org.jboss.cl</groupId>
- <artifactId>jboss-classloader</artifactId>
- <version>${project.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.cl</groupId>
- <artifactId>jboss-classloading</artifactId>
- <version>${project.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.cl</groupId>
- <artifactId>jboss-classloading-vfs</artifactId>
- <version>${project.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.man</groupId>
- <artifactId>jboss-managed</artifactId>
- <version>${version.jboss.man}</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.microcontainer</groupId>
- <artifactId>jboss-dependency</artifactId>
- <version>${version.jboss.microcontainer}</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.microcontainer</groupId>
- <artifactId>jboss-kernel</artifactId>
- <version>${version.jboss.microcontainer}</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- <version>${version.jboss.common.core}</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.logging</groupId>
- <artifactId>jboss-logging-spi</artifactId>
- <version>${version.jboss.logging.spi}</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.integration</groupId>
- <artifactId>jboss-classloading-spi</artifactId>
- <version>${version.jboss.classloading.spi}</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jbossxb</artifactId>
- <version>${version.jbossxb}</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-vfs</artifactId>
- <version>${version.jboss.vfs}</version>
- </dependency>
-
- <!-- test dependencies -->
- <dependency>
- <groupId>org.jboss.test</groupId>
- <artifactId>jboss-test</artifactId>
- <version>${version.org.jboss.test}</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>${version.junit}</version>
- <scope>test</scope>
- </dependency>
-
- </dependencies>
- </dependencyManagement>
-
- <profiles>
- <profile>
- <id>default</id>
- <activation>
- <activeByDefault>true</activeByDefault>
- </activation>
- <properties>
- <microcontainer.outputDirectory>target/classes</microcontainer.outputDirectory>
- <microcontainer.testOutputDirectory>target/tests-classes</microcontainer.testOutputDirectory>
- </properties>
- </profile>
- <profile>
- <id>eclipse</id>
- <build>
- <defaultGoal>process-test-resources</defaultGoal>
- <plugins>
- <plugin>
- <artifactId>maven-eclipse-plugin</artifactId>
- <executions>
- <execution>
- <id>eclipse</id>
- <phase>process-test-resources</phase>
- <goals>
- <goal>eclipse</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <downloadSources>true</downloadSources>
- <buildOutputDirectory>${microcontainer.outputDirectory}</buildOutputDirectory>
- </configuration>
- </plugin>
- </plugins>
- </build>
- <properties>
- <microcontainer.outputDirectory>eclipse-target/classes</microcontainer.outputDirectory>
- <microcontainer.testOutputDirectory>eclipse-target/tests-classes</microcontainer.testOutputDirectory>
- </properties>
- </profile>
- </profiles>
-
-</project>
\ No newline at end of file
Copied: projects/jboss-cl/tags/2.0.0.GA/pom.xml (from rev 81557, projects/jboss-cl/branches/Branch_2_0/pom.xml)
===================================================================
--- projects/jboss-cl/tags/2.0.0.GA/pom.xml (rev 0)
+++ projects/jboss-cl/tags/2.0.0.GA/pom.xml 2008-11-25 14:42:02 UTC (rev 81558)
@@ -0,0 +1,314 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-parent</artifactId>
+ <version>4</version>
+ </parent>
+ <groupId>org.jboss.cl</groupId>
+ <artifactId>jboss-cl</artifactId>
+ <version>2.0.0.GA</version>
+ <packaging>pom</packaging>
+ <name>JBoss ClassLoader Parent POM</name>
+ <url>http://www.jboss.com/products/jbossmc</url>
+ <description>
+ JBoss ClassLoader
+ </description>
+ <scm>
+ <connection>scm:svn:http://anonsvn.jboss.org/repos/jbossas/projects/jboss-cl/tags/2.0.0.GA</connection>
+ <developerConnection>scm:svn:https://svn.jboss.org/repos/jbossas/projects/jboss-cl/tags/2.0.0.GA</developerConnection>
+ <url>http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jbossas/projects/jboss-cl/tags/2.0.0.GA</url>
+ </scm>
+
+ <modules>
+ <module>classloader</module>
+ <module>classloading</module>
+ <module>classloading-vfs</module>
+ <module>build</module>
+ </modules>
+
+ <properties>
+ <version.jboss.man>2.0.0.GA</version.jboss.man>
+ <version.jboss.microcontainer>2.0.0.GA</version.jboss.microcontainer>
+ <version.jboss.common.core>2.2.9.GA</version.jboss.common.core>
+ <version.jboss.logging.spi>2.0.5.GA</version.jboss.logging.spi>
+ <version.jboss.classloading.spi>5.0.0.CR2</version.jboss.classloading.spi>
+ <version.jboss.vfs>2.0.0.GA</version.jboss.vfs>
+ <version.jbossxb>2.0.0.GA</version.jbossxb>
+ <version.org.jboss.test>1.1.1.GA</version.org.jboss.test>
+ <version.junit>4.4</version.junit>
+ </properties>
+
+ <build>
+ <outputDirectory>${microcontainer.outputDirectory}</outputDirectory>
+ <testOutputDirectory>${microcontainer.testOutputDirectory}</testOutputDirectory>
+ <finalName>${artifactId}</finalName>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>2.0.2</version>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ <showDeprecation>true</showDeprecation>
+ <showWarnings>true</showWarnings>
+ <optimize>true</optimize>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-release-plugin</artifactId>
+ <version>2.0-beta-7</version>
+ <configuration>
+ <generateReleasePoms>false</generateReleasePoms>
+ <tagBase>https://svn.jboss.org/repos/jbossas/projects/jboss-cl/tags</tagBase>
+ <autoVersionSubmodules>true</autoVersionSubmodules>
+ </configuration>
+ </plugin>
+ </plugins>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>make-assembly</id>
+ <phase>package</phase>
+ <goals>
+ <goal>attached</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-idea-plugin</artifactId>
+ <configuration>
+ <downloadSources>true</downloadSources>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <version>2.2</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.4.1</version>
+ <configuration>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ <includes>
+ <include>org/jboss/test/**/*TestCase.java</include>
+ </includes>
+ </configuration>
+ </plugin>
+ <plugin>
+ <!-- Configure javadoc plugin with APIviz -->
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <configuration>
+ <doclet>net.gleamynode.apiviz.APIviz</doclet>
+ <docletArtifact>
+ <groupId>net.gleamynode.apiviz</groupId>
+ <artifactId>apiviz</artifactId>
+ <version>1.1.0</version>
+ </docletArtifact>
+ <encoding>UTF-8</encoding>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+ <repositories>
+ <repository>
+ <id>repository.jboss.org</id>
+ <name>JBoss Repository</name>
+ <layout>default</layout>
+ <url>http://repository.jboss.org/maven2/</url>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ <repository>
+ <id>snapshots.jboss.org</id>
+ <name>JBoss Snapshots Repository</name>
+ <layout>default</layout>
+ <url>http://snapshots.jboss.org/maven2/</url>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ </repository>
+ <!-- APIviz repository -->
+ <repository>
+ <id>apiviz.release</id>
+ <name>APIviz releases</name>
+ <url>http://apiviz.googlecode.com/svn/site/repo/mvn/release</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-project-info-reports-plugin</artifactId>
+ <reportSets>
+ <reportSet>
+ <reports>
+ <report>dependencies</report>
+ <report>issue-tracking</report>
+ <report>license</report>
+ <report>scm</report>
+ </reports>
+ </reportSet>
+ </reportSets>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>findbugs-maven-plugin</artifactId>
+ <version>1.0.0</version>
+ </plugin>
+ </plugins>
+ </reporting>
+
+ <dependencyManagement>
+ <!-- The parent pom manages the inter-dependencies of the modules. -->
+ <dependencies>
+
+ <dependency>
+ <groupId>org.jboss.cl</groupId>
+ <artifactId>jboss-classloader</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.cl</groupId>
+ <artifactId>jboss-classloading</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.cl</groupId>
+ <artifactId>jboss-classloading-vfs</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.man</groupId>
+ <artifactId>jboss-managed</artifactId>
+ <version>${version.jboss.man}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ <version>${version.jboss.microcontainer}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ <version>${version.jboss.microcontainer}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-common-core</artifactId>
+ <version>${version.jboss.common.core}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.logging</groupId>
+ <artifactId>jboss-logging-spi</artifactId>
+ <version>${version.jboss.logging.spi}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.integration</groupId>
+ <artifactId>jboss-classloading-spi</artifactId>
+ <version>${version.jboss.classloading.spi}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jbossxb</artifactId>
+ <version>${version.jbossxb}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-vfs</artifactId>
+ <version>${version.jboss.vfs}</version>
+ </dependency>
+
+ <!-- test dependencies -->
+ <dependency>
+ <groupId>org.jboss.test</groupId>
+ <artifactId>jboss-test</artifactId>
+ <version>${version.org.jboss.test}</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>${version.junit}</version>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+ </dependencyManagement>
+
+ <profiles>
+ <profile>
+ <id>default</id>
+ <activation>
+ <activeByDefault>true</activeByDefault>
+ </activation>
+ <properties>
+ <microcontainer.outputDirectory>target/classes</microcontainer.outputDirectory>
+ <microcontainer.testOutputDirectory>target/tests-classes</microcontainer.testOutputDirectory>
+ </properties>
+ </profile>
+ <profile>
+ <id>eclipse</id>
+ <build>
+ <defaultGoal>process-test-resources</defaultGoal>
+ <plugins>
+ <plugin>
+ <artifactId>maven-eclipse-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>eclipse</id>
+ <phase>process-test-resources</phase>
+ <goals>
+ <goal>eclipse</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <downloadSources>true</downloadSources>
+ <buildOutputDirectory>${microcontainer.outputDirectory}</buildOutputDirectory>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ <properties>
+ <microcontainer.outputDirectory>eclipse-target/classes</microcontainer.outputDirectory>
+ <microcontainer.testOutputDirectory>eclipse-target/tests-classes</microcontainer.testOutputDirectory>
+ </properties>
+ </profile>
+ </profiles>
+
+</project>
\ No newline at end of file
More information about the jboss-cvs-commits
mailing list