com.vaadin.tools
Class ReflectTools

java.lang.Object
  extended by com.vaadin.tools.ReflectTools

public class ReflectTools
extends Object

An util class with helpers for reflection operations. Used internally by Vaadin and should not be used by application developers. Subject to change at any time.

Since:
6.2

Constructor Summary
ReflectTools()
           
 
Method Summary
static Method findMethod(Class<?> cls, String methodName, Class<?>... parameterTypes)
          Locates the method in the given class.
static Object getJavaFieldValue(Object object, Field field)
          Returns the value of the java field.
static void setJavaFieldValue(Object object, Field field, Object value)
          Sets the value of a java field.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ReflectTools

public ReflectTools()
Method Detail

findMethod

public static Method findMethod(Class<?> cls,
                                String methodName,
                                Class<?>... parameterTypes)
                         throws ExceptionInInitializerError
Locates the method in the given class. Returns null if the method is not found. Throws an ExceptionInInitializerError if there is a problem locating the method as this is mainly called from static blocks.

Parameters:
cls - Class that contains the method
methodName - The name of the method
parameterTypes - The parameter types for the method.
Returns:
A reference to the method
Throws:
ExceptionInInitializerError - Wraps any exception in an ExceptionInInitializerError so this method can be called from a static initializer.

getJavaFieldValue

public static Object getJavaFieldValue(Object object,
                                       Field field)
                                throws IllegalArgumentException,
                                       IllegalAccessException,
                                       InvocationTargetException
Returns the value of the java field.

Uses getter if present, otherwise tries to access even private fields directly.

Parameters:
object - The object containing the field
field - The field we want to get the value for
Returns:
The value of the field in the object
Throws:
InvocationTargetException - If the value could not be retrieved
IllegalAccessException - If the value could not be retrieved
IllegalArgumentException - If the value could not be retrieved

setJavaFieldValue

public static void setJavaFieldValue(Object object,
                                     Field field,
                                     Object value)
                              throws IllegalAccessException,
                                     IllegalArgumentException,
                                     InvocationTargetException
Sets the value of a java field.

Uses setter if present, otherwise tries to access even private fields directly.

Parameters:
object - The object containing the field
field - The field we want to set the value for
value - The value to set
Throws:
IllegalAccessException - If the value could not be assigned to the field
IllegalArgumentException - If the value could not be assigned to the field
InvocationTargetException - If the value could not be assigned to the field


Copyright © 2000-2011 Vaadin Ltd. All Rights Reserved.