Class ReflectionUtil

java.lang.Object
org.apache.cxf.common.util.ReflectionUtil

public final class ReflectionUtil extends Object
  • Method Details

    • accessDeclaredField

      public static <T> T accessDeclaredField(Field f, Object o, Class<T> responseClass)
    • accessDeclaredField

      public static <T> T accessDeclaredField(String fieldName, Class<?> cls, Object o, Class<T> responseClass)
    • getDeclaredField

      public static Field getDeclaredField(Class<?> cls, String name)
    • getDeclaredConstructor

      public static <T> Constructor<T> getDeclaredConstructor(Class<T> cls, Class<?>... args)
    • getConstructor

      public static <T> Constructor<T> getConstructor(Class<T> cls, Class<?>... args)
    • getDeclaredConstructors

      public static <T> Constructor<T>[] getDeclaredConstructors(Class<T> cls)
    • getDeclaredMethods

      public static Method[] getDeclaredMethods(Class<?> cls)
    • getDeclaredMethod

      public static Method getDeclaredMethod(Class<?> clazz, String name, Class<?>... parameterTypes) throws NoSuchMethodException
      Throws:
      NoSuchMethodException
    • getMethod

      public static Method getMethod(Class<?> clazz, String name, Class<?>... parameterTypes) throws NoSuchMethodException
      Throws:
      NoSuchMethodException
    • getDeclaredFields

      public static Field[] getDeclaredFields(Class<?> cls)
    • setAccessible

      public static <T extends AccessibleObject> T setAccessible(T o)
    • setAccessible

      public static <T extends AccessibleObject> T setAccessible(T o, boolean b)
    • getPropertyDescriptorsAvoidSunBug

      public static PropertyDescriptor[] getPropertyDescriptorsAvoidSunBug(Class<?> refClass, BeanInfo beanInfo, Class<?> beanClass, PropertyDescriptor[] propertyDescriptors)
      create own array of property descriptors to:
        - prevent memory leaks by Introspector's cache
        - get correct type for generic properties from superclass
           that are limited to a specific type in beanClass
          see http://bugs.sun.com/view_bug.do?bug_id=6528714
         we cannot use BeanUtils.getPropertyDescriptors because of issue SPR-6063
         
      Parameters:
      refClass - calling class for class loading.
      beanInfo - Bean in question
      beanClass - class for bean in question
      propertyDescriptors - raw descriptors
    • getAnnotationForMethodOrContainingClass

      public static <T extends Annotation> T getAnnotationForMethodOrContainingClass(Method m, Class<T> annotationType)
      Look for a specified annotation on a method. If there, return it. If not, search it's containing class. Assume that the annotation is marked @Inherited.
      Parameters:
      m - method to examine
      annotationType - the annotation type to look for.