Package org.jobrunr.utils.reflection
Class ReflectionUtils
- java.lang.Object
-
- org.jobrunr.utils.reflection.ReflectionUtils
-
public class ReflectionUtils extends java.lang.Object
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <T> T
autobox(java.lang.Object value, java.lang.Class<T> type)
static <T> T
cast(java.lang.Object anObject)
Why: less warnings and @SuppressWarnings("unchecked")static boolean
classExists(java.lang.String className)
static java.util.Optional<java.lang.reflect.Field>
findField(java.lang.Class<?> clazz, java.lang.String fieldName)
static java.util.Optional<java.lang.reflect.Field>
findField(java.lang.Class<?> clazz, java.util.function.Predicate<java.lang.reflect.Field> predicate)
static java.util.Optional<java.lang.reflect.Method>
findMethod(java.lang.Class<?> clazz, java.lang.String methodName, java.lang.Class<?>... parameterTypes)
static java.util.Optional<java.lang.reflect.Method>
findMethod(java.lang.Object object, java.lang.String methodName, java.lang.Class<?>... parameterTypes)
static java.lang.reflect.Field
getField(java.lang.Class<?> clazz, java.lang.String fieldName)
static java.lang.reflect.Method
getMethod(java.lang.Class<?> clazz, java.lang.String methodName, java.lang.Class<?>... parameterTypes)
static java.lang.Object
getValueFromField(java.lang.reflect.Field field, java.lang.Object object)
static java.lang.Object
getValueFromFieldOrProperty(java.lang.Object object, java.lang.String paramName)
static java.lang.Object
getValueFromGetMethod(java.lang.reflect.Method getter, java.lang.Object object)
static boolean
hasDefaultNoArgConstructor(java.lang.Class<?> clazz)
static boolean
hasDefaultNoArgConstructor(java.lang.String clazzName)
static boolean
isClassAssignable(java.lang.Class<?> clazz1, java.lang.Class<?> clazz2)
static boolean
isClassAssignableToObject(java.lang.Class<?> clazz, java.lang.Object object)
static java.lang.Class<?>
loadClass(java.lang.String className)
static void
makeAccessible(java.lang.reflect.AccessibleObject accessibleObject)
static <T> T
newInstance(java.lang.Class<T> clazz)
static <T> T
newInstance(java.lang.Class<T> clazz, java.lang.Object... params)
static <T> T
newInstance(java.lang.String className, java.lang.Object... params)
static <T> T
newInstanceAndSetFieldValues(java.lang.Class<T> clazz, java.util.Map<java.lang.String,java.lang.String> fieldValues)
static <T> T
newInstanceCE(java.lang.Class<T> clazz, java.lang.Object... params)
static boolean
objectContainsFieldOrProperty(java.lang.Object object, java.lang.String fieldName)
static void
setFieldUsingAutoboxing(java.lang.reflect.Field field, java.lang.Object object, java.lang.Object value)
static void
setFieldUsingAutoboxing(java.lang.String fieldName, java.lang.Object object, java.lang.Object value)
static <T> java.lang.Class<T>
toClass(java.lang.String className)
static <T> java.lang.Class<T>
toClassFromPath(java.nio.file.Path path)
static java.lang.String
toClassNameFromFileName(java.lang.String classFile)
-
-
-
Method Detail
-
classExists
public static boolean classExists(java.lang.String className)
-
toClassFromPath
public static <T> java.lang.Class<T> toClassFromPath(java.nio.file.Path path)
-
toClassNameFromFileName
public static java.lang.String toClassNameFromFileName(java.lang.String classFile)
-
toClass
public static <T> java.lang.Class<T> toClass(java.lang.String className)
-
loadClass
public static java.lang.Class<?> loadClass(java.lang.String className) throws java.lang.ClassNotFoundException
- Throws:
java.lang.ClassNotFoundException
-
hasDefaultNoArgConstructor
public static boolean hasDefaultNoArgConstructor(java.lang.String clazzName)
-
hasDefaultNoArgConstructor
public static boolean hasDefaultNoArgConstructor(java.lang.Class<?> clazz)
-
newInstanceAndSetFieldValues
public static <T> T newInstanceAndSetFieldValues(java.lang.Class<T> clazz, java.util.Map<java.lang.String,java.lang.String> fieldValues)
-
newInstance
public static <T> T newInstance(java.lang.String className, java.lang.Object... params)
-
newInstance
public static <T> T newInstance(java.lang.Class<T> clazz, java.lang.Object... params)
-
newInstanceCE
public static <T> T newInstanceCE(java.lang.Class<T> clazz, java.lang.Object... params) throws java.lang.ReflectiveOperationException
- Throws:
java.lang.ReflectiveOperationException
-
newInstance
public static <T> T newInstance(java.lang.Class<T> clazz)
-
getMethod
public static java.lang.reflect.Method getMethod(java.lang.Class<?> clazz, java.lang.String methodName, java.lang.Class<?>... parameterTypes)
-
findMethod
public static java.util.Optional<java.lang.reflect.Method> findMethod(java.lang.Object object, java.lang.String methodName, java.lang.Class<?>... parameterTypes)
-
findMethod
public static java.util.Optional<java.lang.reflect.Method> findMethod(java.lang.Class<?> clazz, java.lang.String methodName, java.lang.Class<?>... parameterTypes)
-
getField
public static java.lang.reflect.Field getField(java.lang.Class<?> clazz, java.lang.String fieldName)
-
findField
public static java.util.Optional<java.lang.reflect.Field> findField(java.lang.Class<?> clazz, java.lang.String fieldName)
-
findField
public static java.util.Optional<java.lang.reflect.Field> findField(java.lang.Class<?> clazz, java.util.function.Predicate<java.lang.reflect.Field> predicate)
-
isClassAssignableToObject
public static boolean isClassAssignableToObject(java.lang.Class<?> clazz, java.lang.Object object)
-
isClassAssignable
public static boolean isClassAssignable(java.lang.Class<?> clazz1, java.lang.Class<?> clazz2)
-
objectContainsFieldOrProperty
public static boolean objectContainsFieldOrProperty(java.lang.Object object, java.lang.String fieldName)
-
getValueFromFieldOrProperty
public static java.lang.Object getValueFromFieldOrProperty(java.lang.Object object, java.lang.String paramName)
-
getValueFromField
public static java.lang.Object getValueFromField(java.lang.reflect.Field field, java.lang.Object object)
-
getValueFromGetMethod
public static java.lang.Object getValueFromGetMethod(java.lang.reflect.Method getter, java.lang.Object object)
-
setFieldUsingAutoboxing
public static void setFieldUsingAutoboxing(java.lang.String fieldName, java.lang.Object object, java.lang.Object value)
-
setFieldUsingAutoboxing
public static void setFieldUsingAutoboxing(java.lang.reflect.Field field, java.lang.Object object, java.lang.Object value)
-
autobox
public static <T> T autobox(java.lang.Object value, java.lang.Class<T> type)
-
makeAccessible
public static void makeAccessible(java.lang.reflect.AccessibleObject accessibleObject)
-
cast
public static <T> T cast(java.lang.Object anObject)
Why: less warnings and @SuppressWarnings("unchecked")
-
-