Class CompositeClassLoader
java.lang.Object
java.lang.ClassLoader
com.atlassian.templaterenderer.velocity.CompositeClassLoader
A CompositeClassLoader that will try to load classes/resources using multiple classloaders. It will try to load
using the order in which classloaders where supplied and will return the first match.
The ClassLoader will have a null parent so we don't leak classes from main ClassLoader. See https://studio.atlassian.com/browse/ATR-27
-
Constructor Summary
ConstructorsConstructorDescriptionCompositeClassLoader(ClassLoader... classLoaders) Creates a new composite class loader. -
Method Summary
Modifier and TypeMethodDescriptionvoidgetResource(String name) getResourceAsStream(String name) getResources(String name) Class<?>voidsetClassAssertionStatus(String className, boolean enabled) voidsetDefaultAssertionStatus(boolean enabled) voidsetPackageAssertionStatus(String packageName, boolean enabled) Methods inherited from class java.lang.ClassLoader
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, setSigners
-
Constructor Details
-
CompositeClassLoader
Creates a new composite class loader. At least one class loader needs to be supplied. Please note that order of the supplied class loaders is the order in which they will be queried.- Parameters:
classLoaders- A list of class loaders to query.
-
-
Method Details
-
clearAssertionStatus
public void clearAssertionStatus()- Overrides:
clearAssertionStatusin classClassLoader
-
getResource
- Overrides:
getResourcein classClassLoader
-
getResourceAsStream
- Overrides:
getResourceAsStreamin classClassLoader
-
getResources
- Overrides:
getResourcesin classClassLoader- Throws:
IOException
-
loadClass
- Overrides:
loadClassin classClassLoader- Throws:
ClassNotFoundException
-
setClassAssertionStatus
- Overrides:
setClassAssertionStatusin classClassLoader
-
setDefaultAssertionStatus
public void setDefaultAssertionStatus(boolean enabled) - Overrides:
setDefaultAssertionStatusin classClassLoader
-
setPackageAssertionStatus
- Overrides:
setPackageAssertionStatusin classClassLoader
-