|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.lang.ClassLoader
edu.rice.cs.cunit.InstrumentingClassLoader
public class InstrumentingClassLoader
Class loader that instruments loaded classes by applying IInstrumentors to them.
Nested Class Summary | |
---|---|
private static class |
InstrumentingClassLoader.RecurIntoClassesException
Private exception used to transport an exception out of the inner class. |
Field Summary | |
---|---|
protected java.util.ArrayList<java.lang.String> |
_classPath
Class path to consider when loading classes. |
protected java.util.ArrayList<IInstrumentationStrategy> |
_instrumentors
List of instrumentors that should be applied to a class. |
protected boolean |
_makeBackups
Make backups of original classes? |
protected java.util.HashMap<java.lang.String,java.lang.Class<?>> |
_processedClasses
Hash map of classes already processed. |
protected boolean |
_saveInstrumented
Should the instrumented classes be saved? |
Constructor Summary | |
---|---|
InstrumentingClassLoader(IInstrumentationStrategy[] instrumentors)
Creates a new instrumenting class loader using specified instrumentors. |
Method Summary | |
---|---|
boolean |
isSaveInstrumented()
Accessor for the save instrumented flag |
java.lang.Class |
loadClass(java.lang.String name,
boolean resolve)
Load and instrument the class with the specified name. |
protected void |
recurIntoClasses(ClassFile cf,
boolean resolve)
Recur into all the classes defined in the class. |
void |
setMakeBackups(boolean makeBackups)
Mutator for the make backups flag |
void |
setSaveInstrumented(boolean saveInstrumented)
Mutator for the save instrumented flag |
Methods inherited from class java.lang.ClassLoader |
---|
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, 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 |
---|
protected boolean _saveInstrumented
protected boolean _makeBackups
protected java.util.ArrayList<IInstrumentationStrategy> _instrumentors
protected java.util.ArrayList<java.lang.String> _classPath
protected java.util.HashMap<java.lang.String,java.lang.Class<?>> _processedClasses
Constructor Detail |
---|
public InstrumentingClassLoader(IInstrumentationStrategy[] instrumentors)
instrumentors
- array of instrumentorsMethod Detail |
---|
public boolean isSaveInstrumented()
public void setSaveInstrumented(boolean saveInstrumented)
saveInstrumented
- new flagpublic void setMakeBackups(boolean makeBackups)
makeBackups
- new flagpublic java.lang.Class loadClass(java.lang.String name, boolean resolve) throws java.lang.ClassNotFoundException
loadClass
in class java.lang.ClassLoader
name
- class nameresolve
- true if class should be resolved
java.lang.ClassNotFoundException
protected void recurIntoClasses(ClassFile cf, boolean resolve) throws java.lang.ClassNotFoundException
cf
- class fileresolve
- resolve classes?
java.lang.ClassNotFoundException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |