|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.lang.ClassLoader
java.security.SecureClassLoader
org.apache.commons.vfs.impl.VFSClassLoader
public class VFSClassLoader
A class loader that can load classes and resources from a search path VFS FileObjects refering both to folders and JAR files. Any FileObject of type FileType.FILE is asumed to be a JAR and is opened by creating a layered file system with the "jar" scheme. TODO - Test this with signed Jars and a SecurityManager.
FileSystemManager.createFileSystem(java.lang.String, org.apache.commons.vfs.FileObject)
Constructor Summary | |
---|---|
VFSClassLoader(FileObject[] files,
FileSystemManager manager)
Constructors a new VFSClassLoader for the given files. |
|
VFSClassLoader(FileObject[] files,
FileSystemManager manager,
ClassLoader parent)
Constructors a new VFSClassLoader for the given FileObjects. |
|
VFSClassLoader(FileObject file,
FileSystemManager manager)
Constructors a new VFSClassLoader for the given file. |
|
VFSClassLoader(FileObject file,
FileSystemManager manager,
ClassLoader parent)
Constructors a new VFSClassLoader for the given file. |
Method Summary | |
---|---|
protected void |
copyPermissions(PermissionCollection src,
PermissionCollection dest)
Copies the permissions from src to dest. |
protected Class |
findClass(String name)
Finds and loads the class with the specified name from the search path. |
protected URL |
findResource(String name)
Finds the resource with the specified name from the search path. |
protected Enumeration |
findResources(String name)
Returns an Enumeration of all the resources in the search path with the specified name. |
FileObject[] |
getFileObjects()
Provide access to the file objects this class loader represents. |
protected PermissionCollection |
getPermissions(CodeSource cs)
Calls super.getPermissions both for the code source and also adds the permissions granted to the parent layers. |
Methods inherited from class java.security.SecureClassLoader |
---|
defineClass, defineClass |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public VFSClassLoader(FileObject file, FileSystemManager manager) throws FileSystemException
file
- the file to load the classes and resources from.manager
- the FileManager to use when trying create a layered Jar file
system.
FileSystemException
- if an error occurs.public VFSClassLoader(FileObject file, FileSystemManager manager, ClassLoader parent) throws FileSystemException
file
- the file to load the classes and resources from.manager
- the FileManager to use when trying create a layered Jar file
system.parent
- the parent class loader for delegation.
FileSystemException
- if an error occurs.public VFSClassLoader(FileObject[] files, FileSystemManager manager) throws FileSystemException
files
- the files to load the classes and resources from.manager
- the FileManager to use when trying create a layered Jar file
system.
FileSystemException
- if an error occurs.public VFSClassLoader(FileObject[] files, FileSystemManager manager, ClassLoader parent) throws FileSystemException
files
- the FileObjects to load the classes and resources from.manager
- the FileManager to use when trying create a layered Jar file
system.parent
- the parent class loader for delegation.
FileSystemException
- if an error occurs.Method Detail |
---|
public FileObject[] getFileObjects()
protected Class findClass(String name) throws ClassNotFoundException
findClass
in class ClassLoader
ClassNotFoundException
- if the class is not found.protected PermissionCollection getPermissions(CodeSource cs)
getPermissions
in class SecureClassLoader
cs
- the CodeSource.
protected void copyPermissions(PermissionCollection src, PermissionCollection dest)
src
- The source PermissionCollection.dest
- The destination PermissionCollection.protected URL findResource(String name)
findResource
in class ClassLoader
name
- The resource name.
protected Enumeration findResources(String name)
findResources
in class ClassLoader
name
- The resources to find.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |