|
||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
alt.jiapi.util.InstrumentingClassLoader
public class InstrumentingClassLoader
A sample ClassLoader which can be used when instrumenting Java applications. It knows how to load classes from CLASSPATH.
NOTE: Should the jar files found from jre/lib/ext (System.getProperty("java.ext.dirs")) also be added to search path?
Field Summary | |
---|---|
protected java.util.Map |
classes
|
protected InstrumentationContext |
ctx
|
Constructor Summary | |
---|---|
protected |
InstrumentingClassLoader(InstrumentationContext ctx,
java.net.URL[] urls,
java.lang.ClassLoader parent)
|
Method Summary | |
---|---|
java.lang.Class |
bootstrap(java.lang.String className)
|
static java.lang.ClassLoader |
createClassLoader()
Creates a new InstrumentingClassloader. |
static java.lang.ClassLoader |
createClassLoader(InstrumentationContext ctx)
Creates a new InstrumentingClassloader. |
static java.lang.ClassLoader |
createClassLoader(InstrumentationContext ctx,
java.lang.ClassLoader parent)
Creates a new InstrumentingClassloader. |
static java.lang.ClassLoader |
createClassLoader(InstrumentationContextProvider icp)
Creates a new InstrumentingClassloader. |
static java.lang.ClassLoader |
createClassLoader(InstrumentationContextProvider icp,
java.lang.ClassLoader parent)
Creates a new InstrumentingClassloader. |
protected java.security.CodeSource |
createCodeSource(java.net.URL location)
Form a CodeSource for loaded class. |
java.lang.Class |
findClass(java.lang.String name)
|
protected java.lang.Class |
loadClass(java.lang.String className,
boolean resolve)
|
void |
setContext(InstrumentationContext ctx)
Set the context for the ClassLoader. |
Methods inherited from class java.net.URLClassLoader |
---|
addURL, definePackage, findResource, findResources, getPermissions, getURLs, newInstance, newInstance |
Methods inherited from class java.security.SecureClassLoader |
---|
defineClass, defineClass |
Methods inherited from class java.lang.ClassLoader |
---|
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, 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 java.util.Map classes
protected InstrumentationContext ctx
Constructor Detail |
---|
protected InstrumentingClassLoader(InstrumentationContext ctx, java.net.URL[] urls, java.lang.ClassLoader parent)
Method Detail |
---|
public java.lang.Class bootstrap(java.lang.String className) throws java.lang.ClassNotFoundException
java.lang.ClassNotFoundException
public static java.lang.ClassLoader createClassLoader()
public static java.lang.ClassLoader createClassLoader(InstrumentationContext ctx)
public static java.lang.ClassLoader createClassLoader(InstrumentationContext ctx, java.lang.ClassLoader parent)
public static java.lang.ClassLoader createClassLoader(InstrumentationContextProvider icp) throws JiapiException
JiapiException
public static java.lang.ClassLoader createClassLoader(InstrumentationContextProvider icp, java.lang.ClassLoader parent) throws JiapiException
JiapiException
protected java.security.CodeSource createCodeSource(java.net.URL location)
location
- a location where the class was loaded frompublic java.lang.Class findClass(java.lang.String name) throws java.lang.ClassNotFoundException
findClass
in class java.net.URLClassLoader
java.lang.ClassNotFoundException
protected java.lang.Class loadClass(java.lang.String className, boolean resolve) throws java.lang.ClassNotFoundException
loadClass
in class java.lang.ClassLoader
java.lang.ClassNotFoundException
public void setContext(InstrumentationContext ctx)
ctx
- an InstrumentationContext to be used
|
||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |