Class ResourceOverridingShadowingClassLoader
java.lang.Object
java.lang.ClassLoader
org.springframework.core.DecoratingClassLoader
org.springframework.instrument.classloading.ShadowingClassLoader
org.springframework.instrument.classloading.ResourceOverridingShadowingClassLoader
Subclass of ShadowingClassLoader that overrides attempts to
locate certain files.
- Since:
- 2.0
- Author:
- Rod Johnson, Adrian Colyer
-
Field Summary
Fields inherited from class org.springframework.instrument.classloading.ShadowingClassLoader
DEFAULT_EXCLUDED_PACKAGES
-
Constructor Summary
ConstructorDescriptionResourceOverridingShadowingClassLoader
(ClassLoader enclosingClassLoader) Create a new ResourceOverridingShadowingClassLoader, decorating the given ClassLoader. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Copy all overrides from the given ClassLoader.getResource
(String requestedPath) getResourceAsStream
(String requestedPath) getResources
(String requestedPath) void
Return the resource (if any) at the new path on an attempt to locate a resource at the old path.void
Ensure that a resource with the given path is not found.Methods inherited from class org.springframework.instrument.classloading.ShadowingClassLoader
addTransformer, copyTransformers, isEligibleForShadowing, loadClass
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, findClass, findLibrary, findLoadedClass, findResource, findResource, findResources, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
-
Constructor Details
-
ResourceOverridingShadowingClassLoader
Create a new ResourceOverridingShadowingClassLoader, decorating the given ClassLoader.- Parameters:
enclosingClassLoader
- the ClassLoader to decorate
-
-
Method Details
-
override
Return the resource (if any) at the new path on an attempt to locate a resource at the old path.- Parameters:
oldPath
- the path requestednewPath
- the actual path to be looked up
-
suppress
Ensure that a resource with the given path is not found.- Parameters:
oldPath
- the path of the resource to hide even if it exists in the parent ClassLoader
-
copyOverrides
Copy all overrides from the given ClassLoader.- Parameters:
other
- the other ClassLoader to copy from
-
getResource
- Overrides:
getResource
in classShadowingClassLoader
-
getResourceAsStream
- Overrides:
getResourceAsStream
in classShadowingClassLoader
-
getResources
- Overrides:
getResources
in classShadowingClassLoader
- Throws:
IOException
-