@@ -57,7 +57,7 @@ public final class $Gson$Types {
57
57
* @return a {@link java.io.Serializable serializable} parameterized type.
58
58
*/
59
59
public static ParameterizedType newParameterizedTypeWithOwner (
60
- Type ownerType , Type rawType , Type ... typeArguments ) {
60
+ Type ownerType , Class <?> rawType , Type ... typeArguments ) {
61
61
return new ParameterizedTypeImpl (ownerType , rawType , typeArguments );
62
62
}
63
63
@@ -112,7 +112,7 @@ public static Type canonicalize(Type type) {
112
112
} else if (type instanceof ParameterizedType ) {
113
113
ParameterizedType p = (ParameterizedType ) type ;
114
114
return new ParameterizedTypeImpl (
115
- p .getOwnerType (), p .getRawType (), p .getActualTypeArguments ());
115
+ p .getOwnerType (), ( Class <?>) p .getRawType (), p .getActualTypeArguments ());
116
116
117
117
} else if (type instanceof GenericArrayType ) {
118
118
GenericArrayType g = (GenericArrayType ) type ;
@@ -411,7 +411,8 @@ private static Type resolve(
411
411
412
412
toResolve =
413
413
ownerChanged || argsChanged
414
- ? newParameterizedTypeWithOwner (newOwnerType , original .getRawType (), args )
414
+ ? newParameterizedTypeWithOwner (
415
+ newOwnerType , (Class <?>) original .getRawType (), args )
415
416
: original ;
416
417
break ;
417
418
@@ -519,10 +520,9 @@ private static final class ParameterizedTypeImpl implements ParameterizedType, S
519
520
@ SuppressWarnings ("serial" )
520
521
private final Type [] typeArguments ;
521
522
522
- public ParameterizedTypeImpl (Type ownerType , Type rawType , Type ... typeArguments ) {
523
- // TODO: Should this enforce that rawType is a Class? See JDK implementation of
524
- // the ParameterizedType interface and https://bugs.openjdk.org/browse/JDK-8250659
523
+ public ParameterizedTypeImpl (Type ownerType , Class <?> rawType , Type ... typeArguments ) {
525
524
requireNonNull (rawType );
525
+
526
526
if (ownerType == null && requiresOwnerType (rawType )) {
527
527
throw new IllegalArgumentException ("Must specify owner type for " + rawType );
528
528
}
0 commit comments