in app-gradle-plugin/src/main/java/com/google/cloud/tools/gradle/appengine/core/ShowConfigurationTask.java [119:133]
private static String getGenericTypeData(Type genericType) {
List<String> types = Lists.newArrayList();
if (genericType != null && genericType instanceof ParameterizedType) {
for (Type t : ((ParameterizedType) genericType).getActualTypeArguments()) {
if (t instanceof ParameterizedType) {
String nestedGeneric = ((Class<?>) ((ParameterizedType) t).getRawType()).getSimpleName();
nestedGeneric += getGenericTypeData(t);
types.add(nestedGeneric);
} else {
types.add(((Class<?>) t).getSimpleName());
}
}
}
return (types.size() > 0) ? "<" + Joiner.on(", ").join(types) + ">" : "";
}