org.codehaus.janino
Class ByteArrayClassLoader

java.lang.Object
  extended by java.lang.ClassLoader
      extended by org.codehaus.janino.ByteArrayClassLoader

public class ByteArrayClassLoader
extends java.lang.ClassLoader

This ClassLoader allows for the loading of a set of Java™ classes provided in class file format.


Constructor Summary
ByteArrayClassLoader(java.util.Map classes)
          The given Map of classes must not be modified afterwards.
ByteArrayClassLoader(java.util.Map classes, java.lang.ClassLoader parent)
           
 
Method Summary
 boolean equals(java.lang.Object o)
          An object is regarded equal to this iff It is also an instance of ByteArrayClassLoader Both have the same parent ClassLoader Exactly the same classes (name, bytecode) were added to both Roughly speaking, equal ByteArrayClassLoaders will return functionally identical Classes on ClassLoader.loadClass(java.lang.String).
protected  java.lang.Class findClass(java.lang.String name)
          Implements ClassLoader.findClass(String).
 int hashCode()
           
 
Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, loadClass, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ByteArrayClassLoader

public ByteArrayClassLoader(java.util.Map classes)
The given Map of classes must not be modified afterwards.

Parameters:
classes - String className => byte[] data

ByteArrayClassLoader

public ByteArrayClassLoader(java.util.Map classes,
                            java.lang.ClassLoader parent)
See Also:
ByteArrayClassLoader(Map)
Method Detail

findClass

protected java.lang.Class findClass(java.lang.String name)
                             throws java.lang.ClassNotFoundException
Implements ClassLoader.findClass(String).

Notice that, although nowhere documented, no more than one thread at a time calls this method, because ClassLoader.loadClass(java.lang.String) is synchronized.

Overrides:
findClass in class java.lang.ClassLoader
Throws:
java.lang.ClassNotFoundException

equals

public boolean equals(java.lang.Object o)
An object is regarded equal to this iff Roughly speaking, equal ByteArrayClassLoaders will return functionally identical Classes on ClassLoader.loadClass(java.lang.String).

Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object


Copyright © 2001-2011. All Rights Reserved.