Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Bootstrap
Class PrimordialClassLoader  view PrimordialClassLoader download PrimordialClassLoader.java

java.lang.Object
  extended byjava.lang.ClassLoader
      extended byBootstrap.PrimordialClassLoader
All Implemented Interfaces:
Clazz.jq_ClassFileConstants

public class PrimordialClassLoader
extends java.lang.ClassLoader
implements Clazz.jq_ClassFileConstants

PrimordialClassLoader

Version:
$Id: PrimordialClassLoader.java,v 1.31 2003/08/10 00:25:34 joewhaley Exp $

Nested Class Summary
(package private) static class PrimordialClassLoader.ClasspathElement
           
(package private) static class PrimordialClassLoader.PathElement
          A regular path string in the CLASSPATH.
(package private) static class PrimordialClassLoader.ZipFileElement
          A .zip or .jar file in the CLASSPATH.
 
Nested classes inherited from class java.lang.ClassLoader
 
Field Summary
private  java.util.Map bs_desc2type
           
private  java.util.List classpathList
           
static java.lang.String filesep
           
static Clazz.jq_Class JavaLangClass
           
static Clazz.jq_Class JavaLangObject
           
static Clazz.jq_Class JavaLangString
           
static Clazz.jq_Class JavaLangSystem
           
static Clazz.jq_Class JavaLangThrowable
           
static PrimordialClassLoader loader
           
static java.io.PrintStream out
           
static java.lang.String pathsep
           
static boolean TRACE
           
 
Fields inherited from class java.lang.ClassLoader
 
Fields inherited from interface Clazz.jq_ClassFileConstants
ACC_ABSTRACT, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_TRANSIENT, ACC_VOLATILE, CONSTANT_Class, CONSTANT_Double, CONSTANT_FieldRef, CONSTANT_Float, CONSTANT_Integer, CONSTANT_InterfaceMethodRef, CONSTANT_Long, CONSTANT_MethodRef, CONSTANT_NameAndType, CONSTANT_ResolvedClass, CONSTANT_ResolvedIFieldRef, CONSTANT_ResolvedIMethodRef, CONSTANT_ResolvedSFieldRef, CONSTANT_ResolvedSMethodRef, CONSTANT_String, CONSTANT_Utf8, CONSUME_STACK, ILLEGAL_OPCODE, ILLEGAL_TYPE, jbc_AALOAD, jbc_AASTORE, jbc_ACONST_NULL, jbc_ALOAD, jbc_ALOAD_0, jbc_ALOAD_1, jbc_ALOAD_2, jbc_ALOAD_3, jbc_ANEWARRAY, jbc_ARETURN, jbc_ARRAYLENGTH, jbc_ASTORE, jbc_ASTORE_0, jbc_ASTORE_1, jbc_ASTORE_2, jbc_ASTORE_3, jbc_ATHROW, jbc_BALOAD, jbc_BASTORE, jbc_BIPUSH, jbc_BREAKPOINT, jbc_CALOAD, jbc_CASTORE, jbc_CHECKCAST, jbc_D2F, jbc_D2I, jbc_D2L, jbc_DADD, jbc_DALOAD, jbc_DASTORE, jbc_DCMPG, jbc_DCMPL, jbc_DCONST_0, jbc_DCONST_1, jbc_DDIV, jbc_DLOAD, jbc_DLOAD_0, jbc_DLOAD_1, jbc_DLOAD_2, jbc_DLOAD_3, jbc_DMUL, jbc_DNEG, jbc_DREM, jbc_DRETURN, jbc_DSTORE, jbc_DSTORE_0, jbc_DSTORE_1, jbc_DSTORE_2, jbc_DSTORE_3, jbc_DSUB, jbc_DUP, jbc_DUP_X1, jbc_DUP_X2, jbc_DUP2, jbc_DUP2_X1, jbc_DUP2_X2, jbc_F2D, jbc_F2I, jbc_F2L, jbc_FADD, jbc_FALOAD, jbc_FASTORE, jbc_FCMPG, jbc_FCMPL, jbc_FCONST_0, jbc_FCONST_1, jbc_FCONST_2, jbc_FDIV, jbc_FLOAD, jbc_FLOAD_0, jbc_FLOAD_1, jbc_FLOAD_2, jbc_FLOAD_3, jbc_FMUL, jbc_FNEG, jbc_FREM, jbc_FRETURN, jbc_FSTORE, jbc_FSTORE_0, jbc_FSTORE_1, jbc_FSTORE_2, jbc_FSTORE_3, jbc_FSUB, jbc_GETFIELD, jbc_GETSTATIC, jbc_GOTO, jbc_GOTO_W, jbc_I2B, jbc_I2C, jbc_I2D, jbc_I2F, jbc_I2L, jbc_I2S, jbc_IADD, jbc_IALOAD, jbc_IAND, jbc_IASTORE, jbc_ICONST_0, jbc_ICONST_1, jbc_ICONST_2, jbc_ICONST_3, jbc_ICONST_4, jbc_ICONST_5, jbc_ICONST_M1, jbc_IDIV, jbc_IF_ACMPEQ, jbc_IF_ACMPNE, jbc_IF_ICMPEQ, jbc_IF_ICMPGE, jbc_IF_ICMPGT, jbc_IF_ICMPLE, jbc_IF_ICMPLT, jbc_IF_ICMPNE, jbc_IFEQ, jbc_IFGE, jbc_IFGT, jbc_IFLE, jbc_IFLT, jbc_IFNE, jbc_IFNONNULL, jbc_IFNULL, jbc_IINC, jbc_ILOAD, jbc_ILOAD_0, jbc_ILOAD_1, jbc_ILOAD_2, jbc_ILOAD_3, jbc_IMUL, jbc_INEG, jbc_INSTANCEOF, jbc_INT2BYTE, jbc_INT2CHAR, jbc_INT2SHORT, jbc_INVOKEINTERFACE, jbc_INVOKENONVIRTUAL, jbc_INVOKESPECIAL, jbc_INVOKESTATIC, jbc_INVOKEVIRTUAL, jbc_IOR, jbc_IREM, jbc_IRETURN, jbc_ISHL, jbc_ISHR, jbc_ISTORE, jbc_ISTORE_0, jbc_ISTORE_1, jbc_ISTORE_2, jbc_ISTORE_3, jbc_ISUB, jbc_IUSHR, jbc_IXOR, jbc_JSR, jbc_JSR_W, jbc_L2D, jbc_L2F, jbc_L2I, jbc_LADD, jbc_LALOAD, jbc_LAND, jbc_LASTORE, jbc_LCMP, jbc_LCONST_0, jbc_LCONST_1, jbc_LDC, jbc_LDC_W, jbc_LDC2_W, jbc_LDIV, jbc_LLOAD, jbc_LLOAD_0, jbc_LLOAD_1, jbc_LLOAD_2, jbc_LLOAD_3, jbc_LMUL, jbc_LNEG, jbc_LOOKUPSWITCH, jbc_LOR, jbc_LREM, jbc_LRETURN, jbc_LSHL, jbc_LSHR, jbc_LSTORE, jbc_LSTORE_0, jbc_LSTORE_1, jbc_LSTORE_2, jbc_LSTORE_3, jbc_LSUB, jbc_LUSHR, jbc_LXOR, jbc_MONITORENTER, jbc_MONITOREXIT, jbc_MULTIANEWARRAY, jbc_NEW, jbc_NEWARRAY, jbc_NOP, jbc_POP, jbc_POP2, jbc_PUTFIELD, jbc_PUTSTATIC, jbc_RET, jbc_RETURN, jbc_SALOAD, jbc_SASTORE, jbc_SIPUSH, jbc_SWAP, jbc_TABLESWITCH, jbc_WIDE, NO_OF_OPERANDS, OPCODE_NAMES, PRODUCE_STACK, RESERVED, STATE_CLSINITERROR, STATE_CLSINITIALIZED, STATE_CLSINITIALIZING, STATE_CLSINITRUNNING, STATE_COMPILED, STATE_COMPILING, STATE_LOADED, STATE_LOADERROR, STATE_LOADING1, STATE_LOADING2, STATE_LOADING3, STATE_PREPARED, STATE_PREPARING, STATE_SFINITIALIZED, STATE_SFINITIALIZING, STATE_UNLOADED, STATE_VERIFIED, STATE_VERIFYING, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TC_ARRAY, TC_BOOLEAN, TC_BYTE, TC_CHAR, TC_CLASS, TC_CLASSEND, TC_DOUBLE, TC_FLOAT, TC_INT, TC_LONG, TC_PARAM, TC_PARAMEND, TC_SHORT, TC_VOID, TYPE_OF_OPERANDS, UNDEFINED, UNPREDICTABLE
 
Constructor Summary
private PrimordialClassLoader()
           
 
Method Summary
 void addToClasspath(java.lang.String s)
          Vector of ClasspathElements corresponding to CLASSPATH entries.
static java.lang.String classnameToResource(java.lang.String classname)
          Translate a class name into a corresponding resource name.
static java.util.Iterator classpaths(java.lang.String classpath)
          Iterate over the components of the system CLASSPATH.
 java.lang.String classpathToString()
           
static java.lang.String descriptorToResource(java.lang.String desc)
           
 java.util.Collection getAllTypes()
           
 Clazz.jq_Type getBSType(java.lang.String desc)
           
 Clazz.jq_Type getBSType(UTF.Utf8 desc)
           
 java.util.Set getClassesThatReference(Clazz.jq_Member m)
           
 java.io.DataInputStream getClassFileStream(UTF.Utf8 descriptor)
           
static Clazz.jq_Class getJavaLangArithmeticException()
           
static Clazz.jq_Class getJavaLangArrayIndexOutOfBoundsException()
           
static Clazz.jq_Class getJavaLangArrayStoreException()
           
static Clazz.jq_Class getJavaLangClass()
           
static Clazz.jq_Class getJavaLangClassLoader()
           
static Clazz.jq_Class getJavaLangException()
           
static Clazz.jq_Class getJavaLangIllegalMonitorStateException()
           
static Clazz.jq_Class getJavaLangIndexOutOfBoundsException()
           
static Clazz.jq_Class getJavaLangNegativeArraySizeException()
           
static Clazz.jq_Class getJavaLangNullPointerException()
           
static Clazz.jq_Class getJavaLangObject()
           
static Clazz.jq_Class getJavaLangRefFinalizer()
           
static Clazz.jq_Class getJavaLangReflectConstructor()
           
static Clazz.jq_Class getJavaLangReflectField()
           
static Clazz.jq_Class getJavaLangReflectMethod()
           
static Clazz.jq_Class getJavaLangRuntimeException()
           
static Clazz.jq_Class getJavaLangString()
           
static Clazz.jq_Class getJavaLangSystem()
           
static Clazz.jq_Class getJavaLangThread()
           
static Clazz.jq_Class getJavaLangThrowable()
           
 Clazz.jq_Type getOrCreateBSType(java.lang.String desc)
           
 Clazz.jq_Type getOrCreateBSType(UTF.Utf8 desc)
           
 Clazz.jq_Class getOrCreateClass(java.lang.String desc, java.io.DataInput in)
           
static Clazz.jq_Type getOrCreateType(java.lang.ClassLoader cl, UTF.Utf8 desc)
           
 java.lang.String getPackagePath(java.lang.String name)
           
 java.io.InputStream getResourceAsStream(java.lang.String name)
          Open an InputStream on a resource found somewhere in the CLASSPATH.
 java.lang.String getResourcePath(java.lang.String name)
           
private static void initPrimitiveTypes()
           
 java.util.Iterator listPackage(java.lang.String pathname)
           
 java.util.Iterator listPackage(java.lang.String pathname, boolean recursive)
           
 java.util.Iterator listPackages()
           
 void replaceClass(java.lang.String cName)
           
 void unloadBSType(Clazz.jq_Type t)
           
static void unloadType(java.lang.ClassLoader cl, Clazz.jq_Type t)
           
 
Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResource, 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

TRACE

public static boolean TRACE

out

public static final java.io.PrintStream out

pathsep

public static final java.lang.String pathsep

filesep

public static final java.lang.String filesep

classpathList

private final java.util.List classpathList

loader

public static final PrimordialClassLoader loader

JavaLangObject

public static final Clazz.jq_Class JavaLangObject

JavaLangClass

public static final Clazz.jq_Class JavaLangClass

JavaLangString

public static final Clazz.jq_Class JavaLangString

JavaLangSystem

public static final Clazz.jq_Class JavaLangSystem

JavaLangThrowable

public static final Clazz.jq_Class JavaLangThrowable

bs_desc2type

private final java.util.Map bs_desc2type
Constructor Detail

PrimordialClassLoader

private PrimordialClassLoader()
Method Detail

addToClasspath

public void addToClasspath(java.lang.String s)
Vector of ClasspathElements corresponding to CLASSPATH entries.


classpaths

public static final java.util.Iterator classpaths(java.lang.String classpath)
Iterate over the components of the system CLASSPATH. Each element is a String naming one segment of the CLASSPATH.


listPackage

public java.util.Iterator listPackage(java.lang.String pathname)

listPackage

public java.util.Iterator listPackage(java.lang.String pathname,
                                      boolean recursive)

listPackages

public java.util.Iterator listPackages()

classpathToString

public java.lang.String classpathToString()

descriptorToResource

public static java.lang.String descriptorToResource(java.lang.String desc)

classnameToResource

public static java.lang.String classnameToResource(java.lang.String classname)
Translate a class name into a corresponding resource name.


getResourcePath

public java.lang.String getResourcePath(java.lang.String name)

getPackagePath

public java.lang.String getPackagePath(java.lang.String name)

getResourceAsStream

public java.io.InputStream getResourceAsStream(java.lang.String name)
Open an InputStream on a resource found somewhere in the CLASSPATH.


initPrimitiveTypes

private static void initPrimitiveTypes()

getClassFileStream

public java.io.DataInputStream getClassFileStream(UTF.Utf8 descriptor)
                                           throws java.io.IOException

getJavaLangObject

public static Clazz.jq_Class getJavaLangObject()

getJavaLangClass

public static Clazz.jq_Class getJavaLangClass()

getJavaLangString

public static Clazz.jq_Class getJavaLangString()

getJavaLangSystem

public static Clazz.jq_Class getJavaLangSystem()

getJavaLangThrowable

public static Clazz.jq_Class getJavaLangThrowable()

getJavaLangException

public static Clazz.jq_Class getJavaLangException()

getJavaLangRuntimeException

public static Clazz.jq_Class getJavaLangRuntimeException()

getJavaLangNullPointerException

public static Clazz.jq_Class getJavaLangNullPointerException()

getJavaLangIndexOutOfBoundsException

public static Clazz.jq_Class getJavaLangIndexOutOfBoundsException()

getJavaLangArrayIndexOutOfBoundsException

public static Clazz.jq_Class getJavaLangArrayIndexOutOfBoundsException()

getJavaLangArrayStoreException

public static Clazz.jq_Class getJavaLangArrayStoreException()

getJavaLangNegativeArraySizeException

public static Clazz.jq_Class getJavaLangNegativeArraySizeException()

getJavaLangArithmeticException

public static Clazz.jq_Class getJavaLangArithmeticException()

getJavaLangIllegalMonitorStateException

public static Clazz.jq_Class getJavaLangIllegalMonitorStateException()

getJavaLangClassLoader

public static Clazz.jq_Class getJavaLangClassLoader()

getJavaLangReflectField

public static Clazz.jq_Class getJavaLangReflectField()

getJavaLangReflectMethod

public static Clazz.jq_Class getJavaLangReflectMethod()

getJavaLangReflectConstructor

public static Clazz.jq_Class getJavaLangReflectConstructor()

getJavaLangThread

public static Clazz.jq_Class getJavaLangThread()

getJavaLangRefFinalizer

public static Clazz.jq_Class getJavaLangRefFinalizer()

getAllTypes

public java.util.Collection getAllTypes()

getClassesThatReference

public final java.util.Set getClassesThatReference(Clazz.jq_Member m)

getOrCreateClass

public final Clazz.jq_Class getOrCreateClass(java.lang.String desc,
                                             java.io.DataInput in)

getBSType

public final Clazz.jq_Type getBSType(java.lang.String desc)

getBSType

public final Clazz.jq_Type getBSType(UTF.Utf8 desc)

getOrCreateBSType

public final Clazz.jq_Type getOrCreateBSType(java.lang.String desc)

getOrCreateBSType

public final Clazz.jq_Type getOrCreateBSType(UTF.Utf8 desc)

replaceClass

public final void replaceClass(java.lang.String cName)

unloadBSType

public void unloadBSType(Clazz.jq_Type t)

getOrCreateType

public static final Clazz.jq_Type getOrCreateType(java.lang.ClassLoader cl,
                                                  UTF.Utf8 desc)

unloadType

public static final void unloadType(java.lang.ClassLoader cl,
                                    Clazz.jq_Type t)