public class ReflectionEngine
extends java.lang.Object
The reflection engine is responsible for accessing the classes, the instances and members in a JVM.
Modifier and Type | Field and Description |
---|---|
static int |
cacheSize |
static java.lang.Object |
RETURN_VOID |
Constructor and Description |
---|
ReflectionEngine() |
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
createArray(java.lang.String fqn,
int[] dimensions) |
java.lang.Class<?> |
getClass(java.lang.Class<?> clazz,
java.lang.String name) |
java.lang.Class<?>[] |
getClassParameters(java.lang.Object[] parameters) |
MethodInvoker |
getConstructor(java.lang.Class<?> clazz,
java.lang.Class<?>[] parameters) |
MethodInvoker |
getConstructor(java.lang.String classFQN,
java.lang.Object[] parameters) |
java.lang.reflect.Field |
getField(java.lang.Class<?> clazz,
java.lang.String name) |
java.lang.reflect.Field |
getField(java.lang.Object obj,
java.lang.String name) |
java.lang.reflect.Field |
getField(java.lang.String classFQN,
java.lang.String name) |
java.lang.Object |
getFieldValue(java.lang.Object obj,
java.lang.reflect.Field field)
Wrapper around Field.get
|
java.lang.reflect.Method |
getMethod(java.lang.Class<?> clazz,
java.lang.String name) |
MethodInvoker |
getMethod(java.lang.Class<?> clazz,
java.lang.String name,
java.lang.Class<?>[] parameters) |
MethodInvoker |
getMethod(java.lang.Object object,
java.lang.String name,
java.lang.Object[] parameters) |
MethodInvoker |
getMethod(java.lang.String classFQN,
java.lang.String name,
java.lang.Object[] parameters) |
java.lang.String[] |
getPublicFieldNames(java.lang.Object obj)
Retrieve the names of all the public fields in the obj
|
java.lang.String[] |
getPublicMethodNames(java.lang.Object obj)
Retrieve the names of all the public methods in the obj
|
java.lang.String[] |
getPublicStaticClassNames(java.lang.Class<?> clazz)
Retrieve the names of all the public static classes in the clazz
|
java.lang.String[] |
getPublicStaticFieldNames(java.lang.Class<?> clazz)
Retrieve the names of all the public static fields in the clazz
|
java.lang.String[] |
getPublicStaticMethodNames(java.lang.Class<?> clazz)
Retrieve the names of all the public static methods in the clazz
|
java.lang.String[] |
getPublicStaticNames(java.lang.Class<?> clazz)
Retrieve the names of all the public static fields, methods and
classes in the clazz
|
java.lang.Object |
invoke(java.lang.Object object,
MethodInvoker invoker,
java.lang.Object[] parameters) |
void |
setFieldValue(java.lang.Object obj,
java.lang.reflect.Field field,
java.lang.Object value)
Wrapper around Field.set
|
public static final int cacheSize
public static final java.lang.Object RETURN_VOID
public java.lang.Object createArray(java.lang.String fqn, int[] dimensions)
public java.lang.Class<?> getClass(java.lang.Class<?> clazz, java.lang.String name)
public java.lang.Class<?>[] getClassParameters(java.lang.Object[] parameters)
public MethodInvoker getConstructor(java.lang.Class<?> clazz, java.lang.Class<?>[] parameters)
public MethodInvoker getConstructor(java.lang.String classFQN, java.lang.Object[] parameters)
public java.lang.reflect.Field getField(java.lang.Class<?> clazz, java.lang.String name)
clazz
- name
- public java.lang.reflect.Field getField(java.lang.Object obj, java.lang.String name)
obj
- name
- public java.lang.reflect.Field getField(java.lang.String classFQN, java.lang.String name)
public java.lang.Object getFieldValue(java.lang.Object obj, java.lang.reflect.Field field)
Wrapper around Field.get
obj
- field
- public java.lang.reflect.Method getMethod(java.lang.Class<?> clazz, java.lang.String name)
public MethodInvoker getMethod(java.lang.Class<?> clazz, java.lang.String name, java.lang.Class<?>[] parameters)
public MethodInvoker getMethod(java.lang.Object object, java.lang.String name, java.lang.Object[] parameters)
public MethodInvoker getMethod(java.lang.String classFQN, java.lang.String name, java.lang.Object[] parameters)
public java.lang.Object invoke(java.lang.Object object, MethodInvoker invoker, java.lang.Object[] parameters)
public void setFieldValue(java.lang.Object obj, java.lang.reflect.Field field, java.lang.Object value)
Wrapper around Field.set
obj
- field
- value
- public java.lang.String[] getPublicMethodNames(java.lang.Object obj)
obj
- the object to inspectpublic java.lang.String[] getPublicFieldNames(java.lang.Object obj)
obj
- the object to inspectpublic java.lang.String[] getPublicStaticFieldNames(java.lang.Class<?> clazz)
clazz
- the object to inspectpublic java.lang.String[] getPublicStaticMethodNames(java.lang.Class<?> clazz)
clazz
- the object to inspectpublic java.lang.String[] getPublicStaticClassNames(java.lang.Class<?> clazz)
clazz
- the object to inspectpublic java.lang.String[] getPublicStaticNames(java.lang.Class<?> clazz)
clazz
- the object to inspect