public abstract class

GenericTypeResolver

extends Object
java.lang.Object
   ↳ org.springframework.core.GenericTypeResolver

Class Overview

Helper class for resolving generic types against type variables.

Mainly intended for usage within the framework, resolving method parameter types even when they are declared generically.

Summary

Public Constructors
GenericTypeResolver()
Public Methods
static Type getTargetType(MethodParameter methodParam)
Determine the target type for the given parameter specification.
static Class<?> resolveParameterType(MethodParameter methodParam, Class clazz)
Determine the target type for the given generic parameter type.
static Class<?> resolveReturnType(Method method, Class clazz)
Determine the target type for the generic return type of the given method.
static Class<?> resolveTypeArgument(Class clazz, Class genericIfc)
Resolve the single type argument of the given generic interface against the given target class which is assumed to implement the generic interface and possibly declare a concrete type for its type variable.
static Class[] resolveTypeArguments(Class clazz, Class genericIfc)
Resolve the type arguments of the given generic interface against the given target class which is assumed to implement the generic interface and possibly declare concrete types for its type variables.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public GenericTypeResolver ()

Also: SpringCore

Public Methods

public static Type getTargetType (MethodParameter methodParam)

Also: SpringCore

Determine the target type for the given parameter specification.

Parameters
methodParam the method parameter specification
Returns
  • the corresponding generic parameter type

public static Class<?> resolveParameterType (MethodParameter methodParam, Class clazz)

Also: SpringCore

Determine the target type for the given generic parameter type.

Parameters
methodParam the method parameter specification
clazz the class to resolve type variables against
Returns
  • the corresponding generic parameter or return type

public static Class<?> resolveReturnType (Method method, Class clazz)

Also: SpringCore

Determine the target type for the generic return type of the given method.

Parameters
method the method to introspect
clazz the class to resolve type variables against
Returns
  • the corresponding generic parameter or return type

public static Class<?> resolveTypeArgument (Class clazz, Class genericIfc)

Also: SpringCore

Resolve the single type argument of the given generic interface against the given target class which is assumed to implement the generic interface and possibly declare a concrete type for its type variable.

Parameters
clazz the target class to check against
genericIfc the generic interface or superclass to resolve the type argument from
Returns
  • the resolved type of the argument, or null if not resolvable

public static Class[] resolveTypeArguments (Class clazz, Class genericIfc)

Also: SpringCore

Resolve the type arguments of the given generic interface against the given target class which is assumed to implement the generic interface and possibly declare concrete types for its type variables.

Parameters
clazz the target class to check against
genericIfc the generic interface or superclass to resolve the type argument from
Returns
  • the resolved type of each argument, with the array size matching the number of actual type arguments, or null if not resolvable