Package org.powermock.core.classloader
Class DeferSupportingClassLoader
java.lang.Object
java.lang.ClassLoader
org.powermock.core.classloader.DeferSupportingClassLoader
- Direct Known Subclasses:
MockClassLoader
Defers classloading of system classes to a delegate.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ConcurrentMap
<String, SoftReference<Class<?>>> private final MockClassLoaderConfiguration
(package private) ClassLoader
private final ConcurrentMap
<String, Object> -
Constructor Summary
ConstructorsConstructorDescriptionDeferSupportingClassLoader
(ClassLoader classloader, MockClassLoaderConfiguration configuration) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Register a class to the cache of this classloaderprivate Class
<?> findLoadedClass1
(String name) protected URL
findResource
(String name) Finds the resource with the specified name on the search path.protected Enumeration
<URL> findResources
(String name) protected Object
getClassLoadingLock
(String className) getResources
(String name) private Class
<?> loadByDeferClassLoader
(String name) protected Class
<?> private Class
<?> loadClass1
(String name, boolean resolve) protected abstract Class
<?> private boolean
shouldDefer
(String name) Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findClass, findLibrary, findLoadedClass, findResource, findSystemClass, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
-
Field Details
-
classes
-
parallelLockMap
-
configuration
-
deferTo
ClassLoader deferTo
-
-
Constructor Details
-
DeferSupportingClassLoader
DeferSupportingClassLoader(ClassLoader classloader, MockClassLoaderConfiguration configuration)
-
-
Method Details
-
getResource
- Overrides:
getResource
in classClassLoader
-
getResourceAsStream
- Overrides:
getResourceAsStream
in classClassLoader
-
getResources
- Overrides:
getResources
in classClassLoader
- Throws:
IOException
-
getConfiguration
-
cache
Register a class to the cache of this classloader -
loadClassByThisClassLoader
protected abstract Class<?> loadClassByThisClassLoader(String s) throws ClassFormatError, ClassNotFoundException -
loadClass
- Overrides:
loadClass
in classClassLoader
- Throws:
ClassNotFoundException
-
getClassLoadingLock
- Overrides:
getClassLoadingLock
in classClassLoader
-
findResource
Finds the resource with the specified name on the search path.- Overrides:
findResource
in classClassLoader
- Parameters:
name
- the name of the resource- Returns:
- a
URL
for the resource, ornull
if the resource could not be found.
-
findResources
- Overrides:
findResources
in classClassLoader
- Throws:
IOException
-
loadClass1
- Throws:
ClassNotFoundException
-
loadByDeferClassLoader
- Throws:
ClassNotFoundException
-
shouldDefer
-
findLoadedClass1
-