|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.springframework.instrument.classloading.InstrumentationLoadTimeWeaver
public class InstrumentationLoadTimeWeaver
LoadTimeWeaver relying on VM Instrumentation.
Start the JVM specifying the Java agent to be used, like as follows:
-javaagent:path/to/org.springframework.instrument.jar
where org.springframework.instrument.jar is a JAR file containing
the InstrumentationSavingAgent class, as shipped with Spring.
In Eclipse, for example, set the "Run configuration"'s JVM args to be of the form:
-javaagent:${project_loc}/lib/org.springframework.instrument.jar
InstrumentationSavingAgent| Constructor Summary | |
|---|---|
InstrumentationLoadTimeWeaver()
Create a new InstrumentationLoadTimeWeaver for the default ClassLoader. |
|
InstrumentationLoadTimeWeaver(ClassLoader classLoader)
Create a new InstrumentationLoadTimeWeaver for the given ClassLoader. |
|
| Method Summary | |
|---|---|
void |
addTransformer(ClassFileTransformer transformer)
Add a ClassFileTransformer to be applied by this
LoadTimeWeaver. |
ClassLoader |
getInstrumentableClassLoader()
We have the ability to weave the current class loader when starting the JVM in this way, so the instrumentable class loader will always be the current loader. |
ClassLoader |
getThrowawayClassLoader()
This implementation always returns a SimpleThrowawayClassLoader. |
static boolean |
isInstrumentationAvailable()
Check whether an Instrumentation instance is available for the current VM. |
void |
removeTransformers()
Remove all registered transformers, in inverse order of registration. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public InstrumentationLoadTimeWeaver()
public InstrumentationLoadTimeWeaver(ClassLoader classLoader)
classLoader - the ClassLoader that registered transformers are supposed to apply to| Method Detail |
|---|
public void addTransformer(ClassFileTransformer transformer)
LoadTimeWeaverClassFileTransformer to be applied by this
LoadTimeWeaver.
addTransformer in interface LoadTimeWeavertransformer - the ClassFileTransformer to addpublic ClassLoader getInstrumentableClassLoader()
getInstrumentableClassLoader in interface LoadTimeWeaverClassLoader which will expose
instrumented classes according to the registered transformerspublic ClassLoader getThrowawayClassLoader()
SimpleThrowawayClassLoader.
getThrowawayClassLoader in interface LoadTimeWeaverClassLoader; should return
a new instance for each call, with no existing statepublic void removeTransformers()
public static boolean isInstrumentationAvailable()
getInstrumentation()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||