Support for ResolvableType.getType().getTypeName() on Java 8

Issue: SPR-16535
This commit is contained in:
Juergen Hoeller
2018-02-26 17:19:12 +01:00
parent c2d5ca9811
commit 6663d0ff07
2 changed files with 54 additions and 32 deletions

View File

@@ -1495,6 +1495,22 @@ public class ResolvableType implements Serializable {
this.typeArguments = typeArguments;
}
@Override
public String getTypeName() {
StringBuilder result = new StringBuilder(this.rawType.getTypeName());
if (this.typeArguments.length > 0) {
result.append('<');
for (int i = 0; i < this.typeArguments.length; i++) {
if (i > 0) {
result.append(", ");
}
result.append(this.typeArguments[i].getTypeName());
}
result.append('>');
}
return result.toString();
}
@Override
@Nullable
public Type getOwnerType() {
@@ -1528,6 +1544,11 @@ public class ResolvableType implements Serializable {
public int hashCode() {
return (this.rawType.hashCode() * 31 + Arrays.hashCode(this.typeArguments));
}
@Override
public String toString() {
return getTypeName();
}
}