Class ClassLoaderUtils

java.lang.Object
org.globus.util.ClassLoaderUtils

public class ClassLoaderUtils extends Object
Various classloader utils. Extends the standard ways of loading classes or resources with a fallback mechanism to the thread context classloader.
  • Constructor Details

    • ClassLoaderUtils

      public ClassLoaderUtils()
  • Method Details

    • getClassContext

      public static Class[] getClassContext()
      Returns the current execution stack as an array of classes.

      The length of the array is the number of methods on the execution stack. The element at index 0 is the class of the currently executing method, the element at index 1 is the class of that method's caller, and so on.

      Returns:
      the execution stack.
    • getClassContextAt

      public static Class getClassContextAt(int i)
      Returns a class at specified depth of the current execution stack.
      Returns:
      the class at the specified depth of the current execution stack. Migth return null if depth is out of range.
    • getClassLoaderContextAt

      public static ClassLoader getClassLoaderContextAt(int i)
      Returns a classloader at specified depth of the current execution stack.
      Returns:
      the classloader at the specified depth of the current execution stack. Migth return null if depth is out of range.
    • getResourceAsStream

      public static InputStream getResourceAsStream(String name)
      Gets an InputStream to a resource of a specified name. First, the caller's classloader is used to load the resource and if it fails the thread's context classloader is used to load the resource.
    • forName

      public static Class forName(String name) throws ClassNotFoundException
      Loads a specified class. First, the caller's classloader is used to load the class and if it fails the thread's context classloader is used to load the specified class.
      Throws:
      ClassNotFoundException
    • loadClass

      public static Class<?> loadClass(String className, Class<?> callingClass) throws ClassNotFoundException
      Throws:
      ClassNotFoundException