List of usage examples for org.apache.commons.lang3.reflect TypeUtils parameterizeWithOwner
public static final ParameterizedType parameterizeWithOwner(final Type owner, final Class<?> raw, final Map<TypeVariable<?>, Type> typeArgMappings)
From source file:nl.luminis.test.util.annotations.HierarchyDiscovery.java
private Type resolveType(Class<?> clazz) { if (clazz.getTypeParameters().length > 0) { TypeVariable<?>[] actualTypeParameters = clazz.getTypeParameters(); return TypeUtils.parameterizeWithOwner(clazz.getDeclaringClass(), clazz, actualTypeParameters); } else {/*from w ww . ja va2 s .c om*/ return clazz; } }
From source file:nl.luminis.test.util.annotations.HierarchyDiscovery.java
private Type resolveParameterizedType(ParameterizedType beanType, ParameterizedType parameterizedType) { Type rawType = parameterizedType.getRawType(); Type[] actualTypes = parameterizedType.getActualTypeArguments(); Type resolvedRawType = resolveType(beanType, beanType, rawType); Type[] resolvedActualTypes = new Type[actualTypes.length]; for (int i = 0; i < actualTypes.length; i++) { resolvedActualTypes[i] = resolveType(beanType, beanType, actualTypes[i]); }/*from ww w . j a va2s . co m*/ // reconstruct ParameterizedType by types resolved TypeVariable. return TypeUtils.parameterizeWithOwner(parameterizedType.getOwnerType(), resolvedRawType.getClass(), resolvedActualTypes); }