Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Apache CXF API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.cxf.common.util
Class ReflectionUtil

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

    public final class ReflectionUtil

extends Object

Method Summary
`static Method` | `findMethod(Class<?> cls, String name, Class<?>... params)` Try to find a method we can use.
`static
`<T extends Annotation> T`
` | `getAnnotationForMethodOrContainingClass(Method m, Class<T> annotationType)` Look for a specified annotation on a method.
`static
`<T> Constructor<T>`
` | `getConstructor(Class<T> cls, Class<?>... args)`
`static
`<T> Constructor<T>`
` | `getDeclaredConstructor(Class<T> cls, Class<?>... args)`
`static Field` | `getDeclaredField(Class<?> cls, String name)`
`static Field[]` | `getDeclaredFields(Class<?> cls)`
`static Method[]` | `getDeclaredMethods(Class<?> cls)`
`static List<String>` | `getPackagesFromJar(File jarFile)`
`static PropertyDescriptor[]` | `getPropertyDescriptorsAvoidSunBug(Class<?> refClass, BeanInfo beanInfo, Class<?> beanClass, PropertyDescriptor[] propertyDescriptors)` create own array of property descriptors to:
`static
`<T extends AccessibleObject> T`
` | `setAccessible(T o)`
`static
`<T extends AccessibleObject> T`
` | `setAccessible(T o, boolean b)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Method Detail

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

### getDeclaredMethods

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

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

### getPackagesFromJar

    public static List<String> getPackagesFromJar(File jarFile)
                                           throws IOException

  Throws:
    `IOException`

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

### findMethod

    public static Method findMethod(Class<?> cls,
                                    String name,
                                    Class<?>... params)

  Try to find a method we can use. If the object implements a public interface that has the public version of that method, we'll use the interface defined method in case the actual instance class is not public

### 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.
  Returns:

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Apache CXF API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Apache CXF