Class ChildFirstURLClassLoader

java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
lu.kbra.modelizer_next.bootstrap.subapp.ChildFirstURLClassLoader
All Implemented Interfaces:
Closeable, AutoCloseable

public final class ChildFirstURLClassLoader extends URLClassLoader
URL class loader that prefers application jars before parent classes for app isolation.
  • Constructor Details

    • ChildFirstURLClassLoader

      public ChildFirstURLClassLoader(URL[] urls, ClassLoader parent, List<String> parentFirstPackages)
      Creates a child first URL class loader instance during bootstrap/update processing.
      Parameters:
      urls - values for urls
      parent - parent component used for dialog ownership
      parentFirstPackages - values for parent first packages
  • Method Details

    • loadClass

      protected Class<?> loadClass(String name, boolean resolve) throws ClassNotFoundException
      Loads the class during bootstrap/update processing.
      Overrides:
      loadClass in class ClassLoader
      Parameters:
      name - name value to read, write, or display
      resolve - whether resolve is enabled
      Returns:
      the load class result
      Throws:
      ClassNotFoundException - if the operation cannot be completed
    • getResource

      public URL getResource(String name)
      Returns the resource during bootstrap/update processing.
      Overrides:
      getResource in class ClassLoader
      Parameters:
      name - name value to read, write, or display
      Returns:
      the resource