From 7917ae53e80214760e8590e3d1f9c0e91bb14b69 Mon Sep 17 00:00:00 2001 From: Sam Brannen <104798+sbrannen@users.noreply.github.com> Date: Mon, 19 Jan 2026 19:16:28 +0100 Subject: [PATCH] Polishing --- .../DefaultPartHttpMessageReader.java | 8 +++---- .../http/codec/multipart/PartGenerator.java | 24 +++++-------------- .../client/WebClientIntegrationTests.java | 2 +- .../handler/SimpleUrlHandlerMappingTests.java | 5 ++-- .../function/DefaultServerRequestTests.java | 1 - 5 files changed, 13 insertions(+), 27 deletions(-) diff --git a/spring-web/src/main/java/org/springframework/http/codec/multipart/DefaultPartHttpMessageReader.java b/spring-web/src/main/java/org/springframework/http/codec/multipart/DefaultPartHttpMessageReader.java index 4cb24c701c7..5038b5ba67f 100644 --- a/spring-web/src/main/java/org/springframework/http/codec/multipart/DefaultPartHttpMessageReader.java +++ b/spring-web/src/main/java/org/springframework/http/codec/multipart/DefaultPartHttpMessageReader.java @@ -75,7 +75,6 @@ public class DefaultPartHttpMessageReader extends LoggingCodecSupport implements /** * Configure the maximum amount of memory that is allowed per headers section of each part. - * When the limit * @param byteCount the maximum amount of memory for headers */ public void setMaxHeadersSize(int byteCount) { @@ -93,8 +92,8 @@ public class DefaultPartHttpMessageReader extends LoggingCodecSupport implements * Configure the maximum amount of memory allowed per part. * When the limit is exceeded: * *

By default this is set to 256K. * @param maxInMemorySize the in-memory limit in bytes; if set to -1 the entire @@ -158,7 +157,7 @@ public class DefaultPartHttpMessageReader extends LoggingCodecSupport implements /** * Set the character set used to decode headers. - * Defaults to UTF-8 as per RFC 7578. + *

Defaults to UTF-8 as per RFC 7578. * @param headersCharset the charset to use for decoding headers * @since 5.3.6 * @see RFC-7578 Section 5.1 @@ -218,5 +217,4 @@ public class DefaultPartHttpMessageReader extends LoggingCodecSupport implements return this.maxParts > 0 && count > this.maxParts; } - } diff --git a/spring-web/src/main/java/org/springframework/http/codec/multipart/PartGenerator.java b/spring-web/src/main/java/org/springframework/http/codec/multipart/PartGenerator.java index 5927fb1d69b..b6b55423e07 100644 --- a/spring-web/src/main/java/org/springframework/http/codec/multipart/PartGenerator.java +++ b/spring-web/src/main/java/org/springframework/http/codec/multipart/PartGenerator.java @@ -52,7 +52,8 @@ import org.springframework.util.FastByteArrayOutputStream; /** * Subscribes to a token stream (i.e. the result of - * {@link MultipartParser#parse(Flux, byte[], int, Charset)}), and produces a flux of {@link Part} objects. + * {@link MultipartParser#parse(Flux, byte[], int, Charset)}), and produces a flux + * of {@link Part} objects. * * @author Arjen Poutsma * @since 5.3 @@ -330,7 +331,6 @@ final class PartGenerator extends BaseSubscriber { public String toString() { return "FORM-FIELD"; } - } @@ -422,7 +422,6 @@ final class PartGenerator extends BaseSubscriber { public String toString() { return "IN-MEMORY"; } - } @@ -487,7 +486,6 @@ final class PartGenerator extends BaseSubscriber { this.releaseOnDispose = false; if (changeState(this, newState)) { - newState.writeBuffers(this.content); if (this.completed) { @@ -512,10 +510,9 @@ final class PartGenerator extends BaseSubscriber { public String toString() { return "CREATE-FILE"; } - - } + private final class IdleFileState implements State { private final HttpHeaders headers; @@ -542,7 +539,6 @@ final class PartGenerator extends BaseSubscriber { public void body(DataBuffer dataBuffer) { long count = this.byteCount.addAndGet(dataBuffer.readableByteCount()); if (PartGenerator.this.maxDiskUsagePerPart == -1 || count <= PartGenerator.this.maxDiskUsagePerPart) { - this.closeOnDispose = false; this.deleteOnDispose = false; WritingFileState newState = new WritingFileState(this); @@ -582,16 +578,14 @@ final class PartGenerator extends BaseSubscriber { } } - @Override public String toString() { return "IDLE-FILE"; } - } - private final class WritingFileState implements State { + private final class WritingFileState implements State { private final HttpHeaders headers; @@ -643,9 +637,7 @@ final class PartGenerator extends BaseSubscriber { Mono.just(dataBuffer) .flatMap(this::writeInternal) .subscribeOn(PartGenerator.this.blockingOperationScheduler) - .subscribe(null, - PartGenerator.this::emitError, - this::writeComplete); + .subscribe(null, PartGenerator.this::emitError, this::writeComplete); } public void writeBuffers(Iterable dataBuffers) { @@ -653,9 +645,7 @@ final class PartGenerator extends BaseSubscriber { .concatMap(this::writeInternal) .then() .subscribeOn(PartGenerator.this.blockingOperationScheduler) - .subscribe(null, - PartGenerator.this::emitError, - this::writeComplete); + .subscribe(null, PartGenerator.this::emitError, this::writeComplete); } private void writeComplete() { @@ -710,7 +700,6 @@ final class PartGenerator extends BaseSubscriber { this.disposed = true; } - @Override public String toString() { return "WRITE-FILE"; @@ -738,7 +727,6 @@ final class PartGenerator extends BaseSubscriber { public String toString() { return "DISPOSED"; } - } } diff --git a/spring-webflux/src/test/java/org/springframework/web/reactive/function/client/WebClientIntegrationTests.java b/spring-webflux/src/test/java/org/springframework/web/reactive/function/client/WebClientIntegrationTests.java index 92d464e6772..7c059f3c715 100644 --- a/spring-webflux/src/test/java/org/springframework/web/reactive/function/client/WebClientIntegrationTests.java +++ b/spring-webflux/src/test/java/org/springframework/web/reactive/function/client/WebClientIntegrationTests.java @@ -441,7 +441,7 @@ class WebClientIntegrationTests { } @Test // gh-24788 - void retrieveJsonArrayAsBodilessEntityShouldReleasesConnection() throws IOException { + void retrieveJsonArrayAsBodilessEntityShouldReleaseConnection() throws IOException { // Constrain connection pool and make consecutive requests. // 2nd request should hang if response was not drained. diff --git a/spring-webflux/src/test/java/org/springframework/web/reactive/handler/SimpleUrlHandlerMappingTests.java b/spring-webflux/src/test/java/org/springframework/web/reactive/handler/SimpleUrlHandlerMappingTests.java index 649be0e411d..80eceefd7db 100644 --- a/spring-webflux/src/test/java/org/springframework/web/reactive/handler/SimpleUrlHandlerMappingTests.java +++ b/spring-webflux/src/test/java/org/springframework/web/reactive/handler/SimpleUrlHandlerMappingTests.java @@ -94,7 +94,7 @@ class SimpleUrlHandlerMappingTests { testUrl("outofpattern*ye", null, handlerMapping, null); } - void testUrl(String url, Object bean, HandlerMapping handlerMapping, String pathWithinMapping) { + private static void testUrl(String url, Object bean, HandlerMapping handlerMapping, String pathWithinMapping) { MockServerHttpRequest request = MockServerHttpRequest.method(HttpMethod.GET, URI.create(url)).build(); ServerWebExchange exchange = MockServerWebExchange.from(request); Object actual = handlerMapping.getHandler(exchange).block(); @@ -127,7 +127,8 @@ class SimpleUrlHandlerMappingTests { @Configuration static class WebConfig { - @Bean @SuppressWarnings("unused") + @Bean + @SuppressWarnings("unused") public SimpleUrlHandlerMapping handlerMapping() { SimpleUrlHandlerMapping hm = new SimpleUrlHandlerMapping(); hm.registerHandler("/welcome*", otherController()); diff --git a/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultServerRequestTests.java b/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultServerRequestTests.java index ce17f09353c..63256433b16 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultServerRequestTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/servlet/function/DefaultServerRequestTests.java @@ -409,7 +409,6 @@ class DefaultServerRequestTests { ); } - @ParameterizedHttpMethodTest void checkNotModifiedTimestamp(String method) { MockHttpServletRequest servletRequest = PathPatternsTestUtils.initRequest(method, "/", true);