org.codehaus.plexus.classworlds.realm

Class ClassRealm


public class ClassRealm
extends URLClassLoader

Implementation of ClassRealm. The realm is the class loading gateway. The search is proceded as follows:
  1. Search the parent class loader (passed via the constructor) if there is one.
  2. Search the imports.
  3. Search this realm's constituents.
  4. Search the parent realm.
Version:
$Id: ClassRealm.java 5481 2007-01-21 14:27:46Z kenney $
Authors:
bob mcwhirter
Jason van Zyl

Constructor Summary

ClassRealm(ClassWorld world, String id)
ClassRealm(ClassWorld world, String id, ClassLoader foreignClassLoader)

Method Summary

void
addURL(URL url)
ClassRealm
createChildRealm(String id)
void
display()
boolean
equals(Object o)
Enumeration
findRealmResources(String name)
Enumeration
findResources(String name)
String
getId()
ClassRealm
getParentRealm()
URL
getRealmResource(String name)
InputStream
getRealmResourceAsStream(String name)
URL
getResource(String name)
InputStream
getResourceAsStream(String name)
Strategy
getStrategy()
ClassWorld
getWorld()
void
importFrom(String realmId, String packageName)
Class
loadClass(String name)
Class
loadRealmClass(String name)
ClassRealm
locateSourceRealm(String classname)
void
setParentRealm(ClassRealm realm)
String
toString()

Constructor Details

ClassRealm

public ClassRealm(ClassWorld world,
                  String id)

ClassRealm

public ClassRealm(ClassWorld world,
                  String id,
                  ClassLoader foreignClassLoader)

Method Details

addURL

public void addURL(URL url)

createChildRealm

public ClassRealm createChildRealm(String id)
            throws DuplicateRealmException

display

public void display()

equals

public boolean equals(Object o)

findRealmResources

public Enumeration findRealmResources(String name)
            throws IOException

findResources

public Enumeration findResources(String name)
            throws IOException

getId

public String getId()

getParentRealm

public ClassRealm getParentRealm()

getRealmResource

public URL getRealmResource(String name)

getRealmResourceAsStream

public InputStream getRealmResourceAsStream(String name)

getResource

public URL getResource(String name)

getResourceAsStream

public InputStream getResourceAsStream(String name)

getStrategy

public Strategy getStrategy()

getWorld

public ClassWorld getWorld()

importFrom

public void importFrom(String realmId,
                       String packageName)
            throws NoSuchRealmException

loadClass

public Class loadClass(String name)
            throws ClassNotFoundException

loadRealmClass

public Class loadRealmClass(String name)
            throws ClassNotFoundException

locateSourceRealm

public ClassRealm locateSourceRealm(String classname)

setParentRealm

public void setParentRealm(ClassRealm realm)

toString

public String toString()