gnu.bytecode
Class ArrayClassLoader

java.lang.Object
  extended by java.lang.ClassLoader
      extended by gnu.bytecode.ArrayClassLoader

public class ArrayClassLoader
extends java.lang.ClassLoader

Load classes from a set of byte arrays.


Constructor Summary
ArrayClassLoader()
           
ArrayClassLoader(byte[][] classBytes)
          Load classes from the given byte arrays.
ArrayClassLoader(java.lang.String[] classNames, byte[][] classBytes)
           
 
Method Summary
 void addClass(java.lang.Class clas)
           
 void addClass(ClassType ctype)
           
 void addClass(java.lang.String name, byte[] bytes)
           
protected  java.net.URL findResource(java.lang.String name)
           
 java.net.URL getResourceContext()
          Get base URL to use for finding resources, or null if none is set.
 java.lang.Class loadClass(java.lang.String name, boolean resolve)
           
 void setResourceContext(java.net.URL context)
          Set base URL to use for finding resources.
 
Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResources, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ArrayClassLoader

public ArrayClassLoader()

ArrayClassLoader

public ArrayClassLoader(byte[][] classBytes)
Load classes from the given byte arrays. By convention, the classes we manage are named "lambda"+.


ArrayClassLoader

public ArrayClassLoader(java.lang.String[] classNames,
                        byte[][] classBytes)
Method Detail

getResourceContext

public java.net.URL getResourceContext()
Get base URL to use for finding resources, or null if none is set.


setResourceContext

public void setResourceContext(java.net.URL context)
Set base URL to use for finding resources.


addClass

public void addClass(java.lang.Class clas)

addClass

public void addClass(java.lang.String name,
                     byte[] bytes)

addClass

public void addClass(ClassType ctype)
              throws java.io.IOException
Throws:
java.io.IOException

findResource

protected java.net.URL findResource(java.lang.String name)
Overrides:
findResource in class java.lang.ClassLoader

loadClass

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