Skip to content

Commit a2be6ba

Browse files
committed
Replace unmodifiable collection creation with collection factory methods
1 parent cb1b68d commit a2be6ba

File tree

3 files changed

+17
-19
lines changed

3 files changed

+17
-19
lines changed

spring-batch-core/src/main/java/org/springframework/batch/core/JobExecution.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2006-2022 the original author or authors.
2+
* Copyright 2006-2023 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -239,7 +239,7 @@ public JobInstance getJobInstance() {
239239
* @return the step executions that were registered.
240240
*/
241241
public Collection<StepExecution> getStepExecutions() {
242-
return Collections.unmodifiableList(new ArrayList<>(stepExecutions));
242+
return List.copyOf(stepExecutions);
243243
}
244244

245245
/**

spring-batch-core/src/main/java/org/springframework/batch/core/repository/dao/Jackson2ExecutionContextStringSerializer.java

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -284,22 +284,20 @@ protected TypeIdResolver idResolver(MapperConfig<?> config, JavaType baseType,
284284
*/
285285
static class TrustedTypeIdResolver implements TypeIdResolver {
286286

287-
private static final Set<String> TRUSTED_CLASS_NAMES = Collections
288-
.unmodifiableSet(new HashSet<>(Arrays.asList("javax.xml.namespace.QName", "java.util.UUID",
289-
"java.util.ArrayList", "java.util.Arrays$ArrayList", "java.util.LinkedList",
290-
"java.util.Collections$EmptyList", "java.util.Collections$EmptyMap",
291-
"java.util.Collections$EmptySet", "java.util.Collections$UnmodifiableRandomAccessList",
292-
"java.util.Collections$UnmodifiableList", "java.util.Collections$UnmodifiableMap",
293-
"java.util.Collections$UnmodifiableSet", "java.util.Collections$SingletonList",
294-
"java.util.Collections$SingletonMap", "java.util.Collections$SingletonSet", "java.util.Date",
295-
"java.time.Instant", "java.time.Duration", "java.time.LocalDate", "java.time.LocalTime",
296-
"java.time.LocalDateTime", "java.sql.Timestamp", "java.net.URL", "java.util.TreeMap",
297-
"java.util.HashMap", "java.util.LinkedHashMap", "java.util.TreeSet", "java.util.HashSet",
298-
"java.util.LinkedHashSet", "java.lang.Boolean", "java.lang.Byte", "java.lang.Short",
299-
"java.lang.Integer", "java.lang.Long", "java.lang.Double", "java.lang.Float",
300-
"java.math.BigDecimal", "java.math.BigInteger", "java.lang.String", "java.lang.Character",
301-
"java.lang.CharSequence", "java.util.Properties", "[Ljava.util.Properties;",
302-
"org.springframework.batch.core.JobParameter", "org.springframework.batch.core.JobParameters")));
287+
private static final Set<String> TRUSTED_CLASS_NAMES = Set.of("javax.xml.namespace.QName", "java.util.UUID",
288+
"java.util.ArrayList", "java.util.Arrays$ArrayList", "java.util.LinkedList",
289+
"java.util.Collections$EmptyList", "java.util.Collections$EmptyMap", "java.util.Collections$EmptySet",
290+
"java.util.Collections$UnmodifiableRandomAccessList", "java.util.Collections$UnmodifiableList",
291+
"java.util.Collections$UnmodifiableMap", "java.util.Collections$UnmodifiableSet",
292+
"java.util.Collections$SingletonList", "java.util.Collections$SingletonMap",
293+
"java.util.Collections$SingletonSet", "java.util.Date", "java.time.Instant", "java.time.Duration",
294+
"java.time.LocalDate", "java.time.LocalTime", "java.time.LocalDateTime", "java.sql.Timestamp",
295+
"java.net.URL", "java.util.TreeMap", "java.util.HashMap", "java.util.LinkedHashMap",
296+
"java.util.TreeSet", "java.util.HashSet", "java.util.LinkedHashSet", "java.lang.Boolean",
297+
"java.lang.Byte", "java.lang.Short", "java.lang.Integer", "java.lang.Long", "java.lang.Double",
298+
"java.lang.Float", "java.math.BigDecimal", "java.math.BigInteger", "java.lang.String",
299+
"java.lang.Character", "java.lang.CharSequence", "java.util.Properties", "[Ljava.util.Properties;",
300+
"org.springframework.batch.core.JobParameter", "org.springframework.batch.core.JobParameters");
303301

304302
private final Set<String> trustedClassNames = new LinkedHashSet<>(TRUSTED_CLASS_NAMES);
305303

spring-batch-infrastructure/src/main/java/org/springframework/batch/item/Chunk.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ public void clear() {
103103
* @return a copy of the items to be processed as an unmodifiable list
104104
*/
105105
public List<W> getItems() {
106-
return Collections.unmodifiableList(new ArrayList<>(items));
106+
return List.copyOf(items);
107107
}
108108

109109
/**

0 commit comments

Comments
 (0)