dk.netarkivet.common.utils.batch
Class ByteJarLoader

java.lang.Object
  extended by java.lang.ClassLoader
      extended by dk.netarkivet.common.utils.batch.ByteJarLoader
All Implemented Interfaces:
java.io.Serializable

public class ByteJarLoader
extends java.lang.ClassLoader
implements java.io.Serializable

ByteJarLoader is a ClassLoader that stores java classes in a map where the key to the map is the class name, and the value is the class stored as a byte array.

See Also:
Serialized Form

Field Summary
(package private)  java.util.Map<java.lang.String,byte[]> binaryData
          The map, that holds the class data.
(package private)  org.apache.commons.logging.Log log
          The log.
 
Constructor Summary
ByteJarLoader(java.io.File... files)
          Constructor for the ByteLoader.
 
Method Summary
 java.lang.Class findClass(java.lang.String className)
          Lookup and return the Class with the given className.
 
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, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

transient org.apache.commons.logging.Log log
The log.


binaryData

java.util.Map<java.lang.String,byte[]> binaryData
The map, that holds the class data.

Constructor Detail

ByteJarLoader

public ByteJarLoader(java.io.File... files)
Constructor for the ByteLoader.

Parameters:
files - An array of files, which are assumed to be jar-files, but they need not have the extension .jar
Method Detail

findClass

public java.lang.Class findClass(java.lang.String className)
                          throws java.lang.ClassNotFoundException
Lookup and return the Class with the given className. This method overrides the ClassLoader.findClass method.

Overrides:
findClass in class java.lang.ClassLoader
Parameters:
className - The name of the class to lookup
Returns:
the Class with the given className.
Throws:
java.lang.ClassNotFoundException - If the class could not be found