org.springframework.instrument.classloading
Class SimpleInstrumentableClassLoader
java.lang.Object
  
java.lang.ClassLoader
      
org.springframework.core.DecoratingClassLoader
          
org.springframework.core.OverridingClassLoader
              
org.springframework.instrument.classloading.SimpleInstrumentableClassLoader
public class SimpleInstrumentableClassLoader
- extends OverridingClassLoader
 
Simplistic implementation of an instrumentable ClassLoader.
 
Usable in tests and standalone environments.
- Since:
 
  - 2.0
 
- Author:
 
  - Rod Johnson, Costin Leau
 
 
 
 
 
 
 
| 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 | 
 
SimpleInstrumentableClassLoader
public SimpleInstrumentableClassLoader(ClassLoader parent)
- Create a new 
SimpleLoadTimeWeaver for the given
 ClassLoader.
- Parameters:
 parent - the ClassLoader to build a simple
 instrumentable ClassLoader for
 
addTransformer
public void addTransformer(ClassFileTransformer transformer)
- Add a 
ClassFileTransformer to be applied by this
 ClassLoader.
- Parameters:
 transformer - the ClassFileTransformer to register
 
 
transformIfNecessary
protected byte[] transformIfNecessary(String name,
                                      byte[] bytes)
- Description copied from class: 
OverridingClassLoader 
- Transformation hook to be implemented by subclasses.
 
The default implementation simply returns the given bytes as-is.
- Overrides:
 transformIfNecessary in class OverridingClassLoader
 
- Parameters:
 name - the fully-qualified name of the class being transformedbytes - the raw bytes of the class
- Returns:
 - the transformed bytes (never 
null;
 same as the input bytes if the transformation produced no changes)