public class GenericTypeUtils
extends java.lang.Object
Constructor and Description |
---|
GenericTypeUtils() |
Modifier and Type | Method and Description |
---|---|
static java.util.Optional<java.lang.Class> |
resolveGenericTypeArgument(java.lang.reflect.Field field)
Resolves a single generic type argument for the given field.
|
static java.util.Optional<java.lang.Class> |
resolveInterfaceTypeArgument(java.lang.Class type,
java.lang.Class interfaceType)
Resolves a single type argument from the given interface of the given class.
|
static java.lang.Class[] |
resolveInterfaceTypeArguments(java.lang.Class<?> type,
java.lang.Class<?> interfaceType)
Resolve all of the type arguments for the given interface from the given type.
|
static java.util.Optional<java.lang.Class> |
resolveSuperGenericTypeArgument(java.lang.Class type)
Resolves a single generic type argument from the super class of the given type.
|
static java.lang.Class[] |
resolveSuperTypeGenericArguments(java.lang.Class<?> type,
java.lang.Class<?> superTypeToResolve)
Resolve all of the type arguments for the given super type from the given type.
|
static java.lang.Class[] |
resolveTypeArguments(java.lang.reflect.Type genericType)
Resolves the type arguments for a generic type.
|
public static java.util.Optional<java.lang.Class> resolveGenericTypeArgument(java.lang.reflect.Field field)
field
- The fieldOptional.empty()
public static java.lang.Class[] resolveInterfaceTypeArguments(java.lang.Class<?> type, java.lang.Class<?> interfaceType)
type
- The type to resolve frominterfaceType
- The interface to resolve frompublic static java.lang.Class[] resolveSuperTypeGenericArguments(java.lang.Class<?> type, java.lang.Class<?> superTypeToResolve)
type
- The type to resolve fromsuperTypeToResolve
- The suepr type to resolve frompublic static java.util.Optional<java.lang.Class> resolveSuperGenericTypeArgument(java.lang.Class type)
type
- The type to resolve frompublic static java.lang.Class[] resolveTypeArguments(java.lang.reflect.Type genericType)
genericType
- The generic typepublic static java.util.Optional<java.lang.Class> resolveInterfaceTypeArgument(java.lang.Class type, java.lang.Class interfaceType)
type
- The type to resolve frominterfaceType
- The interface to resolve for