org.nuiton.util
Class ReflectUtil

java.lang.Object
  extended by org.nuiton.util.ReflectUtil

public class ReflectUtil
extends Object

Des méthodes utiles d'introspection

Author:
tony

Constructor Summary
ReflectUtil()
           
 
Method Summary
static
<T> T
getConstant(Class<?> klass, String fieldName)
           
static
<T> List<T>
getConstants(Class<?> klass, Class<T> searchingClass)
          Recherche dans une classe donnée klazz, les constantes d'un certain type searchingClass et les retourne.
static
<T extends Enum<T>>
Class<T>
getEnumClass(Class<?> type)
          Convertit une classe non typée, en une classe d'enum
static boolean isConstantField(Field field)
          Pour déterminer si un champ d'une classe est une constante (modifiers sont static, final et public)
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ReflectUtil

public ReflectUtil()
Method Detail

isConstantField

public static boolean isConstantField(Field field)
Pour déterminer si un champ d'une classe est une constante (modifiers sont static, final et public)

Parameters:
field - le champs à tester
Returns:
true si les modifiers sont final, static et public

getConstants

public static <T> List<T> getConstants(Class<?> klass,
                                       Class<T> searchingClass)
Recherche dans une classe donnée klazz, les constantes d'un certain type searchingClass et les retourne.

L'algorithme parcourt aussi les superclasses.

Type Parameters:
T - enumeration's type
Parameters:
klass - la classe contenant les constantes
searchingClass - le type des champs constants à récupérer
Returns:
la liste des champs du type requis dans
Throws:
RuntimeException - si problème lors de la récupération

getConstant

public static <T> T getConstant(Class<?> klass,
                                String fieldName)
Type Parameters:
T - enumeration's type
Parameters:
klass - the required class
fieldName - the required constant name
Returns:
the constant value

getEnumClass

public static <T extends Enum<T>> Class<T> getEnumClass(Class<?> type)
                                             throws IllegalArgumentException
Convertit une classe non typée, en une classe d'enum

Type Parameters:
T - enumeration's type
Parameters:
type - la classe a typer
Returns:
la classe typee
Throws:
IllegalArgumentException - si le type est null ou non une extension de la classe Enum.


Copyright © 2004-2010 CodeLutin. All Rights Reserved.