spring-context

org.springframework.instrument.classloading
Class SimpleInstrumentableClassLoader

java.lang.Object
  extended by java.lang.ClassLoader
      extended by org.springframework.core.DecoratingClassLoader
          extended by org.springframework.core.OverridingClassLoader
              extended by org.springframework.instrument.classloading.SimpleInstrumentableClassLoader

public class SimpleInstrumentableClassLoader
extends org.springframework.core.OverridingClassLoader

Simplistic implementation of an instrumentable ClassLoader.

Usable in tests and standalone environments.

Since:
2.0
Author:
Rod Johnson, Costin Leau

Field Summary
 
Fields inherited from class org.springframework.core.OverridingClassLoader
DEFAULT_EXCLUDED_PACKAGES
 
Constructor Summary
SimpleInstrumentableClassLoader(java.lang.ClassLoader parent)
          Create a new SimpleLoadTimeWeaver for the given ClassLoader.
 
Method Summary
 void addTransformer(java.lang.instrument.ClassFileTransformer transformer)
          Add a ClassFileTransformer to be applied by this ClassLoader.
protected  byte[] transformIfNecessary(java.lang.String name, byte[] bytes)
           
 
Methods inherited from class org.springframework.core.OverridingClassLoader
isEligibleForOverriding, loadBytesForClass, loadClass, loadClassForOverriding, openStreamForClass
 
Methods inherited from class org.springframework.core.DecoratingClassLoader
excludeClass, excludePackage, isExcluded
 
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
 

Constructor Detail

SimpleInstrumentableClassLoader

public SimpleInstrumentableClassLoader(java.lang.ClassLoader parent)
Create a new SimpleLoadTimeWeaver for the given ClassLoader.

Parameters:
parent - the ClassLoader to build a simple instrumentable ClassLoader for
Method Detail

addTransformer

public void addTransformer(java.lang.instrument.ClassFileTransformer transformer)
Add a ClassFileTransformer to be applied by this ClassLoader.

Parameters:
transformer - the ClassFileTransformer to register

transformIfNecessary

protected byte[] transformIfNecessary(java.lang.String name,
                                      byte[] bytes)
Overrides:
transformIfNecessary in class org.springframework.core.OverridingClassLoader

spring-context