org.codehaus.plexus.classworlds.realm
Class ClassRealm
java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
org.codehaus.plexus.classworlds.realm.ClassRealm
- Direct Known Subclasses:
- ClassRealmReverseAdapter
public class ClassRealm
- extends URLClassLoader
The class loading gateway. Each class realm has access to a base class loader, imports form zero or more other class
loaders, an optional parent class loader and of course its own class path. When queried for a class/resource, a class
realm will always query its base class loader first before it delegates to a pluggable strategy. The strategy in turn
controls the order in which imported class loaders, the parent class loader and the realm itself are searched. The
base class loader is assumed to be capable of loading of the bootstrap classes.
- Version:
- $Id$
- Author:
- bob mcwhirter, Jason van Zyl
Methods inherited from class java.lang.ClassLoader |
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners |
ClassRealm
public ClassRealm(ClassWorld world,
String id,
ClassLoader baseClassLoader)
- Creates a new class realm.
- Parameters:
world
- The class world this realm belongs to, must not be null
.id
- The identifier for this realm, must not be null
.baseClassLoader
- The base class loader for this realm, may be null
to use the bootstrap class
loader.
getId
public String getId()
getWorld
public ClassWorld getWorld()
importFromParent
public void importFromParent(String packageName)
importFrom
public void importFrom(String realmId,
String packageName)
throws NoSuchRealmException
- Throws:
NoSuchRealmException
importFrom
public void importFrom(ClassLoader classLoader,
String packageName)
getImportClassLoader
public ClassLoader getImportClassLoader(String name)
getImportRealms
public Collection getImportRealms()
getStrategy
public Strategy getStrategy()
setParentClassLoader
public void setParentClassLoader(ClassLoader parentClassLoader)
getParentClassLoader
public ClassLoader getParentClassLoader()
setParentRealm
public void setParentRealm(ClassRealm realm)
getParentRealm
public ClassRealm getParentRealm()
createChildRealm
public ClassRealm createChildRealm(String id)
throws DuplicateRealmException
- Throws:
DuplicateRealmException
addURL
public void addURL(URL url)
- Overrides:
addURL
in class URLClassLoader
loadClass
public Class loadClass(String name)
throws ClassNotFoundException
- Overrides:
loadClass
in class ClassLoader
- Throws:
ClassNotFoundException
loadClass
protected Class loadClass(String name,
boolean resolve)
throws ClassNotFoundException
- Overrides:
loadClass
in class ClassLoader
- Throws:
ClassNotFoundException
findClass
protected Class findClass(String name)
throws ClassNotFoundException
- Overrides:
findClass
in class URLClassLoader
- Throws:
ClassNotFoundException
findResource
public URL findResource(String name)
- Overrides:
findResource
in class URLClassLoader
findResources
public Enumeration findResources(String name)
throws IOException
- Overrides:
findResources
in class URLClassLoader
- Throws:
IOException
display
public void display()
display
public void display(PrintStream out)
toString
public String toString()
- Overrides:
toString
in class Object
loadClassFromImport
public Class loadClassFromImport(String name)
loadClassFromSelf
public Class loadClassFromSelf(String name)
loadClassFromParent
public Class loadClassFromParent(String name)
loadResourceFromImport
public URL loadResourceFromImport(String name)
loadResourceFromSelf
public URL loadResourceFromSelf(String name)
loadResourceFromParent
public URL loadResourceFromParent(String name)
loadResourcesFromImport
public Enumeration loadResourcesFromImport(String name)
loadResourcesFromSelf
public Enumeration loadResourcesFromSelf(String name)
loadResourcesFromParent
public Enumeration loadResourcesFromParent(String name)
Copyright © 2002-2012 Codehaus. All Rights Reserved.