org.apache.xbean.recipe
Class ReflectionUtil

java.lang.Object
  extended by org.apache.xbean.recipe.ReflectionUtil

public final class ReflectionUtil
extends java.lang.Object


Nested Class Summary
static class ReflectionUtil.ConstructorFactory
           
static interface ReflectionUtil.Factory
           
static class ReflectionUtil.StaticFactory
           
 
Method Summary
static java.util.List<java.lang.reflect.Field> findAllFieldsByType(java.lang.Class typeClass, java.lang.Object propertyValue, java.util.Set<Option> options)
           
static java.util.List<java.lang.reflect.Method> findAllSetters(java.lang.Class typeClass, java.lang.String propertyName, java.lang.Object propertyValue, java.util.Set<Option> options)
          Finds all valid setters for the property.
static java.util.List<java.lang.reflect.Method> findAllSettersByType(java.lang.Class typeClass, java.lang.Object propertyValue, java.util.Set<Option> options)
           
static ReflectionUtil.ConstructorFactory findConstructor(java.lang.Class typeClass, java.util.List<? extends java.lang.Class<?>> parameterTypes, java.util.Set<Option> options)
           
static ReflectionUtil.ConstructorFactory findConstructor(java.lang.Class typeClass, java.util.List<java.lang.String> parameterNames, java.util.List<? extends java.lang.Class<?>> parameterTypes, java.util.Set<java.lang.String> availableProperties, java.util.Set<Option> options)
           
static java.lang.reflect.Field findField(java.lang.Class typeClass, java.lang.String propertyName, java.lang.Object propertyValue, java.util.Set<Option> options)
           
static java.lang.reflect.Method findGetter(java.lang.Class typeClass, java.lang.String propertyName, java.util.Set<Option> options)
           
static java.lang.reflect.Method findInstanceFactory(java.lang.Class typeClass, java.lang.String factoryMethod, java.util.Set<Option> options)
           
static java.lang.reflect.Method findSetter(java.lang.Class typeClass, java.lang.String propertyName, java.lang.Object propertyValue, java.util.Set<Option> options)
           
static ReflectionUtil.StaticFactory findStaticFactory(java.lang.Class typeClass, java.lang.String factoryMethod, java.util.List<? extends java.lang.Class<?>> parameterTypes, java.util.Set<Option> options)
           
static ReflectionUtil.StaticFactory findStaticFactory(java.lang.Class typeClass, java.lang.String factoryMethod, java.util.List<java.lang.String> parameterNames, java.util.List<? extends java.lang.Class<?>> parameterTypes, java.util.Set<java.lang.String> allProperties, java.util.Set<Option> options)
           
static java.util.List<java.lang.String> getParameterNames(java.lang.reflect.Constructor<?> constructor)
           
static java.util.List<java.lang.String> getParameterNames(java.lang.reflect.Method method)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

findField

public static java.lang.reflect.Field findField(java.lang.Class typeClass,
                                                java.lang.String propertyName,
                                                java.lang.Object propertyValue,
                                                java.util.Set<Option> options)

findGetter

public static java.lang.reflect.Method findGetter(java.lang.Class typeClass,
                                                  java.lang.String propertyName,
                                                  java.util.Set<Option> options)

findSetter

public static java.lang.reflect.Method findSetter(java.lang.Class typeClass,
                                                  java.lang.String propertyName,
                                                  java.lang.Object propertyValue,
                                                  java.util.Set<Option> options)

findAllSetters

public static java.util.List<java.lang.reflect.Method> findAllSetters(java.lang.Class typeClass,
                                                                      java.lang.String propertyName,
                                                                      java.lang.Object propertyValue,
                                                                      java.util.Set<Option> options)
Finds all valid setters for the property. Due to automatic type conversion there may be more than one possible setter that could be used to set the property. The setters that do not require type converstion will be a the head of the returned list of setters.

Parameters:
typeClass - the class to search for setters
propertyName - the name of the property
propertyValue - the value that must be settable either directly or after conversion
options - controls which setters are considered valid
Returns:
the valid setters; never null or empty

findAllFieldsByType

public static java.util.List<java.lang.reflect.Field> findAllFieldsByType(java.lang.Class typeClass,
                                                                          java.lang.Object propertyValue,
                                                                          java.util.Set<Option> options)

findAllSettersByType

public static java.util.List<java.lang.reflect.Method> findAllSettersByType(java.lang.Class typeClass,
                                                                            java.lang.Object propertyValue,
                                                                            java.util.Set<Option> options)

findConstructor

public static ReflectionUtil.ConstructorFactory findConstructor(java.lang.Class typeClass,
                                                                java.util.List<? extends java.lang.Class<?>> parameterTypes,
                                                                java.util.Set<Option> options)

findConstructor

public static ReflectionUtil.ConstructorFactory findConstructor(java.lang.Class typeClass,
                                                                java.util.List<java.lang.String> parameterNames,
                                                                java.util.List<? extends java.lang.Class<?>> parameterTypes,
                                                                java.util.Set<java.lang.String> availableProperties,
                                                                java.util.Set<Option> options)

findStaticFactory

public static ReflectionUtil.StaticFactory findStaticFactory(java.lang.Class typeClass,
                                                             java.lang.String factoryMethod,
                                                             java.util.List<? extends java.lang.Class<?>> parameterTypes,
                                                             java.util.Set<Option> options)

findStaticFactory

public static ReflectionUtil.StaticFactory findStaticFactory(java.lang.Class typeClass,
                                                             java.lang.String factoryMethod,
                                                             java.util.List<java.lang.String> parameterNames,
                                                             java.util.List<? extends java.lang.Class<?>> parameterTypes,
                                                             java.util.Set<java.lang.String> allProperties,
                                                             java.util.Set<Option> options)

findInstanceFactory

public static java.lang.reflect.Method findInstanceFactory(java.lang.Class typeClass,
                                                           java.lang.String factoryMethod,
                                                           java.util.Set<Option> options)

getParameterNames

public static java.util.List<java.lang.String> getParameterNames(java.lang.reflect.Constructor<?> constructor)

getParameterNames

public static java.util.List<java.lang.String> getParameterNames(java.lang.reflect.Method method)


Copyright © 2005-2011. All Rights Reserved.