public static class ListListString extends ListListT<String> { static final Type expect = ParameterizedTypeImpl.make( List.class, new Type[] {ParameterizedTypeImpl.make(List.class, new Type[] {String.class}, null)}, null); }
public static class ListListT<T> extends Super<List<List<T>>> { static final Type expect = ParameterizedTypeImpl.make( List.class, new Type[] { ParameterizedTypeImpl.make( List.class, new Type[] {new ClassTypeVariable("T", ListListT.class)}, null) }, null); }
public static class ListIntSub extends ListInt { static final Type expect = ParameterizedTypeImpl.make(List.class, new Type[] {Integer.class}, null); public List<Integer> getThing() { return null; } }
private Class<?> getResponseType0(Method method) { if (method.isAnnotationPresent(ResponseBody.class)) { return method.getReturnType(); } else { if (method.getReturnType() == ResponseEntity.class) { Type methodGenericReturnType = method.getGenericReturnType(); if (methodGenericReturnType instanceof ParameterizedTypeImpl) { ParameterizedTypeImpl parameterizedType = (ParameterizedTypeImpl) methodGenericReturnType; Type type = parameterizedType.getActualTypeArguments()[0]; return typeToClass(type); } else { // TODO Message to the log: recommendation to use ResponseEntity with generic parameter return byte[].class; } } return Void.class; } }
public static class WildcardT<T> extends Super<List<? extends T>> { static final Type expect = ParameterizedTypeImpl.make( List.class, new Type[] { new WildcardTypeImpl(new Type[] {new ClassTypeVariable("T", WildcardT.class)}, null) }, null); }
public static class ListUSub<V> extends ListU<V> { static final Type expect = ParameterizedTypeImpl.make( List.class, new Type[] {new ClassTypeVariable("V", ListUSub.class)}, null); public List<V> getThing() { return null; } }
public static class SuperMap<K, V> { static final Type expect = ParameterizedTypeImpl.make( Map.class, new Type[] { new ClassTypeVariable("K", SuperMap.class), new ClassTypeVariable("V", SuperMap.class) }, null); public Map<K, V> getThing() { return null; } }
public static class SubMap extends SuperMap<String, Integer> { static final Type expect = ParameterizedTypeImpl.make(Map.class, new Type[] {String.class, Integer.class}, null); }
public static class WildcardTSuperSub extends WildcardTSuper<Integer> { static final Type expect = ParameterizedTypeImpl.make( List.class, new Type[] {new WildcardTypeImpl(null, new Type[] {Integer.class})}, null); }
public static class Wildcard extends Super<List<?>> { static final Type expect = ParameterizedTypeImpl.make(List.class, new Type[] {new WildcardTypeImpl(null, null)}, null); }
public static class GenericArray extends Super<List<String>[]> { static final Type expect = GenericArrayTypeImpl.make( ParameterizedTypeImpl.make(List.class, new Type[] {String.class}, null)); }
public static class ListUSubInt extends ListUSub<Integer> { static final Type expect = ParameterizedTypeImpl.make(List.class, new Type[] {Integer.class}, null); }
public static class ListU<U> extends Super<List<U>> { static final Type expect = ParameterizedTypeImpl.make( List.class, new Type[] {new ClassTypeVariable("U", ListU.class)}, null); }