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.
  Author:
    Dierk Koenig

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `Inspector.MemberComparator`

  - ### Field Summary

    Fields
    Modifier and Type | Field and 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 and Description
    `Inspector(java.lang.Object objectUnderInspection)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected java.lang.String[]` | `fieldInfo(java.lang.reflect.Field field)`
    `protected java.lang.String[]` | `fieldInfo(PropertyValue pv)`
    `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[]` | `getPropertyInfo()` Get info about Properties (Java and Groovy alike).
    `java.lang.Object[]` | `getPublicFields()` Get info about usual Java public fields incl.
    `boolean` | `isGroovy()`
    `protected java.lang.String[]` | `methodInfo(java.lang.reflect.Constructor ctor)`
    `protected java.lang.String[]` | `methodInfo(MetaMethod method)`
    `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)`
    `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 Detail

    - #### 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 Detail

    - #### Inspector

          public Inspector(java.lang.Object objectUnderInspection)

      Parameters:
        `objectUnderInspection` - must not be null

  - ### Method Detail

    - #### 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

    - #### 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)

    - #### fieldInfo

          protected java.lang.String[] fieldInfo(PropertyValue pv)

    - #### 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

          protected java.lang.String[] methodInfo(MetaMethod method)

    - #### 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)