Class PlexusClassWorldsClassRealmClassLoaderHandler

  • All Implemented Interfaces:
    ClassLoaderHandler

    class PlexusClassWorldsClassRealmClassLoaderHandler
    extends java.lang.Object
    implements ClassLoaderHandler
    Handle the Plexus ClassWorlds ClassRealm ClassLoader.
    • Constructor Detail

      • PlexusClassWorldsClassRealmClassLoaderHandler

        private PlexusClassWorldsClassRealmClassLoaderHandler()
        Class cannot be constructed.
    • Method Detail

      • canHandle

        public static boolean canHandle​(java.lang.Class<?> classLoaderClass,
                                        LogNode log)
        Check whether this ClassLoaderHandler can handle a given ClassLoader.
        Parameters:
        classLoaderClass - the ClassLoader class or one of its superclasses.
        log - the log
        Returns:
        true if this ClassLoaderHandler can handle the ClassLoader.
      • 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 the ClassLoader delegation order for a ClassLoader.
        Parameters:
        classRealm - the ClassLoader to find the order for.
        classLoaderOrder - a ClassLoaderOrder 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 associated ClassLoader.
        Parameters:
        classLoader - the ClassLoader to find the classpath entries order for.
        classpathOrder - a ClasspathOrder object to update.
        scanSpec - the ScanSpec.
        log - the log.