com.caucho.util
Class DirectoryClassLoader

java.lang.Object
  |
  +--java.lang.ClassLoader
        |
        +--com.caucho.util.DynamicClassLoader
              |
              +--com.caucho.util.DirectoryClassLoader

public class DirectoryClassLoader
extends DynamicClassLoader

Class loader which checks for changes in class files and automatically picks up new jars.


Inner classes inherited from class com.caucho.util.DynamicClassLoader
DynamicClassLoader.Entry
 
Constructor Summary
protected DirectoryClassLoader()
           
protected DirectoryClassLoader(java.lang.ClassLoader parent)
           
 
Method Summary
static DirectoryClassLoader create(java.lang.ClassLoader parent, Path dir)
          Create a new class loader
protected  java.lang.String fillClassPath()
          Fill data for the class path.
protected  Path getPath(java.lang.String pathName)
          Find a given path somewhere in the classpath
 boolean isModified()
          True if any of the loaded classes have been modified.
 
Methods inherited from class com.caucho.util.DynamicClassLoader
findClass, findLibrary, getClassEntry, getClassPath, getParentLoader, getResource, getResourceAsStream, loadClass, makeAll, setNext, setParent
 
Methods inherited from class java.lang.ClassLoader
defineClass, defineClass, defineClass, definePackage, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, resolveClass, setSigners
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DirectoryClassLoader

protected DirectoryClassLoader()

DirectoryClassLoader

protected DirectoryClassLoader(java.lang.ClassLoader parent)
Method Detail

create

public static DirectoryClassLoader create(java.lang.ClassLoader parent,
                                          Path dir)
Create a new class loader
Parameters:
parent - parent class loader
dir - directories which can handle dynamic jar addition

isModified

public boolean isModified()
True if any of the loaded classes have been modified. If true, the caller should drop the classpath and create a new one.
Overrides:
isModified in class DynamicClassLoader

fillClassPath

protected java.lang.String fillClassPath()
Fill data for the class path. fillClassPath() will add all .jar and .zip files in the directory list.
Overrides:
fillClassPath in class DynamicClassLoader

getPath

protected Path getPath(java.lang.String pathName)
Find a given path somewhere in the classpath
Overrides:
getPath in class DynamicClassLoader