Top Description Fields Constructors Methods
org.springframework.instrument.classloading

public Class SimpleLoadTimeWeaver

extends Object
implements LoadTimeWeaver
Class Inheritance
All Implemented Interfaces
org.springframework.instrument.classloading.LoadTimeWeaver
Imports
java.lang.instrument.ClassFileTransformer, org.springframework.util.Assert, .ClassUtils

LoadTimeWeaver that builds and exposes a SimpleInstrumentableClassLoader.

Mainly intended for testing environments, where it is sufficient to perform all class transformation on a newly created ClassLoader instance.

Authors
Rod Johnson, Juergen Hoeller
Since
2.0
See Also
getInstrumentableClassLoader(), SimpleInstrumentableClassLoader, ReflectiveLoadTimeWeaver

Field Summary

Modifier and TypeField and Description
private final SimpleInstrumentableClassLoader

Constructor Summary

AccessConstructor and Description
public
SimpleLoadTimeWeaver()

Create a new SimpleLoadTimeWeaver for the current context ClassLoader.

public
SimpleLoadTimeWeaver(SimpleInstrumentableClassLoader
the ClassLoader to build a simple instrumentable ClassLoader on top of
classLoader
)

Create a new SimpleLoadTimeWeaver for the given ClassLoader.

Method Summary

Modifier and TypeMethod and Description
public void
addTransformer(ClassFileTransformer
the ClassFileTransformer to add
transformer
)

Implements org.springframework.instrument.classloading.LoadTimeWeaver.addTransformer.

Add a ClassFileTransformer to be applied by this LoadTimeWeaver.
public ClassLoader
getInstrumentableClassLoader()

Implements org.springframework.instrument.classloading.LoadTimeWeaver.getInstrumentableClassLoader.

Return a ClassLoader that supports instrumentation through AspectJ-style load-time weaving based on user-defined ClassFileTransformers.
public ClassLoader
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

classLoaderback to summary
private final SimpleInstrumentableClassLoader classLoader

Constructor Detail

SimpleLoadTimeWeaverback to summary
public SimpleLoadTimeWeaver()

Create a new SimpleLoadTimeWeaver for the current context ClassLoader.

See Also
SimpleInstrumentableClassLoader
SimpleLoadTimeWeaverback to summary
public SimpleLoadTimeWeaver(SimpleInstrumentableClassLoader classLoader)

Create a new SimpleLoadTimeWeaver for the given ClassLoader.

Parameters
classLoader:SimpleInstrumentableClassLoader

the ClassLoader to build a simple instrumentable ClassLoader on top of

Method Detail

addTransformerback to summary
public void addTransformer(ClassFileTransformer transformer)

Implements org.springframework.instrument.classloading.LoadTimeWeaver.addTransformer.

Doc from org.springframework.instrument.classloading.LoadTimeWeaver.addTransformer.

Add a ClassFileTransformer to be applied by this LoadTimeWeaver.

Parameters
transformer:ClassFileTransformer

the ClassFileTransformer to add

Annotations
@Override
getInstrumentableClassLoaderback to summary
public ClassLoader getInstrumentableClassLoader()

Implements org.springframework.instrument.classloading.LoadTimeWeaver.getInstrumentableClassLoader.

Doc from org.springframework.instrument.classloading.LoadTimeWeaver.getInstrumentableClassLoader.

Return a ClassLoader that supports instrumentation through AspectJ-style load-time weaving based on user-defined ClassFileTransformers.

May be the current ClassLoader, or a ClassLoader created by this LoadTimeWeaver instance.

Returns:ClassLoader

the ClassLoader which will expose instrumented classes according to the registered transformers

Annotations
@Override
getThrowawayClassLoaderback to summary
public ClassLoader getThrowawayClassLoader()

Implements org.springframework.instrument.classloading.LoadTimeWeaver.getThrowawayClassLoader.

This implementation builds a SimpleThrowawayClassLoader.

Returns:ClassLoader

Doc from org.springframework.instrument.classloading.LoadTimeWeaver.getThrowawayClassLoader.

a temporary throwaway ClassLoader; should return a new instance for each call, with no existing state

Annotations
@Override