wt.loader
Class Loader

java.lang.Object
  extended byjava.lang.ClassLoader
      extended bywt.loader.Loader

public class Loader
extends ClassLoader


Nested Class Summary
private static class Loader.TableEntry
           
 
Nested classes inherited from class java.lang.ClassLoader
 
Field Summary
private  Hashtable classes
           
private static String IMPL_PROPERTY_PREFIX
           
private static Loader loader
           
private static String PACKAGE_PROPERTY_PREFIX
           
private static String[] TARGET_PACKAGES
           
private static boolean VERBOSE
           
private static String versionID
           
 
Fields inherited from class java.lang.ClassLoader
 
Constructor Summary
private Loader()
           
 
Method Summary
private  boolean checkPackage(String class_name)
           
private  byte[] classFileToByteArray(ClassFile class_file)
           
 Class getBaseClass(Class this_class)
           
 Class getBaseClass(String class_name)
           
private  InputStream getClassInputStream(String class_name)
           
private  Properties getClassProperties(String class_name)
           
 Class getImplClass(Class this_class)
           
 Class getImplClass(String class_name)
           
static Loader getLoader()
           
 Class getProxyClass(Class this_class)
           
 InputStream getResourceAsStream(String name)
           
 Class loadClass(String class_name, boolean resolve_it)
           
private  Loader.TableEntry mungeClass(String class_name, Properties class_properties, ClassFile finish_class_file)
           
private  void relinkStaticMethods(ClassFile base_class, ClassFile[] impl_classes)
           
private static void setSuperClass(ClassFile class_file, String super_class)
           
 
Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResource, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, 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

versionID

private static final String versionID
See Also:
Constant Field Values

PACKAGE_PROPERTY_PREFIX

private static final String PACKAGE_PROPERTY_PREFIX
See Also:
Constant Field Values

IMPL_PROPERTY_PREFIX

private static final String IMPL_PROPERTY_PREFIX
See Also:
Constant Field Values

VERBOSE

private static boolean VERBOSE

TARGET_PACKAGES

private static String[] TARGET_PACKAGES

classes

private Hashtable classes

loader

private static Loader loader
Constructor Detail

Loader

private Loader()
Method Detail

getLoader

public static Loader getLoader()

loadClass

public Class loadClass(String class_name,
                       boolean resolve_it)
                throws ClassNotFoundException
Throws:
ClassNotFoundException

getResourceAsStream

public InputStream getResourceAsStream(String name)

checkPackage

private boolean checkPackage(String class_name)

getClassProperties

private Properties getClassProperties(String class_name)
                               throws IOException
Throws:
IOException

getClassInputStream

private InputStream getClassInputStream(String class_name)

mungeClass

private Loader.TableEntry mungeClass(String class_name,
                                     Properties class_properties,
                                     ClassFile finish_class_file)
                              throws ClassNotFoundException,
                                     IOException
Throws:
ClassNotFoundException
IOException

classFileToByteArray

private byte[] classFileToByteArray(ClassFile class_file)

getImplClass

public Class getImplClass(String class_name)
                   throws ClassNotFoundException
Throws:
ClassNotFoundException

getImplClass

public Class getImplClass(Class this_class)

getBaseClass

public Class getBaseClass(String class_name)
                   throws ClassNotFoundException
Throws:
ClassNotFoundException

getBaseClass

public Class getBaseClass(Class this_class)

getProxyClass

public Class getProxyClass(Class this_class)
                    throws ClassNotFoundException
Throws:
ClassNotFoundException

setSuperClass

private static void setSuperClass(ClassFile class_file,
                                  String super_class)

relinkStaticMethods

private void relinkStaticMethods(ClassFile base_class,
                                 ClassFile[] impl_classes)