Class HierarchicalPluginStandaloneClassLoaderImpl
- java.lang.Object
-
- java.lang.ClassLoader
-
- java.security.SecureClassLoader
-
- java.net.URLClassLoader
-
- jetbrains.buildServer.plugins.classLoaders.TeamCityClassLoader
-
- jetbrains.buildServer.plugins.classLoaders.TeamCityPluginClassLoader
-
- jetbrains.buildServer.plugins.classLoaders.PluginStandaloneClassLoader
-
- jetbrains.buildServer.plugins.classLoaders.HierarchicalPluginStandaloneClassLoaderImpl
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
,PluginInfoByClassProvider
public class HierarchicalPluginStandaloneClassLoaderImpl extends PluginStandaloneClassLoader
NOTE: There no check for circular invocation. You should be aware of it when creating this classloader. Classloading order is: * this * parents without their parents (TeamCityClassLoader.doLoadClassWithoutParent(String)
used) * parents with their parents hierarchy, except superParent * superParent- Since:
- 9.0
-
-
Field Summary
-
Fields inherited from class jetbrains.buildServer.plugins.classLoaders.PluginStandaloneClassLoader
myPlugin
-
-
Constructor Summary
Constructors Constructor Description HierarchicalPluginStandaloneClassLoaderImpl(PluginClassLoadingInfo plugin, ClassLoader superParent, Collection<TeamCityClassLoader> parents)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Class
doLoadClass(String name)
URL
getResource(String name)
String
toString()
-
Methods inherited from class jetbrains.buildServer.plugins.classLoaders.PluginStandaloneClassLoader
findPluginInfoByClass
-
Methods inherited from class jetbrains.buildServer.plugins.classLoaders.TeamCityClassLoader
addJar, callParentLoadClass, doLoadClassWithoutParent, loadClass
-
Methods inherited from class java.net.URLClassLoader
addURL, close, definePackage, findClass, findResource, findResources, getPermissions, getResourceAsStream, getURLs, newInstance, newInstance
-
Methods inherited from class java.security.SecureClassLoader
defineClass, defineClass
-
Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findSystemClass, getClassLoadingLock, getPackage, getPackages, getParent, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, registerAsParallelCapable, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
-
-
-
-
Constructor Detail
-
HierarchicalPluginStandaloneClassLoaderImpl
public HierarchicalPluginStandaloneClassLoaderImpl(@NotNull PluginClassLoadingInfo plugin, @Nullable ClassLoader superParent, @NotNull Collection<TeamCityClassLoader> parents)
-
-
Method Detail
-
doLoadClass
@NotNull protected Class doLoadClass(@NotNull String name) throws ClassNotFoundException
- Overrides:
doLoadClass
in classTeamCityClassLoader
- Throws:
ClassNotFoundException
-
getResource
@Nullable public URL getResource(String name)
- Overrides:
getResource
in classTeamCityClassLoader
-
toString
public String toString()
- Overrides:
toString
in classPluginStandaloneClassLoader
-
-