org.hibernate.annotations.common.util
Class ReflectHelper

java.lang.Object
  extended by org.hibernate.annotations.common.util.ReflectHelper

public final class ReflectHelper
extends java.lang.Object

Complete duplication of org.hibernate.util.ReflectHelper.

Author:
Emmanuel Bernard

Field Summary
static java.lang.Class[] NO_PARAM_SIGNATURE
           
static java.lang.Object[] NO_PARAMS
           
static java.lang.Class[] SINGLE_OBJECT_PARAM_SIGNATURE
           
 
Method Summary
static java.lang.Class classForName(java.lang.String name)
          Perform resolution of a class name.
static java.lang.Class classForName(java.lang.String name, java.lang.Class caller)
          Perform resolution of a class name.
static java.lang.reflect.Method extractEqualsMethod(java.lang.Class clazz)
          Encapsulation of getting hold of a class's equals method.
static java.lang.reflect.Method extractHashCodeMethod(java.lang.Class clazz)
          Encapsulation of getting hold of a class's hashCode method.
static java.lang.Object getConstantValue(java.lang.String name)
          Resolve a constant to its actual value.
static java.lang.reflect.Method getMethod(java.lang.Class clazz, java.lang.reflect.Method method)
           
static boolean isAbstractClass(java.lang.Class clazz)
          Determine if the given class is declared abstract.
static boolean isFinalClass(java.lang.Class clazz)
          Determine is the given class is declared final.
static boolean isPublic(java.lang.Class clazz, java.lang.reflect.Member member)
          Is this member publicly accessible.
static boolean overridesEquals(java.lang.Class clazz)
          Determine if the given class defines an Object.equals(java.lang.Object) override.
static boolean overridesHashCode(java.lang.Class clazz)
          Determine if the given class defines a Object.hashCode() override.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NO_PARAM_SIGNATURE

public static final java.lang.Class[] NO_PARAM_SIGNATURE

NO_PARAMS

public static final java.lang.Object[] NO_PARAMS

SINGLE_OBJECT_PARAM_SIGNATURE

public static final java.lang.Class[] SINGLE_OBJECT_PARAM_SIGNATURE
Method Detail

extractEqualsMethod

public static java.lang.reflect.Method extractEqualsMethod(java.lang.Class clazz)
                                                    throws java.lang.NoSuchMethodException
Encapsulation of getting hold of a class's equals method.

Parameters:
clazz - The class from which to extract the equals method.
Returns:
The equals method reference
Throws:
java.lang.NoSuchMethodException - Should indicate an attempt to extract equals method from interface.

extractHashCodeMethod

public static java.lang.reflect.Method extractHashCodeMethod(java.lang.Class clazz)
                                                      throws java.lang.NoSuchMethodException
Encapsulation of getting hold of a class's hashCode method.

Parameters:
clazz - The class from which to extract the hashCode method.
Returns:
The hashCode method reference
Throws:
java.lang.NoSuchMethodException - Should indicate an attempt to extract hashCode method from interface.

overridesEquals

public static boolean overridesEquals(java.lang.Class clazz)
Determine if the given class defines an Object.equals(java.lang.Object) override.

Parameters:
clazz - The class to check
Returns:
True if clazz defines an equals override.

overridesHashCode

public static boolean overridesHashCode(java.lang.Class clazz)
Determine if the given class defines a Object.hashCode() override.

Parameters:
clazz - The class to check
Returns:
True if clazz defines an hashCode override.

classForName

public static java.lang.Class classForName(java.lang.String name,
                                           java.lang.Class caller)
                                    throws java.lang.ClassNotFoundException
Perform resolution of a class name.

Here we first check the context classloader, if one, before delegating to Class.forName(String, boolean, ClassLoader) using the caller's classloader

Parameters:
name - The class name
caller - The class from which this call originated (in order to access that class's loader).
Returns:
The class reference.
Throws:
java.lang.ClassNotFoundException - From Class.forName(String, boolean, ClassLoader).

classForName

public static java.lang.Class classForName(java.lang.String name)
                                    throws java.lang.ClassNotFoundException
Perform resolution of a class name.

Same as classForName(String, Class) except that here we delegate to Class.forName(String) if the context classloader lookup is unsuccessful.

Parameters:
name - The class name
Returns:
The class reference.
Throws:
java.lang.ClassNotFoundException - From Class.forName(String).

isPublic

public static boolean isPublic(java.lang.Class clazz,
                               java.lang.reflect.Member member)
Is this member publicly accessible.

Parameters:
clazz - The class which defines the member
member - The memeber.
Returns:
True if the member is publicly accessible, false otherwise.

getConstantValue

public static java.lang.Object getConstantValue(java.lang.String name)
Resolve a constant to its actual value.

Parameters:
name - The name
Returns:
The value

isAbstractClass

public static boolean isAbstractClass(java.lang.Class clazz)
Determine if the given class is declared abstract.

Parameters:
clazz - The class to check.
Returns:
True if the class is abstract, false otherwise.

isFinalClass

public static boolean isFinalClass(java.lang.Class clazz)
Determine is the given class is declared final.

Parameters:
clazz - The class to check.
Returns:
True if the class is final, flase otherwise.

getMethod

public static java.lang.reflect.Method getMethod(java.lang.Class clazz,
                                                 java.lang.reflect.Method method)


Copyright © 2005-2009 Hibernate.org. All Rights Reserved.