Package com.atlassian.plugin.util
Class ChainingClassLoader
java.lang.Object
java.lang.ClassLoader
com.atlassian.plugin.util.ChainingClassLoader
A class loader that delegates to a list of class loaders. The order is important as classes and resources will be
loaded from the first classloader that can load them. This class is optimized for a small number of classloaders.
- Since:
- 2.6.0
-
Constructor Summary
ConstructorsConstructorDescriptionChainingClassLoader(ClassLoader... classLoaders) Constructs a chaining classloaderChainingClassLoader(Map<String, String> resourceRedirects, ClassLoader... classLoaders) Constructs a classloader that overrides certain resources -
Method Summary
Modifier and TypeMethodDescriptionvoidgetResource(String name) getResourceAsStream(String name) getResources(String name) 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
-
ChainingClassLoader
Constructs a chaining classloader- Parameters:
classLoaders- The classloaders to delegate to, in order
-
ChainingClassLoader
Constructs a classloader that overrides certain resources- Parameters:
resourceRedirects- The map of resources to redirectclassLoaders- The classloaders to delegate to, in order
-
-
Method Details
-
loadClass
- Overrides:
loadClassin classClassLoader- Throws:
ClassNotFoundException
-
getResources
- Overrides:
getResourcesin classClassLoader- Throws:
IOException
-
getResource
- Overrides:
getResourcein classClassLoader
-
getResourceAsStream
- Overrides:
getResourceAsStreamin classClassLoader
-
setDefaultAssertionStatus
public void setDefaultAssertionStatus(boolean enabled) - Overrides:
setDefaultAssertionStatusin classClassLoader
-
setPackageAssertionStatus
- Overrides:
setPackageAssertionStatusin classClassLoader
-
setClassAssertionStatus
- Overrides:
setClassAssertionStatusin classClassLoader
-
clearAssertionStatus
public void clearAssertionStatus()- Overrides:
clearAssertionStatusin classClassLoader
-