Class PlexusClassWorldsClassRealmClassLoaderHandler
- java.lang.Object
-
- nonapi.io.github.classgraph.classloaderhandler.PlexusClassWorldsClassRealmClassLoaderHandler
-
- All Implemented Interfaces:
ClassLoaderHandler
class PlexusClassWorldsClassRealmClassLoaderHandler extends java.lang.Object implements ClassLoaderHandler
Handle the Plexus ClassWorlds ClassRealm ClassLoader.
-
-
Constructor Summary
Constructors Modifier Constructor Description private
PlexusClassWorldsClassRealmClassLoaderHandler()
Class cannot be constructed.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static boolean
canHandle(java.lang.Class<?> classLoaderClass, LogNode log)
Check whether thisClassLoaderHandler
can handle a givenClassLoader
.static void
findClassLoaderOrder(java.lang.ClassLoader classRealm, ClassLoaderOrder classLoaderOrder, LogNode log)
Find theClassLoader
delegation order for aClassLoader
.static void
findClasspathOrder(java.lang.ClassLoader classLoader, ClasspathOrder classpathOrder, ScanSpec scanSpec, LogNode log)
Find the classpath entries for the associatedClassLoader
.private static boolean
isParentFirstStrategy(java.lang.ClassLoader classRealmInstance, ReflectionUtils reflectionUtils)
Checks if is this classloader uses a parent-first strategy.
-
-
-
Method Detail
-
canHandle
public static boolean canHandle(java.lang.Class<?> classLoaderClass, LogNode log)
Check whether thisClassLoaderHandler
can handle a givenClassLoader
.- Parameters:
classLoaderClass
- theClassLoader
class or one of its superclasses.log
- the log- Returns:
- true if this
ClassLoaderHandler
can handle theClassLoader
.
-
isParentFirstStrategy
private static boolean isParentFirstStrategy(java.lang.ClassLoader classRealmInstance, ReflectionUtils reflectionUtils)
Checks if is this classloader uses a parent-first strategy.- Parameters:
classRealmInstance
- the ClassRealm instance- Returns:
- true if classloader uses a parent-first strategy
-
findClassLoaderOrder
public static void findClassLoaderOrder(java.lang.ClassLoader classRealm, ClassLoaderOrder classLoaderOrder, LogNode log)
Find theClassLoader
delegation order for aClassLoader
.- Parameters:
classRealm
- theClassLoader
to find the order for.classLoaderOrder
- aClassLoaderOrder
object to update.log
- the log
-
findClasspathOrder
public static void findClasspathOrder(java.lang.ClassLoader classLoader, ClasspathOrder classpathOrder, ScanSpec scanSpec, LogNode log)
Find the classpath entries for the associatedClassLoader
.- Parameters:
classLoader
- theClassLoader
to find the classpath entries order for.classpathOrder
- aClasspathOrder
object to update.scanSpec
- theScanSpec
.log
- the log.
-
-