Interface LoadTimeWeaver
- All Known Implementing Classes:
 DefaultContextLoadTimeWeaver,GlassFishLoadTimeWeaver,InstrumentationLoadTimeWeaver,JBossLoadTimeWeaver,ReflectiveLoadTimeWeaver,SimpleLoadTimeWeaver,TomcatLoadTimeWeaver
public interface LoadTimeWeaver
Defines the contract for adding one or more
 
ClassFileTransformers to a ClassLoader.
 Implementations may operate on the current context ClassLoader
 or expose their own instrumentable ClassLoader.
- Since:
 - 2.0
 - Author:
 - Rod Johnson, Costin Leau
 - See Also:
 
- 
Method Summary
Modifier and TypeMethodDescriptionvoidaddTransformer(ClassFileTransformer transformer) Add aClassFileTransformerto be applied by thisLoadTimeWeaver.Return aClassLoaderthat supports instrumentation through AspectJ-style load-time weaving based on user-definedClassFileTransformers.Return a throwawayClassLoader, enabling classes to be loaded and inspected without affecting the parentClassLoader. 
- 
Method Details
- 
addTransformer
Add aClassFileTransformerto be applied by thisLoadTimeWeaver.- Parameters:
 transformer- theClassFileTransformerto add
 - 
getInstrumentableClassLoader
ClassLoader getInstrumentableClassLoader()Return aClassLoaderthat supports instrumentation through AspectJ-style load-time weaving based on user-definedClassFileTransformers.May be the current
ClassLoader, or aClassLoadercreated by thisLoadTimeWeaverinstance.- Returns:
 - the 
ClassLoaderwhich will expose instrumented classes according to the registered transformers 
 - 
getThrowawayClassLoader
ClassLoader getThrowawayClassLoader()Return a throwawayClassLoader, enabling classes to be loaded and inspected without affecting the parentClassLoader.Should not return the same instance of the
ClassLoaderreturned from an invocation ofgetInstrumentableClassLoader().- Returns:
 - a temporary throwaway 
ClassLoader; should return a new instance for each call, with no existing state 
 
 -