org.apache.commons.discovery.tools
Class ClassUtils

java.lang.Object
  |
  +--org.apache.commons.discovery.tools.ClassUtils

public class ClassUtils
extends java.lang.Object

Author:
Richard A. Sitze

Constructor Summary
ClassUtils()
           
 
Method Summary
static java.lang.reflect.Method findPublicStaticMethod(java.lang.Class clazz, java.lang.Class returnType, java.lang.String methodName, java.lang.Class[] paramTypes)
           
static java.lang.String getPackageName(java.lang.Class clazz)
          Get package name.
static java.lang.Object newInstance(java.lang.Class impl, java.lang.Class[] paramClasses, java.lang.Object[] params)
          Instantiate a new
static void setLog(org.apache.commons.logging.Log _log)
           
static void verifyAncestory(java.lang.Class spi, java.lang.Class impl)
          Throws exception if impl does not implement or extend the SPI.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClassUtils

public ClassUtils()
Method Detail

setLog

public static void setLog(org.apache.commons.logging.Log _log)

getPackageName

public static java.lang.String getPackageName(java.lang.Class clazz)
Get package name. Not all class loaders 'keep' package information, in which case Class.getPackage() returns null. This means that calling Class.getPackage().getName() is unreliable at best.

findPublicStaticMethod

public static java.lang.reflect.Method findPublicStaticMethod(java.lang.Class clazz,
                                                              java.lang.Class returnType,
                                                              java.lang.String methodName,
                                                              java.lang.Class[] paramTypes)
Returns:
Method 'public static returnType methodName(paramTypes)', if found to be directly implemented by clazz.

newInstance

public static java.lang.Object newInstance(java.lang.Class impl,
                                           java.lang.Class[] paramClasses,
                                           java.lang.Object[] params)
                                    throws DiscoveryException,
                                           java.lang.InstantiationException,
                                           java.lang.IllegalAccessException,
                                           java.lang.NoSuchMethodException,
                                           java.lang.reflect.InvocationTargetException
Instantiate a new

verifyAncestory

public static void verifyAncestory(java.lang.Class spi,
                                   java.lang.Class impl)
                            throws DiscoveryException
Throws exception if impl does not implement or extend the SPI.


Copyright (c) 2002 - Apache Software Foundation