Package org.javers.common.reflection
Class ReflectionUtil
- java.lang.Object
-
- org.javers.common.reflection.ReflectionUtil
-
public class ReflectionUtil extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description ReflectionUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.util.List<java.lang.reflect.Type>
calculateHierarchyDistance(java.lang.Class<?> clazz)
static java.lang.Class<?>
classForName(java.lang.String className)
throws RuntimeException if class is not foundstatic java.lang.Class
extractClass(java.lang.reflect.Type javaType)
for example: Map-> Map static java.util.List<java.lang.Class<?>>
findClasses(java.lang.Class<? extends java.lang.annotation.Annotation> annotation, java.lang.String... packages)
static java.util.List<JaversField>
getAllFields(java.lang.Class<?> methodSource)
static java.util.List<JaversGetter>
getAllGetters(java.lang.Class methodSource)
static java.util.List<JaversField>
getAllPersistentFields(java.lang.Class methodSource)
static java.util.List<java.lang.reflect.Type>
getAllTypeArguments(java.lang.reflect.Type javaType)
Makes sense forParameterizedType
static java.util.Set<java.lang.annotation.Annotation>
getAnnotations(java.lang.reflect.Member member)
static <T> T
getAnnotationValue(java.lang.annotation.Annotation ann, java.lang.String propertyName)
static java.util.Optional<JaversField>
getMirrorField(JaversField field, java.lang.Class methodSource)
static java.util.Optional<JaversGetter>
getMirrorGetter(JaversGetter getter, java.lang.Class methodSource)
static java.util.Optional<JaversMember>
getMirrorMember(JaversMember member, java.lang.Class methodSource)
static java.lang.Object
invokeGetter(java.lang.Object target, java.lang.String getterName)
static boolean
isAnnotationPresentInHierarchy(java.lang.Class<?> clazz, java.lang.Class<? extends java.lang.annotation.Annotation> ann)
static boolean
isAssignableFromAny(java.lang.Class clazz, java.util.List<java.lang.Class<?>> assignableFrom)
static boolean
isClassPresent(java.lang.String className)
static java.util.Optional<java.lang.reflect.Type>
isConcreteType(java.lang.reflect.Type javaType)
static boolean
looksLikeId(java.lang.reflect.Member member)
static java.lang.Object
newInstance(java.lang.Class clazz)
static java.lang.Object
newInstance(java.lang.Class clazz, ArgumentResolver resolver)
Creates new instance of public or package-private class.static java.lang.String
reflectiveToString(java.lang.Object obj)
-
-
-
Method Detail
-
isClassPresent
public static boolean isClassPresent(java.lang.String className)
-
classForName
public static java.lang.Class<?> classForName(java.lang.String className)
throws RuntimeException if class is not found
-
invokeGetter
public static java.lang.Object invokeGetter(java.lang.Object target, java.lang.String getterName)
-
newInstance
public static java.lang.Object newInstance(java.lang.Class clazz, ArgumentResolver resolver)
Creates new instance of public or package-private class. Calls first, not-private constructor
-
newInstance
public static java.lang.Object newInstance(java.lang.Class clazz)
-
getAllPersistentFields
public static java.util.List<JaversField> getAllPersistentFields(java.lang.Class methodSource)
-
getAllGetters
public static java.util.List<JaversGetter> getAllGetters(java.lang.Class methodSource)
-
getAllFields
public static java.util.List<JaversField> getAllFields(java.lang.Class<?> methodSource)
-
getMirrorMember
public static java.util.Optional<JaversMember> getMirrorMember(JaversMember member, java.lang.Class methodSource)
-
getMirrorField
public static java.util.Optional<JaversField> getMirrorField(JaversField field, java.lang.Class methodSource)
-
getMirrorGetter
public static java.util.Optional<JaversGetter> getMirrorGetter(JaversGetter getter, java.lang.Class methodSource)
-
getAllTypeArguments
public static java.util.List<java.lang.reflect.Type> getAllTypeArguments(java.lang.reflect.Type javaType)
Makes sense forParameterizedType
-
findClasses
public static java.util.List<java.lang.Class<?>> findClasses(java.lang.Class<? extends java.lang.annotation.Annotation> annotation, java.lang.String... packages)
-
isConcreteType
public static java.util.Optional<java.lang.reflect.Type> isConcreteType(java.lang.reflect.Type javaType)
-
extractClass
public static java.lang.Class extractClass(java.lang.reflect.Type javaType)
for example: Map-> Map
-
isAnnotationPresentInHierarchy
public static boolean isAnnotationPresentInHierarchy(java.lang.Class<?> clazz, java.lang.Class<? extends java.lang.annotation.Annotation> ann)
-
calculateHierarchyDistance
public static java.util.List<java.lang.reflect.Type> calculateHierarchyDistance(java.lang.Class<?> clazz)
-
reflectiveToString
public static java.lang.String reflectiveToString(java.lang.Object obj)
-
isAssignableFromAny
public static boolean isAssignableFromAny(java.lang.Class clazz, java.util.List<java.lang.Class<?>> assignableFrom)
-
getAnnotationValue
public static <T> T getAnnotationValue(java.lang.annotation.Annotation ann, java.lang.String propertyName)
-
looksLikeId
public static boolean looksLikeId(java.lang.reflect.Member member)
-
getAnnotations
public static java.util.Set<java.lang.annotation.Annotation> getAnnotations(java.lang.reflect.Member member)
-
-