spring-framework / org.springframework.instrument.classloading / ShadowingClassLoader

ShadowingClassLoader

open class ShadowingClassLoader : DecoratingClassLoader

ClassLoader decorator that shadows an enclosing ClassLoader, applying registered transformers to all affected classes.

Author
Rob Harrop

Author
Juergen Hoeller

Author
Costin Leau

Since
2.0

See Also
#addTransformerorg.springframework.core.OverridingClassLoader

Constructors

<init>

ShadowingClassLoader(enclosingClassLoader: ClassLoader)

Create a new ShadowingClassLoader, decorating the given ClassLoader, applying #DEFAULT_EXCLUDED_PACKAGES.

ShadowingClassLoader(enclosingClassLoader: ClassLoader, defaultExcludes: Boolean)

Create a new ShadowingClassLoader, decorating the given ClassLoader.

Properties

DEFAULT_EXCLUDED_PACKAGES

static val DEFAULT_EXCLUDED_PACKAGES: Array<String>

Packages that are excluded by default

Functions

addTransformer

open fun addTransformer(transformer: ClassFileTransformer): Unit

Add the given ClassFileTransformer to the list of transformers that this ClassLoader will apply.

copyTransformers

open fun copyTransformers(other: ShadowingClassLoader): Unit

Copy all ClassFileTransformers from the given ClassLoader to the list of transformers that this ClassLoader will apply.

getResource

open fun getResource(name: String): URL

getResourceAsStream

open fun getResourceAsStream(name: String): InputStream

getResources

open fun getResources(name: String): Enumeration<URL>

loadClass

open fun loadClass(name: String): Class<*>

Inheritors

ResourceOverridingShadowingClassLoader

open class ResourceOverridingShadowingClassLoader : ShadowingClassLoader

Subclass of ShadowingClassLoader that overrides attempts to locate certain files.