final class ClassLoaderFacade
extends java.net.URLClassLoader
ModuleClassLoader to only expose public classes.| Modifier and Type | Field and Description |
|---|---|
private int |
classesLoaded |
private static java.net.URL[] |
EMPTY_URLS |
private ModuleClassLoader |
privateLoader |
private java.util.HashSet<java.lang.String> |
publicPkgs |
private java.util.ArrayList<java.lang.String> |
publicSet |
| Constructor and Description |
|---|
ClassLoaderFacade(ModuleClassLoader privateLoader)
Creates a new instance of ClassLoaderFacade
|
| Modifier and Type | Method and Description |
|---|---|
void |
dumpState(java.io.PrintStream writer) |
protected void |
finalize() |
protected java.lang.Class |
findClass(java.lang.String name) |
java.net.URL |
findResource(java.lang.String name) |
(package private) java.net.URL |
findResourceDirect(java.lang.String name)
Works like
findResource(String) but only looks at
this module, without delegating to ancestors. |
java.util.Enumeration<java.net.URL> |
findResources(java.lang.String name) |
(package private) java.lang.Class |
getClass(java.lang.String name)
Tries to find a class from the
ModuleClassLoader that this facade is wrapping,
without doing further delegation to ancestors. |
java.lang.String[] |
getPublicPkgs() |
(package private) boolean |
matchExportedPackage(java.lang.String name) |
void |
setPublicPkgs(java.lang.String[] publicPkgs) |
java.lang.String |
toString() |
addURL, close, definePackage, getPermissions, getResourceAsStream, getURLs, newInstance, newInstanceclearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findSystemClass, getClassLoadingLock, getPackage, getPackages, getParent, getResource, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, loadClass, registerAsParallelCapable, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSignersprivate static final java.net.URL[] EMPTY_URLS
private java.util.HashSet<java.lang.String> publicPkgs
private java.util.ArrayList<java.lang.String> publicSet
private ModuleClassLoader privateLoader
private int classesLoaded
public ClassLoaderFacade(ModuleClassLoader privateLoader)
protected void finalize()
throws java.lang.Throwable
finalize in class java.lang.Objectjava.lang.Throwablepublic void setPublicPkgs(java.lang.String[] publicPkgs)
public java.lang.String[] getPublicPkgs()
boolean matchExportedPackage(java.lang.String name)
protected java.lang.Class findClass(java.lang.String name)
throws java.lang.ClassNotFoundException
findClass in class java.net.URLClassLoaderjava.lang.ClassNotFoundExceptionpublic java.util.Enumeration<java.net.URL> findResources(java.lang.String name)
throws java.io.IOException
findResources in class java.net.URLClassLoaderjava.io.IOExceptionpublic java.net.URL findResource(java.lang.String name)
findResource in class java.net.URLClassLoaderjava.lang.Class getClass(java.lang.String name)
throws java.lang.ClassNotFoundException
ModuleClassLoader that this facade is wrapping,
without doing further delegation to ancestors.java.lang.ClassNotFoundExceptionjava.net.URL findResourceDirect(java.lang.String name)
findResource(String) but only looks at
this module, without delegating to ancestors.public void dumpState(java.io.PrintStream writer)
public java.lang.String toString()
toString in class java.lang.Object