org.apache.velocity.util
Class ClassUtils

java.lang.Object
  extended by org.apache.velocity.util.ClassUtils

public class ClassUtils
extends Object

Simple utility functions for manipulating classes and resources from the classloader.

Since:
1.5
Version:
$Id: ClassUtils.java 685685 2008-08-13 21:43:27Z nbubna $
Author:
Will Glass-Husain

Method Summary
static Class getClass(String clazz)
          Return the specified class.
static Object getNewInstance(String clazz)
          Return a new instance of the given class.
static InputStream getResourceAsStream(Class claz, String name)
          Finds a resource with the given name.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getClass

public static Class getClass(String clazz)
                      throws ClassNotFoundException
Return the specified class. Checks the ThreadContext classloader first, then uses the System classloader. Should replace all calls to Class.forName( claz ) (which only calls the System class loader) when the class might be in a different classloader (e.g. in a webapp).

Parameters:
clazz - the name of the class to instantiate
Returns:
the requested Class object
Throws:
ClassNotFoundException

getNewInstance

public static Object getNewInstance(String clazz)
                             throws ClassNotFoundException,
                                    IllegalAccessException,
                                    InstantiationException
Return a new instance of the given class. Checks the ThreadContext classloader first, then uses the System classloader. Should replace all calls to Class.forName( claz ).newInstance() (which only calls the System class loader) when the class might be in a different classloader (e.g. in a webapp).

Parameters:
clazz - the name of the class to instantiate
Returns:
an instance of the specified class
Throws:
ClassNotFoundException
IllegalAccessException
InstantiationException

getResourceAsStream

public static InputStream getResourceAsStream(Class claz,
                                              String name)
Finds a resource with the given name. Checks the Thread Context classloader, then uses the System classloader. Should replace all calls to Class.getResourceAsString when the resource might come from a different classloader. (e.g. a webapp).

Parameters:
claz - Class to use when getting the System classloader (used if no Thread Context classloader available or fails to get resource).
name - name of the resource
Returns:
InputStream for the resource.


Copyright © 2000-2008 The Apache Software Foundation. All Rights Reserved.