Class ExtensionClassLoader
java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
io.opentelemetry.javaagent.tooling.ExtensionClassLoader
- All Implemented Interfaces:
Closeable,AutoCloseable
This class creates a class loader which encapsulates arbitrary extensions for Otel Java
instrumentation agent. Such extensions may include SDK components (exporters or propagators) and
additional instrumentations. They have to be isolated and shaded to reduce interference with the
user application and to make it compatible with shaded SDK used by the agent. Thus each extension
jar gets a separate class loader and all of them are aggregated with the help of
MultipleParentClassLoader.-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionstatic ClassLoadergetInstance(ClassLoader parent, File javaagentFile, boolean isSecurityManagerSupportEnabled, EarlyInitAgentConfig earlyConfig) protected PermissionCollectiongetPermissions(CodeSource codesource) Methods inherited from class java.net.URLClassLoader
addURL, close, definePackage, findClass, findResource, findResources, getResourceAsStream, getURLs, newInstance, newInstanceMethods inherited from class java.security.SecureClassLoader
defineClass, defineClassMethods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getResource, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, loadClass, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
-
Field Details
-
EXTENSIONS_CONFIG
- See Also:
-
-
Method Details
-
getInstance
public static ClassLoader getInstance(ClassLoader parent, File javaagentFile, boolean isSecurityManagerSupportEnabled, EarlyInitAgentConfig earlyConfig) -
getPermissions
- Overrides:
getPermissionsin classURLClassLoader
-