Package groovy.inspect
Class Inspector
java.lang.Object
groovy.inspect.Inspector
public class Inspector
extends java.lang.Object
The Inspector provides a unified access to an object's
information that can be determined by introspection.
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Inspector.MemberComparator
static class
Inspector.MemberComparatorWithValue
-
Field Summary
Fields Modifier and Type Field Description static int
CLASS_CLASS_IDX
static int
CLASS_INTERFACE_IDX
static int
CLASS_OTHER_IDX
static int
CLASS_PACKAGE_IDX
static int
CLASS_SUPERCLASS_IDX
static java.lang.String
GROOVY
static java.lang.String
JAVA
static int
MEMBER_DECLARER_IDX
static int
MEMBER_EXCEPTIONS_IDX
static int
MEMBER_MODIFIER_IDX
static int
MEMBER_NAME_IDX
static int
MEMBER_ORIGIN_IDX
static int
MEMBER_PARAMS_IDX
static int
MEMBER_TYPE_IDX
static int
MEMBER_VALUE_IDX
static java.lang.String
NOT_APPLICABLE
protected java.lang.Object
objectUnderInspection
-
Constructor Summary
Constructors Constructor Description Inspector(java.lang.Object objectUnderInspection)
-
Method Summary
Modifier and Type Method Description protected java.lang.String[]
fieldInfo(PropertyValue pv)
protected java.lang.String[]
fieldInfo(java.lang.reflect.Field field)
protected Tuple2<java.lang.Object,java.lang.String[]>
fieldWithInfo(PropertyValue pv)
protected Tuple2<java.lang.Object,java.lang.String[]>
fieldWithInfo(java.lang.reflect.Field field)
java.lang.String[]
getClassProps()
Get the Class Properties of the object under inspection.protected java.lang.Class
getClassUnderInspection()
java.lang.Object[]
getMetaMethods()
Get info about instance and class Methods that are dynamically added through Groovy.java.lang.Object[]
getMethods()
Get info about usual Java instance and class Methods as well as Constructors.java.lang.Object
getObject()
Gets the object being inspected.java.lang.Object[]
getPropertiesWithInfo()
java.lang.Object[]
getPropertyInfo()
Get info about Properties (Java and Groovy alike).java.lang.Object[]
getPublicFields()
Get info about usual Java public fields incl.java.lang.Object[]
getPublicFieldsWithInfo()
boolean
isGroovy()
protected java.lang.String[]
methodInfo(MetaMethod method)
protected java.lang.String[]
methodInfo(java.lang.reflect.Constructor ctor)
protected java.lang.String[]
methodInfo(java.lang.reflect.Method method)
static void
print(java.lang.Object[] memberInfo)
static java.lang.String
shortName(java.lang.Class clazz)
static java.util.Collection
sort(java.util.List<java.lang.Object> memberInfo)
static java.util.Collection
sort(java.util.List<java.lang.Object> memberInfo, java.util.Comparator<java.lang.Object> comparator)
protected java.lang.String[]
withoutNulls(java.lang.String[] toNormalize)
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
objectUnderInspection
protected java.lang.Object objectUnderInspection -
CLASS_PACKAGE_IDX
public static final int CLASS_PACKAGE_IDX- See Also:
- Constant Field Values
-
CLASS_CLASS_IDX
public static final int CLASS_CLASS_IDX- See Also:
- Constant Field Values
-
CLASS_INTERFACE_IDX
public static final int CLASS_INTERFACE_IDX- See Also:
- Constant Field Values
-
CLASS_SUPERCLASS_IDX
public static final int CLASS_SUPERCLASS_IDX- See Also:
- Constant Field Values
-
CLASS_OTHER_IDX
public static final int CLASS_OTHER_IDX- See Also:
- Constant Field Values
-
MEMBER_ORIGIN_IDX
public static final int MEMBER_ORIGIN_IDX- See Also:
- Constant Field Values
-
MEMBER_MODIFIER_IDX
public static final int MEMBER_MODIFIER_IDX- See Also:
- Constant Field Values
-
MEMBER_DECLARER_IDX
public static final int MEMBER_DECLARER_IDX- See Also:
- Constant Field Values
-
MEMBER_TYPE_IDX
public static final int MEMBER_TYPE_IDX- See Also:
- Constant Field Values
-
MEMBER_NAME_IDX
public static final int MEMBER_NAME_IDX- See Also:
- Constant Field Values
-
MEMBER_PARAMS_IDX
public static final int MEMBER_PARAMS_IDX- See Also:
- Constant Field Values
-
MEMBER_VALUE_IDX
public static final int MEMBER_VALUE_IDX- See Also:
- Constant Field Values
-
MEMBER_EXCEPTIONS_IDX
public static final int MEMBER_EXCEPTIONS_IDX- See Also:
- Constant Field Values
-
NOT_APPLICABLE
public static final java.lang.String NOT_APPLICABLE- See Also:
- Constant Field Values
-
GROOVY
public static final java.lang.String GROOVY- See Also:
- Constant Field Values
-
JAVA
public static final java.lang.String JAVA- See Also:
- Constant Field Values
-
-
Constructor Details
-
Inspector
public Inspector(java.lang.Object objectUnderInspection)- Parameters:
objectUnderInspection
- must not be null
-
-
Method Details
-
getClassProps
public java.lang.String[] getClassProps()Get the Class Properties of the object under inspection.- Returns:
- String array to be indexed by the CLASS_xxx_IDX constants
-
isGroovy
public boolean isGroovy() -
getObject
public java.lang.Object getObject()Gets the object being inspected.- Returns:
- the object
-
getMethods
public java.lang.Object[] getMethods()Get info about usual Java instance and class Methods as well as Constructors.- Returns:
- Array of StringArrays that can be indexed with the MEMBER_xxx_IDX constants
-
getMetaMethods
public java.lang.Object[] getMetaMethods()Get info about instance and class Methods that are dynamically added through Groovy.- Returns:
- Array of StringArrays that can be indexed with the MEMBER_xxx_IDX constants
-
getPublicFields
public java.lang.Object[] getPublicFields()Get info about usual Java public fields incl. constants.- Returns:
- Array of StringArrays that can be indexed with the MEMBER_xxx_IDX constants
-
getPublicFieldsWithInfo
public java.lang.Object[] getPublicFieldsWithInfo() -
getPropertyInfo
public java.lang.Object[] getPropertyInfo()Get info about Properties (Java and Groovy alike).- Returns:
- Array of StringArrays that can be indexed with the MEMBER_xxx_IDX constants
-
fieldInfo
protected java.lang.String[] fieldInfo(java.lang.reflect.Field field) -
fieldWithInfo
protected Tuple2<java.lang.Object,java.lang.String[]> fieldWithInfo(java.lang.reflect.Field field) -
fieldInfo
-
fieldWithInfo
-
getPropertiesWithInfo
public java.lang.Object[] getPropertiesWithInfo() -
getClassUnderInspection
protected java.lang.Class getClassUnderInspection() -
shortName
public static java.lang.String shortName(java.lang.Class clazz) -
methodInfo
protected java.lang.String[] methodInfo(java.lang.reflect.Method method) -
methodInfo
protected java.lang.String[] methodInfo(java.lang.reflect.Constructor ctor) -
methodInfo
-
withoutNulls
protected java.lang.String[] withoutNulls(java.lang.String[] toNormalize) -
print
public static void print(java.lang.Object[] memberInfo) -
sort
public static java.util.Collection sort(java.util.List<java.lang.Object> memberInfo) -
sort
public static java.util.Collection sort(java.util.List<java.lang.Object> memberInfo, java.util.Comparator<java.lang.Object> comparator)
-