Skip to content

Commit 7f5d6ea

Browse files
committed
Fixed NavigableSet/NavigableMap detection in createCollection/createMap
Issue: SPR-11257
1 parent 4e5e700 commit 7f5d6ea

File tree

1 file changed

+2
-6
lines changed

1 file changed

+2
-6
lines changed

spring-core/src/main/java/org/springframework/core/CollectionFactory.java

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -50,10 +50,6 @@
5050
*/
5151
public abstract class CollectionFactory {
5252

53-
private static Class<?> navigableSetClass = null;
54-
55-
private static Class<?> navigableMapClass = null;
56-
5753
private static final Set<Class<?>> approximableCollectionTypes = new HashSet<Class<?>>(10);
5854

5955
private static final Set<Class<?>> approximableMapTypes = new HashSet<Class<?>>(6);
@@ -137,7 +133,7 @@ public static <E> Collection<E> createCollection(Class<?> collectionType, int in
137133
if (List.class.equals(collectionType)) {
138134
return new ArrayList<E>(initialCapacity);
139135
}
140-
else if (SortedSet.class.equals(collectionType) || collectionType.equals(navigableSetClass)) {
136+
else if (SortedSet.class.equals(collectionType) || NavigableSet.class.equals(collectionType)) {
141137
return new TreeSet<E>();
142138
}
143139
else if (Set.class.equals(collectionType) || Collection.class.equals(collectionType)) {
@@ -206,7 +202,7 @@ public static <K, V> Map<K, V> createMap(Class<?> mapType, int initialCapacity)
206202
if (Map.class.equals(mapType)) {
207203
return new LinkedHashMap<K, V>(initialCapacity);
208204
}
209-
else if (SortedMap.class.equals(mapType) || mapType.equals(navigableMapClass)) {
205+
else if (SortedMap.class.equals(mapType) || NavigableMap.class.equals(mapType)) {
210206
return new TreeMap<K, V>();
211207
}
212208
else if (MultiValueMap.class.equals(mapType)) {

0 commit comments

Comments
 (0)