org.opencyc.javashell
Class NClassLoader

java.lang.Object
  |
  +--java.lang.ClassLoader
        |
        +--org.opencyc.javashell.NClassLoader

public class NClassLoader
extends java.lang.ClassLoader

NClassLoader is an extension of ClassLoader. It offers extra features such as class reloading and the ability to specify a base directory to load classes from.


Constructor Summary
NClassLoader(java.lang.ClassLoader parent)
          Uses another class loader - TODO!
NClassLoader(java.lang.String strRepositoryPath, java.lang.String strExtension, java.lang.String strJarDir)
          Constructs NClassLoader and sets the base dir, file extension and jar dir.
 
Method Summary
 java.lang.Class findClass(java.lang.String name)
           
 java.lang.Class loadClass(java.lang.String name)
          Loads a class by name.
 java.lang.Class loadClass(java.lang.String name, boolean resolve)
          Loads a class by name with or without resolving it first.
 java.lang.Class loadClass(java.lang.String base, java.lang.String name)
          Loads a class by name from a base directory.
 void setExtension(java.lang.String ext)
          Sets the file extension of the classes you are loading, the default extension is .class
 void setJarDir(java.lang.String jardir)
          Sets the jar directory where your classpath will be built from TODO!
 void setRoot(java.lang.String root)
          Sets the root directory from where classes will be loaded.
 
Methods inherited from class java.lang.ClassLoader
defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, resolveClass, setSigners
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NClassLoader

public NClassLoader(java.lang.ClassLoader parent)
Uses another class loader - TODO!
Parameters:
parent - ClassLoader

NClassLoader

public NClassLoader(java.lang.String strRepositoryPath,
                    java.lang.String strExtension,
                    java.lang.String strJarDir)
Constructs NClassLoader and sets the base dir, file extension and jar dir.
Parameters:
strRepositoryPath - String containing root directory.
strExtension - String containing the file extension.
strJarDir - String containing the jar directory.
Method Detail

setRoot

public void setRoot(java.lang.String root)
Sets the root directory from where classes will be loaded.
Parameters:
root - String containing root directory.

setExtension

public void setExtension(java.lang.String ext)
Sets the file extension of the classes you are loading, the default extension is .class
Parameters:
ext - String containing the file extension.

setJarDir

public void setJarDir(java.lang.String jardir)
Sets the jar directory where your classpath will be built from TODO!
Parameters:
jardir - String containing the jar directory.

loadClass

public java.lang.Class loadClass(java.lang.String name)
                          throws java.lang.ClassNotFoundException
Loads a class by name.
Overrides:
loadClass in class java.lang.ClassLoader
Parameters:
name - String containing class name.
Returns:
Class matching the name.
Throws:
ClassNotFoundException -  

loadClass

public java.lang.Class loadClass(java.lang.String base,
                                 java.lang.String name)
                          throws java.lang.ClassNotFoundException
Loads a class by name from a base directory.
Parameters:
base - String containing the base directory.
name - String containing class name.
Returns:
Class matching the name that exists in the base directory.
Throws:
ClassNotFoundException -  

loadClass

public java.lang.Class loadClass(java.lang.String name,
                                 boolean resolve)
                          throws java.lang.ClassNotFoundException
Loads a class by name with or without resolving it first.
Overrides:
loadClass in class java.lang.ClassLoader
Parameters:
name - String containing class name.
resolve - boolean whether to resolve the class or not.
Returns:
Class matching the name.
Throws:
ClassNotFoundException -  

findClass

public java.lang.Class findClass(java.lang.String name)
                          throws java.lang.ClassNotFoundException
Overrides:
findClass in class java.lang.ClassLoader