Example usage for org.apache.commons.lang3.reflect TypeUtils parameterizeWithOwner

List of usage examples for org.apache.commons.lang3.reflect TypeUtils parameterizeWithOwner

Introduction

In this page you can find the example usage for org.apache.commons.lang3.reflect TypeUtils parameterizeWithOwner.

Prototype

public static final ParameterizedType parameterizeWithOwner(final Type owner, final Class<?> raw,
        final Map<TypeVariable<?>, Type> typeArgMappings) 

Source Link

Document

Create a parameterized type instance.

Usage

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);
}