ch.qos.logback.core.util
Class Loader

java.lang.Object
  extended by ch.qos.logback.core.util.Loader

public class Loader
extends Object

Load resources (or images) from various sources.

Author:
Ceki Gülcü

Field Summary
static String IGNORE_TCL_PROPERTY_NAME
           
 
Constructor Summary
Loader()
           
 
Method Summary
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 List<URL> getResourceOccurenceCount(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 the Thread contextClassLoader if that fails try Class.forname.
static Class loadClass(String clazz, Context context)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

IGNORE_TCL_PROPERTY_NAME

public static final String IGNORE_TCL_PROPERTY_NAME
See Also:
Constant Field Values
Constructor Detail

Loader

public Loader()
Method Detail

getResourceOccurenceCount

public static List<URL> getResourceOccurenceCount(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 for
classLoader - 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 returns null.


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 the Thread contextClassLoader if that fails try Class.forname. Under JDK 1.1 only Class.forName is used.

Throws:
ClassNotFoundException


Copyright © 2005-2012 QOS.ch. All Rights Reserved.