abstract class DeferSupportingClassLoader
extends java.lang.ClassLoader
| Modifier and Type | Field and Description |
|---|---|
private java.util.concurrent.ConcurrentMap<java.lang.String,java.lang.ref.SoftReference<java.lang.Class<?>>> |
classes |
private MockClassLoaderConfiguration |
configuration |
(package private) java.lang.ClassLoader |
deferTo |
private java.util.concurrent.ConcurrentMap<java.lang.String,java.lang.Object> |
parallelLockMap |
| Constructor and Description |
|---|
DeferSupportingClassLoader(java.lang.ClassLoader classloader,
MockClassLoaderConfiguration configuration) |
| Modifier and Type | Method and Description |
|---|---|
void |
cache(java.lang.Class<?> cls)
Register a class to the cache of this classloader
|
private java.lang.Class<?> |
findLoadedClass1(java.lang.String name) |
protected java.net.URL |
findResource(java.lang.String name)
Finds the resource with the specified name on the search path.
|
protected java.util.Enumeration<java.net.URL> |
findResources(java.lang.String name) |
protected java.lang.Object |
getClassLoadingLock(java.lang.String className) |
MockClassLoaderConfiguration |
getConfiguration() |
java.net.URL |
getResource(java.lang.String s) |
java.io.InputStream |
getResourceAsStream(java.lang.String s) |
java.util.Enumeration<java.net.URL> |
getResources(java.lang.String name) |
private java.lang.Class<?> |
loadByDeferClassLoader(java.lang.String name) |
protected java.lang.Class<?> |
loadClass(java.lang.String name,
boolean resolve) |
private java.lang.Class<?> |
loadClass1(java.lang.String name,
boolean resolve) |
protected abstract java.lang.Class<?> |
loadClassByThisClassLoader(java.lang.String s) |
private boolean |
shouldDefer(java.lang.String name) |
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findSystemClass, getPackage, getPackages, getParent, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, registerAsParallelCapable, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSignersprivate final java.util.concurrent.ConcurrentMap<java.lang.String,java.lang.ref.SoftReference<java.lang.Class<?>>> classes
private final java.util.concurrent.ConcurrentMap<java.lang.String,java.lang.Object> parallelLockMap
private final MockClassLoaderConfiguration configuration
java.lang.ClassLoader deferTo
DeferSupportingClassLoader(java.lang.ClassLoader classloader,
MockClassLoaderConfiguration configuration)
public java.net.URL getResource(java.lang.String s)
getResource in class java.lang.ClassLoaderpublic java.io.InputStream getResourceAsStream(java.lang.String s)
getResourceAsStream in class java.lang.ClassLoaderpublic java.util.Enumeration<java.net.URL> getResources(java.lang.String name)
throws java.io.IOException
getResources in class java.lang.ClassLoaderjava.io.IOExceptionpublic MockClassLoaderConfiguration getConfiguration()
public void cache(java.lang.Class<?> cls)
protected abstract java.lang.Class<?> loadClassByThisClassLoader(java.lang.String s)
throws java.lang.ClassFormatError,
java.lang.ClassNotFoundException
java.lang.ClassFormatErrorjava.lang.ClassNotFoundExceptionprotected java.lang.Class<?> loadClass(java.lang.String name,
boolean resolve)
throws java.lang.ClassNotFoundException
loadClass in class java.lang.ClassLoaderjava.lang.ClassNotFoundExceptionprotected java.lang.Object getClassLoadingLock(java.lang.String className)
getClassLoadingLock in class java.lang.ClassLoaderprotected java.net.URL findResource(java.lang.String name)
findResource in class java.lang.ClassLoadername - the name of the resourceURL for the resource, or null if the
resource could not be found.protected java.util.Enumeration<java.net.URL> findResources(java.lang.String name)
throws java.io.IOException
findResources in class java.lang.ClassLoaderjava.io.IOExceptionprivate java.lang.Class<?> loadClass1(java.lang.String name,
boolean resolve)
throws java.lang.ClassNotFoundException
java.lang.ClassNotFoundExceptionprivate java.lang.Class<?> loadByDeferClassLoader(java.lang.String name)
throws java.lang.ClassNotFoundException
java.lang.ClassNotFoundExceptionprivate boolean shouldDefer(java.lang.String name)
private java.lang.Class<?> findLoadedClass1(java.lang.String name)