org.xoe.core.packages
Class XoeClassLoader

java.lang.Object
  |
  +--java.lang.ClassLoader
        |
        +--org.xoe.core.packages.XoeClassLoader

public class XoeClassLoader
extends ClassLoader


Field Summary
protected  XoePackage xoePackage
           
 
Constructor Summary
protected XoeClassLoader(XoePackage xoePackage)
           
 
Method Summary
 Class addClass(byte[] buf, int start, int len)
           
 void addClassLoader(ClassLoader newloader)
          Add a new classloader to the class loaders we inherit.
 XoePackage getPackage()
           
 Class loadClass(String name, boolean resolve)
           
 void removeClassLoader(ClassLoader newloader)
          Remove a reference to the given loader.
 String toString()
           
 
Methods inherited from class java.lang.ClassLoader
defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, resolveClass, setSigners
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

xoePackage

protected XoePackage xoePackage
Constructor Detail

XoeClassLoader

protected XoeClassLoader(XoePackage xoePackage)
Method Detail

toString

public String toString()
Overrides:
toString in class Object

addClass

public Class addClass(byte[] buf,
                      int start,
                      int len)

loadClass

public Class loadClass(String name,
                       boolean resolve)
                throws ClassNotFoundException
Overrides:
loadClass in class ClassLoader

addClassLoader

public void addClassLoader(ClassLoader newloader)
Add a new classloader to the class loaders we inherit. This allows us to use classes loaded in different applications and packages. We wrap this in a reference so it will magically go away if we stop using classes the the loader.

removeClassLoader

public void removeClassLoader(ClassLoader newloader)
Remove a reference to the given loader.

getPackage

public XoePackage getPackage()