From 214c7ebdd56d4369d8c78eb6a755f135287dcd92 Mon Sep 17 00:00:00 2001 From: Andy Wilkinson Date: Tue, 13 Feb 2018 17:32:17 +0000 Subject: [PATCH] Start building against Spring Framework 5.0.4 snapshots again This reverts commit 682612efa38bcef2c6ae404ed27be86c5b0a6216. --- .../spring-boot-dependencies/pom.xml | 2 +- .../context/properties/bind/CollectionBinder.java | 2 +- .../properties/bind/IndexedElementsBinder.java | 15 ++------------- 3 files changed, 4 insertions(+), 15 deletions(-) diff --git a/spring-boot-project/spring-boot-dependencies/pom.xml b/spring-boot-project/spring-boot-dependencies/pom.xml index 3e58173556..f0d3dc7678 100644 --- a/spring-boot-project/spring-boot-dependencies/pom.xml +++ b/spring-boot-project/spring-boot-dependencies/pom.xml @@ -141,7 +141,7 @@ 1.7.25 1.19 6.6.2 - 5.0.3.RELEASE + 5.0.4.BUILD-SNAPSHOT 2.0.2.RELEASE 4.0.0.RELEASE 2.0.1.RELEASE diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/CollectionBinder.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/CollectionBinder.java index 273c41a017..c90080f0b6 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/CollectionBinder.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/CollectionBinder.java @@ -40,7 +40,7 @@ class CollectionBinder extends IndexedElementsBinder> { AggregateElementBinder elementBinder) { Class collectionType = (target.getValue() == null ? target.getType().resolve(Object.class) : List.class); - ResolvableType aggregateType = forClassWithGenerics(List.class, + ResolvableType aggregateType = ResolvableType.forClassWithGenerics(List.class, target.getType().asCollection().getGenerics()); ResolvableType elementType = target.getType().asCollection().getGeneric(); IndexedCollectionSupplier result = new IndexedCollectionSupplier( diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/IndexedElementsBinder.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/IndexedElementsBinder.java index eb260141fd..601a7f4505 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/IndexedElementsBinder.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/context/properties/bind/IndexedElementsBinder.java @@ -83,8 +83,8 @@ abstract class IndexedElementsBinder extends AggregateBinder { if (property != null) { Object aggregate = convert(property.getValue(), aggregateType, target.getAnnotations()); - ResolvableType collectionType = forClassWithGenerics( - collection.get().getClass(), elementType); + ResolvableType collectionType = ResolvableType + .forClassWithGenerics(collection.get().getClass(), elementType); Collection elements = convert(aggregate, collectionType); collection.get().addAll(elements); } @@ -145,17 +145,6 @@ abstract class IndexedElementsBinder extends AggregateBinder { .convert(conversionService, value); } - // Work around for SPR-16456 - protected static ResolvableType forClassWithGenerics(Class type, - ResolvableType... generics) { - ResolvableType[] resolvedGenerics = new ResolvableType[generics.length]; - for (int i = 0; i < generics.length; i++) { - resolvedGenerics[i] = forClassWithGenerics(generics[i].resolve(Object.class), - generics[i].getGenerics()); - } - return ResolvableType.forClassWithGenerics(type, resolvedGenerics); - } - /** * {@link AggregateBinder.AggregateSupplier AggregateSupplier} for an indexed * collection.