public class ClassReflector
extends java.lang.Object
| Constructor and Description |
|---|
ClassReflector() |
| Modifier and Type | Method and Description |
|---|---|
static void |
clearCache() |
static java.util.Collection<java.lang.reflect.Method> |
getAccessibleGetters(java.lang.Class<?> clazz) |
static int |
getCacheSize() |
static <T> java.lang.Class<T> |
getClass(java.lang.Class<T> clazz,
java.lang.String className) |
static java.lang.reflect.Method |
getCompatibleMethod(java.lang.Class<?> clazz,
java.lang.String methodName,
java.lang.Class<?>... paramTypes) |
static <T> java.lang.reflect.Constructor<T> |
getConstructor(java.lang.Class<T> clazz,
java.lang.Class<?>... parameterTypes) |
static <T> java.lang.reflect.Constructor<T> |
getConstructor(java.lang.Class<T> clazz,
java.lang.String className,
java.lang.Class<?>... parameterTypes) |
static java.lang.reflect.Method[] |
getDeclaredGetters(java.lang.Class<?> clazz) |
static java.lang.reflect.Method[] |
getDeclaredSetters(java.lang.Class<?> clazz) |
static java.lang.String |
getFieldName(java.lang.String methodName) |
static java.lang.reflect.Method |
getFirstMethodWithName(java.lang.Class<?> clazz,
java.lang.String methodName) |
static java.lang.String |
getGetterName(java.lang.String fieldName) |
static java.lang.String |
getGetterName(java.lang.String fieldName,
java.lang.Class<?> fieldType) |
static java.lang.reflect.Type |
getGetterReturnType(java.lang.Class<?> classConnector,
java.lang.String getterName) |
static <T> T |
getInstance(java.lang.reflect.Constructor<T> constructor,
java.lang.Object... parameters) |
static java.lang.reflect.Method |
getMethod(java.lang.Class<?> clazz,
java.lang.String methodName,
java.lang.Class<?>... parameterTypes) |
static java.lang.reflect.Method |
getMethodByName(java.lang.Class<?> clazz,
java.lang.String methodName) |
static <T> T |
getObject(java.lang.Class<T> clazz,
java.lang.String className) |
static <T> T |
invokeGetter(java.lang.Object entity,
java.lang.String getterName) |
static java.lang.Object |
invokeMethod(java.lang.Object entity,
java.lang.String methodName,
java.lang.Class<?>[] parameterType,
java.lang.Object[] parameterValue) |
static java.lang.Object |
invokeMethod(java.lang.Object entity,
java.lang.String methodName,
java.lang.Class<?> parameterType,
java.lang.Object parameterValue) |
static java.lang.Object |
invokeMethodByName(java.lang.Object entity,
java.lang.String methodName,
java.lang.Object... parameterValues) |
static void |
invokeSetter(java.lang.Object entity,
java.lang.String setterName,
java.lang.Class<?> parameterType,
java.lang.Object parameterValue) |
static boolean |
isAGetterMethod(java.lang.reflect.Method method) |
static boolean |
isASetterMethod(java.lang.reflect.Method method) |
static void |
setField(java.lang.Object object,
java.lang.String fieldName,
java.lang.Object parameterValue)
call a setter by reflection
support pointed notation like pojo.child.name
|
public static java.util.Collection<java.lang.reflect.Method> getAccessibleGetters(java.lang.Class<?> clazz)
public static <T> java.lang.Class<T> getClass(java.lang.Class<T> clazz,
java.lang.String className)
throws SReflectException
SReflectExceptionpublic static <T> T getObject(java.lang.Class<T> clazz,
java.lang.String className)
throws SReflectException
SReflectExceptionpublic static <T> java.lang.reflect.Constructor<T> getConstructor(java.lang.Class<T> clazz,
java.lang.Class<?>... parameterTypes)
throws SReflectException
SReflectExceptionpublic static <T> java.lang.reflect.Constructor<T> getConstructor(java.lang.Class<T> clazz,
java.lang.String className,
java.lang.Class<?>... parameterTypes)
throws SReflectException
SReflectExceptionpublic static <T> T getInstance(java.lang.reflect.Constructor<T> constructor,
java.lang.Object... parameters)
throws SReflectException
SReflectExceptionpublic static <T> T invokeGetter(java.lang.Object entity,
java.lang.String getterName)
throws SReflectException
SReflectExceptionpublic static void invokeSetter(java.lang.Object entity,
java.lang.String setterName,
java.lang.Class<?> parameterType,
java.lang.Object parameterValue)
throws SReflectException
SReflectExceptionpublic static java.lang.reflect.Method getMethod(java.lang.Class<?> clazz,
java.lang.String methodName,
java.lang.Class<?>... parameterTypes)
throws java.lang.NoSuchMethodException
java.lang.NoSuchMethodExceptionpublic static java.lang.reflect.Method getMethodByName(java.lang.Class<?> clazz,
java.lang.String methodName)
public static java.lang.reflect.Method getFirstMethodWithName(java.lang.Class<?> clazz,
java.lang.String methodName)
public static java.lang.Object invokeMethodByName(java.lang.Object entity,
java.lang.String methodName,
java.lang.Object... parameterValues)
throws SReflectException
SReflectExceptionpublic static java.lang.Object invokeMethod(java.lang.Object entity,
java.lang.String methodName,
java.lang.Class<?> parameterType,
java.lang.Object parameterValue)
throws java.lang.IllegalArgumentException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException,
java.lang.NoSuchMethodException
java.lang.IllegalArgumentExceptionjava.lang.IllegalAccessExceptionjava.lang.reflect.InvocationTargetExceptionjava.lang.NoSuchMethodExceptionpublic static java.lang.Object invokeMethod(java.lang.Object entity,
java.lang.String methodName,
java.lang.Class<?>[] parameterType,
java.lang.Object[] parameterValue)
throws java.lang.IllegalArgumentException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException,
java.lang.NoSuchMethodException
java.lang.IllegalArgumentExceptionjava.lang.IllegalAccessExceptionjava.lang.reflect.InvocationTargetExceptionjava.lang.NoSuchMethodExceptionpublic static java.lang.reflect.Method getCompatibleMethod(java.lang.Class<?> clazz,
java.lang.String methodName,
java.lang.Class<?>... paramTypes)
throws SReflectException
SReflectExceptionpublic static java.lang.reflect.Type getGetterReturnType(java.lang.Class<?> classConnector,
java.lang.String getterName)
throws SReflectException
SReflectExceptionpublic static java.lang.reflect.Method[] getDeclaredSetters(java.lang.Class<?> clazz)
public static java.lang.reflect.Method[] getDeclaredGetters(java.lang.Class<?> clazz)
public static boolean isAGetterMethod(java.lang.reflect.Method method)
public static boolean isASetterMethod(java.lang.reflect.Method method)
public static java.lang.String getGetterName(java.lang.String fieldName)
public static java.lang.String getGetterName(java.lang.String fieldName,
java.lang.Class<?> fieldType)
public static java.lang.String getFieldName(java.lang.String methodName)
public static void setField(java.lang.Object object,
java.lang.String fieldName,
java.lang.Object parameterValue)
throws SReflectException
object - object on with to call the setterfieldName - parameterValue - SReflectExceptionpublic static void clearCache()
public static int getCacheSize()