Package ch.qos.cal10n.plugins
Class ThisFirstClassLoader
- java.lang.Object
-
- java.lang.ClassLoader
-
- java.security.SecureClassLoader
-
- java.net.URLClassLoader
-
- ch.qos.cal10n.plugins.ThisFirstClassLoader
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
public class ThisFirstClassLoader extends java.net.URLClassLoader
An almost trivial no fuss implementation of a class loader following the child-first delegation model.
-
-
Constructor Summary
Constructors Constructor Description ThisFirstClassLoader(java.net.URL[] urls)
ThisFirstClassLoader(java.net.URL[] urls, java.lang.ClassLoader parent)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addURL(java.net.URL url)
java.lang.Class<?>
loadClass(java.lang.String name)
protected java.lang.Class<?>
loadClass(java.lang.String name, boolean resolve)
We override the parent-first behavior established by java.lang.Classloader.-
Methods inherited from class java.net.URLClassLoader
close, definePackage, findClass, findResource, findResources, getPermissions, getResourceAsStream, getURLs, newInstance, newInstance
-
Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getResource, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
-
-
-
-
Method Detail
-
addURL
public void addURL(java.net.URL url)
- Overrides:
addURL
in classjava.net.URLClassLoader
-
loadClass
public java.lang.Class<?> loadClass(java.lang.String name) throws java.lang.ClassNotFoundException
- Overrides:
loadClass
in classjava.lang.ClassLoader
- Throws:
java.lang.ClassNotFoundException
-
loadClass
protected java.lang.Class<?> loadClass(java.lang.String name, boolean resolve) throws java.lang.ClassNotFoundException
We override the parent-first behavior established by java.lang.Classloader. The implementation is surprisingly straightforward.- Overrides:
loadClass
in classjava.lang.ClassLoader
- Throws:
java.lang.ClassNotFoundException
-
-