jas.loader
Class ClassPathLoader

java.lang.Object
  |
  +--java.lang.ClassLoader
        |
        +--jas.loader.ClassPathLoader
Direct Known Subclasses:
DelegateLoader

public class ClassPathLoader
extends java.lang.ClassLoader


Constructor Summary
ClassPathLoader(ClassPath path, java.lang.String name)
          A ClassLoader that loads from a ClassPath
 
Method Summary
 ClassPath getClassPath()
           
 java.net.URL getResource(java.lang.String name)
          This cannot easily be implemented under JDK 1.1 (we would have to install our own java.net.URLStreamHandlerFactory but only one is allowed per application so this would not be very modular).
 java.io.InputStream getResourceAsStream(java.lang.String name)
           
 java.lang.Class loadClass(java.lang.String name, boolean resolve)
           
 byte[] loadClassData(java.lang.String theClassName)
           
protected  byte[] loadFromInputStream(java.io.InputStream input, int len)
           
 
Methods inherited from class java.lang.ClassLoader
defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, 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

ClassPathLoader

public ClassPathLoader(ClassPath path,
                       java.lang.String name)
A ClassLoader that loads from a ClassPath
Parameters:
path - The path to load from
name - The name of the class loader (just for debugging)
Method Detail

getClassPath

public ClassPath getClassPath()

loadClass

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

getResource

public java.net.URL getResource(java.lang.String name)
This cannot easily be implemented under JDK 1.1 (we would have to install our own java.net.URLStreamHandlerFactory but only one is allowed per application so this would not be very modular). JDK 1.1 supports the jar: protocol for reading entries within JAR files, so this will be easy to implement then.
Overrides:
getResource in class java.lang.ClassLoader

getResourceAsStream

public java.io.InputStream getResourceAsStream(java.lang.String name)
Overrides:
getResourceAsStream in class java.lang.ClassLoader

loadClassData

public byte[] loadClassData(java.lang.String theClassName)
                     throws java.lang.ClassNotFoundException

loadFromInputStream

protected byte[] loadFromInputStream(java.io.InputStream input,
                                     int len)
                              throws java.io.IOException