Package ch.qos.logback.core.util
Class Loader
- java.lang.Object
-
- ch.qos.logback.core.util.Loader
-
public class Loader extends Object
Load resources (or images) from various sources.
-
-
Field Summary
Fields Modifier and Type Field Description static String
IGNORE_TCL_PROPERTY_NAME
-
Constructor Summary
Constructors Constructor Description Loader()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static ClassLoader
getClassLoaderAsPrivileged(Class<?> clazz)
Returns the class loader of clazz in an access privileged section.static ClassLoader
getClassLoaderOfClass(Class<?> clazz)
Return the class loader which loaded the class passed as argument.static ClassLoader
getClassLoaderOfObject(Object o)
Get the class loader of the object passed as argument.static URL
getResource(String resource, ClassLoader classLoader)
Search for a resource using the classloader passed as parameter.static URL
getResourceBySelfClassLoader(String resource)
Attempt to find a resource by using the classloader that loaded this class, namely Loader.class.static Set<URL>
getResources(String resource, ClassLoader classLoader)
Compute the number of occurrences a resource can be found by a class loader.static ClassLoader
getTCL()
Get the Thread Context Loader which is a JDK 1.2 feature.static Class<?>
loadClass(String clazz)
If running under JDK 1.2 load the specified class using theThread
contextClassLoader
if that fails try Class.forname.static Class<?>
loadClass(String clazz, Context context)
-
-
-
Field Detail
-
IGNORE_TCL_PROPERTY_NAME
public static final String IGNORE_TCL_PROPERTY_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
getResources
public static Set<URL> getResources(String resource, ClassLoader classLoader) throws IOException
Compute the number of occurrences a resource can be found by a class loader.- Parameters:
resource
-classLoader
-- Returns:
- Throws:
IOException
-
getResource
public static URL getResource(String resource, ClassLoader classLoader)
Search for a resource using the classloader passed as parameter.- Parameters:
resource
- the resource name to look forclassLoader
- the classloader used for the search
-
getResourceBySelfClassLoader
public static URL getResourceBySelfClassLoader(String resource)
Attempt to find a resource by using the classloader that loaded this class, namely Loader.class.- Parameters:
resource
-- Returns:
-
getTCL
public static ClassLoader getTCL()
Get the Thread Context Loader which is a JDK 1.2 feature. If we are running under JDK 1.1 or anything else goes wrong the method returnsnull
.
-
loadClass
public static Class<?> loadClass(String clazz, Context context) throws ClassNotFoundException
- Throws:
ClassNotFoundException
-
getClassLoaderOfObject
public static ClassLoader getClassLoaderOfObject(Object o)
Get the class loader of the object passed as argument. Return the system class loader if appropriate.- Parameters:
o
-- Returns:
-
getClassLoaderAsPrivileged
public static ClassLoader getClassLoaderAsPrivileged(Class<?> clazz)
Returns the class loader of clazz in an access privileged section.- Parameters:
clazz
-- Returns:
-
getClassLoaderOfClass
public static ClassLoader getClassLoaderOfClass(Class<?> clazz)
Return the class loader which loaded the class passed as argument. Return the system class loader if appropriate.- Parameters:
clazz
-- Returns:
-
loadClass
public static Class<?> loadClass(String clazz) throws ClassNotFoundException
If running under JDK 1.2 load the specified class using theThread
contextClassLoader
if that fails try Class.forname. Under JDK 1.1 only Class.forName is used.- Throws:
ClassNotFoundException
-
-