Class ObjectAccess


  • public class ObjectAccess
    extends java.lang.Object
    Encapsulates logic for Class/instance access using reflection. Only throws runtime exceptions. Has logic for: o instantiation. o invoking methods given a String method name and optionally method arguments. o checking annotation presence. o getting input and output types for properties and methods. o object string representation.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Class<?> forName​(java.lang.String className)  
      java.util.List<java.lang.Class<?>> getGenericReturnTypes​(java.lang.Class<?> clazz, java.lang.String methodName, int numParams)  
      static ObjectAccess getInstance()  
      java.util.List<java.lang.Class<?>> getMethodParamTypes​(java.lang.Class<?> clazz, java.lang.String methodName, int numParams)  
      java.lang.Class<?> getMethodReturnType​(java.lang.Class<?> clazz, java.lang.String methodName, int numParams)  
      java.util.Map<java.lang.String,​java.lang.Class<?>> getProperties​(java.lang.Class<?> clazz)  
      <T> T getProperty​(java.lang.Object o, java.lang.String propertyName)  
      java.util.List<java.lang.String> getPropertyNames​(java.lang.Class<?> clazz)  
      java.lang.Class<?> getPropertyType​(java.lang.Class<?> clazz, java.lang.String propertyName)  
      <T extends java.lang.annotation.Annotation>
      boolean
      hasAnnotation​(java.lang.Class<T> annotation, java.lang.Object o, java.lang.String methodName)  
      <T extends java.lang.annotation.Annotation>
      boolean
      hasAnnotation​(java.lang.Class<T> annotation, java.lang.Object o, java.lang.String methodName, int numParams)  
      <T extends java.lang.annotation.Annotation>
      boolean
      hasAnnotation​(java.lang.Class<T> annotation, java.lang.Object o, java.lang.String methodName, java.lang.Class<?>... paramTypes)  
      boolean hasMethod​(java.lang.Class<?> clazz, java.lang.String methodName, int numParams)  
      boolean hasProperty​(java.lang.Class<?> clazz, java.lang.String propertyName)  
      <T> T invoke​(java.lang.Object o, java.lang.String methodName)  
      <T> T invoke​(java.lang.Object o, java.lang.String methodName, java.lang.Object... params)  
      java.lang.Object newInstance​(java.lang.Class<?> clazz)  
      java.lang.String objectToString​(java.lang.Object o)  
      java.lang.String objectToString​(java.lang.Object o, boolean excludeContainers)  
      boolean propertyIsNull​(java.lang.Object o, java.lang.String propertyName)  
      void setProperty​(java.lang.Object o, java.lang.String propertyName, java.lang.Object propertyValue)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • newInstance

        public java.lang.Object newInstance​(java.lang.Class<?> clazz)
      • forName

        public java.lang.Class<?> forName​(java.lang.String className)
      • invoke

        public <T> T invoke​(java.lang.Object o,
                            java.lang.String methodName)
      • invoke

        public <T> T invoke​(java.lang.Object o,
                            java.lang.String methodName,
                            java.lang.Object... params)
      • getProperty

        public <T> T getProperty​(java.lang.Object o,
                                 java.lang.String propertyName)
      • setProperty

        public void setProperty​(java.lang.Object o,
                                java.lang.String propertyName,
                                java.lang.Object propertyValue)
      • getPropertyType

        public java.lang.Class<?> getPropertyType​(java.lang.Class<?> clazz,
                                                  java.lang.String propertyName)
      • propertyIsNull

        public boolean propertyIsNull​(java.lang.Object o,
                                      java.lang.String propertyName)
      • getMethodParamTypes

        public java.util.List<java.lang.Class<?>> getMethodParamTypes​(java.lang.Class<?> clazz,
                                                                      java.lang.String methodName,
                                                                      int numParams)
      • getMethodReturnType

        public java.lang.Class<?> getMethodReturnType​(java.lang.Class<?> clazz,
                                                      java.lang.String methodName,
                                                      int numParams)
      • getGenericReturnTypes

        public java.util.List<java.lang.Class<?>> getGenericReturnTypes​(java.lang.Class<?> clazz,
                                                                        java.lang.String methodName,
                                                                        int numParams)
      • hasAnnotation

        public <T extends java.lang.annotation.Annotation> boolean hasAnnotation​(java.lang.Class<T> annotation,
                                                                                 java.lang.Object o,
                                                                                 java.lang.String methodName)
      • hasAnnotation

        public <T extends java.lang.annotation.Annotation> boolean hasAnnotation​(java.lang.Class<T> annotation,
                                                                                 java.lang.Object o,
                                                                                 java.lang.String methodName,
                                                                                 java.lang.Class<?>... paramTypes)
      • hasAnnotation

        public <T extends java.lang.annotation.Annotation> boolean hasAnnotation​(java.lang.Class<T> annotation,
                                                                                 java.lang.Object o,
                                                                                 java.lang.String methodName,
                                                                                 int numParams)
      • hasProperty

        public boolean hasProperty​(java.lang.Class<?> clazz,
                                   java.lang.String propertyName)
      • hasMethod

        public boolean hasMethod​(java.lang.Class<?> clazz,
                                 java.lang.String methodName,
                                 int numParams)
      • getPropertyNames

        public java.util.List<java.lang.String> getPropertyNames​(java.lang.Class<?> clazz)
      • getProperties

        public java.util.Map<java.lang.String,​java.lang.Class<?>> getProperties​(java.lang.Class<?> clazz)
      • objectToString

        public java.lang.String objectToString​(java.lang.Object o)
      • objectToString

        public java.lang.String objectToString​(java.lang.Object o,
                                               boolean excludeContainers)