[jboss-cvs] JBossAS SVN: r80682 - projects/jboss-cl/trunk/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Nov 7 13:53:22 EST 2008
Author: anil.saldhana at jboss.com
Date: 2008-11-07 13:53:21 -0500 (Fri, 07 Nov 2008)
New Revision: 80682
Modified:
projects/jboss-cl/trunk/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy/VFSClassLoaderPolicy.java
Log:
JBCL-64: use the file protocol to create codesource
Modified: projects/jboss-cl/trunk/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy/VFSClassLoaderPolicy.java
===================================================================
--- projects/jboss-cl/trunk/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy/VFSClassLoaderPolicy.java 2008-11-07 17:57:11 UTC (rev 80681)
+++ projects/jboss-cl/trunk/classloading-vfs/src/main/java/org/jboss/classloading/spi/vfs/policy/VFSClassLoaderPolicy.java 2008-11-07 18:53:21 UTC (rev 80682)
@@ -53,7 +53,8 @@
/**
* VFSClassLoaderPolicy.
*
- * @author <a href="adrian at jboss.org">Adrian Brock</a>
+ * @author <a href="adrian at jboss.org">Adrian Brock</a>
+ * @author <a href="anil.saldhana at jboss.org">Anil Saldhana</a>
* @version $Revision: 1.1 $
*/
public class VFSClassLoaderPolicy extends ClassLoaderPolicy
@@ -108,6 +109,11 @@
private Map<String, VirtualFileInfo> vfsCache = Collections.synchronizedMap(new SoftValueHashMap());
/**
+ * Constant representing the URL file protocol
+ */
+ private static final String FILE_PROTOCOL = "file";
+
+ /**
* Determine a name from the roots
*
* @param roots the roots
@@ -620,9 +626,18 @@
try
{
VirtualFile root = findRoot(path);
- URL codeSourceURL = root.toURL();
+ URL codeSourceURL = root.toURL();
+
+ /**
+ * JBCL-64:Currently we are just dealing with the root
+ * So we will use the file equivalent of the root
+ */
+ URL modifiedURL = new URL(FILE_PROTOCOL,
+ codeSourceURL.getHost(), codeSourceURL.getPort(),
+ codeSourceURL.getFile());
+
Certificate[] certs = null; // TODO JBMICROCONT-182 determine certificates
- CodeSource cs = new CodeSource(codeSourceURL, certs);
+ CodeSource cs = new CodeSource(modifiedURL, certs);
PermissionCollection permissions = Policy.getPolicy().getPermissions(cs);
return new ProtectionDomain(cs, permissions);
}
More information about the jboss-cvs-commits
mailing list