Class ClassUtils


  • public class ClassUtils
    extends java.lang.Object
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  ClassUtils.TypeDescr  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static boolean anyMatchWithAnnotation​(java.lang.annotation.Annotation annotation, java.util.Set<java.lang.String> annotationNames)  
      static boolean anyOfAnnotationsPresent​(java.lang.reflect.AnnotatedElement element, java.util.Set<java.lang.String> annotations)  
      static <E,​T>
      E[]
      boxArray​(T array, java.lang.Class<?> elementClass)  
      static <Type> Type castToType​(java.lang.Object object)  
      static <A> java.lang.Class<A> erasure​(java.lang.reflect.Type type)  
      static java.util.List<java.lang.reflect.Type> getActualTypeArguments​(java.lang.reflect.Type type)  
      static <T> java.util.List<java.lang.reflect.Field> getAllDeclaredFields​(java.lang.Class<T> clazz)  
      static java.util.List<java.lang.reflect.Type> getAllGenericInterfaces​(java.lang.Class<?> cls)  
      static java.util.Optional<java.lang.annotation.Annotation> getAnnotationIfPresent​(java.lang.reflect.AnnotatedElement element, java.util.Set<java.lang.String> annotations)  
      static <A extends java.lang.annotation.Annotation,​T extends java.lang.reflect.AnnotatedElement>
      java.util.Optional<A>
      getAnnotationRecursive​(T cls, java.lang.Class<A> annotationCls)  
      static java.util.function.Function<java.lang.Class<?>,​java.lang.reflect.Constructor<?>> getConstructorOrDefaultFor​(java.lang.Class<?> clazz)  
      static <ObjectType>
      ObjectType
      getInstanceWithoutArguments​(java.lang.reflect.Constructor<?> defaultConstructor)  
      static ClassUtils.TypeDescr getTypeDescription​(java.lang.reflect.Type type)  
      static java.util.List<java.lang.reflect.Type> getTypeParametersOfField​(java.lang.reflect.Field field)  
      static <T> T getValueOfAnnotationProperty​(java.lang.annotation.Annotation annotation, java.lang.String propertyName)  
      static <A extends java.lang.annotation.Annotation,​T extends java.lang.reflect.AnnotatedElement>
      boolean
      hasAnnotationRecursive​(T cls, java.lang.Class<A> annotationCls)  
      static boolean isFieldTransient​(java.lang.reflect.Field field, java.util.Set<java.lang.String> transientAnnotations)  
      static void setFieldsAccessibleToTrue​(java.util.List<java.lang.reflect.Field> fields)  
      static <T,​O>
      O
      unboxArray​(T array, java.lang.Class<?> elementClass)  
      • Methods inherited from class java.lang.Object

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

      • hasAnnotationRecursive

        public static <A extends java.lang.annotation.Annotation,​T extends java.lang.reflect.AnnotatedElement> boolean hasAnnotationRecursive​(T cls,
                                                                                                                                                    java.lang.Class<A> annotationCls)
      • getAnnotationRecursive

        public static <A extends java.lang.annotation.Annotation,​T extends java.lang.reflect.AnnotatedElement> java.util.Optional<A> getAnnotationRecursive​(T cls,
                                                                                                                                                                  java.lang.Class<A> annotationCls)
      • getAllGenericInterfaces

        public static java.util.List<java.lang.reflect.Type> getAllGenericInterfaces​(java.lang.Class<?> cls)
      • erasure

        public static <A> java.lang.Class<A> erasure​(java.lang.reflect.Type type)
      • getActualTypeArguments

        public static java.util.List<java.lang.reflect.Type> getActualTypeArguments​(java.lang.reflect.Type type)
      • getAllDeclaredFields

        public static <T> java.util.List<java.lang.reflect.Field> getAllDeclaredFields​(java.lang.Class<T> clazz)
      • castToType

        public static <Type> Type castToType​(java.lang.Object object)
      • boxArray

        public static <E,​T> E[] boxArray​(T array,
                                               java.lang.Class<?> elementClass)
      • unboxArray

        public static <T,​O> O unboxArray​(T array,
                                               java.lang.Class<?> elementClass)
      • getTypeParametersOfField

        public static java.util.List<java.lang.reflect.Type> getTypeParametersOfField​(java.lang.reflect.Field field)
      • getTypeDescription

        public static ClassUtils.TypeDescr getTypeDescription​(java.lang.reflect.Type type)
      • isFieldTransient

        public static boolean isFieldTransient​(java.lang.reflect.Field field,
                                               java.util.Set<java.lang.String> transientAnnotations)
      • anyOfAnnotationsPresent

        public static boolean anyOfAnnotationsPresent​(java.lang.reflect.AnnotatedElement element,
                                                      java.util.Set<java.lang.String> annotations)
      • anyMatchWithAnnotation

        public static boolean anyMatchWithAnnotation​(java.lang.annotation.Annotation annotation,
                                                     java.util.Set<java.lang.String> annotationNames)
      • getAnnotationIfPresent

        public static java.util.Optional<java.lang.annotation.Annotation> getAnnotationIfPresent​(java.lang.reflect.AnnotatedElement element,
                                                                                                 java.util.Set<java.lang.String> annotations)
      • getValueOfAnnotationProperty

        public static <T> T getValueOfAnnotationProperty​(java.lang.annotation.Annotation annotation,
                                                         java.lang.String propertyName)
      • setFieldsAccessibleToTrue

        public static void setFieldsAccessibleToTrue​(java.util.List<java.lang.reflect.Field> fields)
      • getConstructorOrDefaultFor

        public static java.util.function.Function<java.lang.Class<?>,​java.lang.reflect.Constructor<?>> getConstructorOrDefaultFor​(java.lang.Class<?> clazz)
      • getInstanceWithoutArguments

        public static <ObjectType> ObjectType getInstanceWithoutArguments​(java.lang.reflect.Constructor<?> defaultConstructor)