From 22211a01ce5e07331a20fd9c256073a9d5392ce1 Mon Sep 17 00:00:00 2001 From: Juergen Hoeller Date: Wed, 13 Nov 2019 17:23:23 +0100 Subject: [PATCH] Polishing --- .../beans/factory/support/ConstructorResolver.java | 4 +++- .../event/AnnotationDrivenEventListenerTests.java | 13 ++++++++----- .../core/codec/AbstractDataBufferDecoder.java | 1 + .../codec/ServerSentEventHttpMessageReader.java | 1 + 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/spring-beans/src/main/java/org/springframework/beans/factory/support/ConstructorResolver.java b/spring-beans/src/main/java/org/springframework/beans/factory/support/ConstructorResolver.java index d98b72efc7..e5acd029ea 100644 --- a/spring-beans/src/main/java/org/springframework/beans/factory/support/ConstructorResolver.java +++ b/spring-beans/src/main/java/org/springframework/beans/factory/support/ConstructorResolver.java @@ -486,7 +486,9 @@ class ConstructorResolver { } } - candidates.sort(AutowireUtils.EXECUTABLE_COMPARATOR); + if (candidates.size() > 1) { // explicitly skip immutable singletonList + candidates.sort(AutowireUtils.EXECUTABLE_COMPARATOR); + } ConstructorArgumentValues resolvedValues = null; boolean autowiring = (mbd.getResolvedAutowireMode() == AutowireCapableBeanFactory.AUTOWIRE_CONSTRUCTOR); diff --git a/spring-context/src/test/java/org/springframework/context/event/AnnotationDrivenEventListenerTests.java b/spring-context/src/test/java/org/springframework/context/event/AnnotationDrivenEventListenerTests.java index 1462146b9b..95ead7c1d9 100644 --- a/spring-context/src/test/java/org/springframework/context/event/AnnotationDrivenEventListenerTests.java +++ b/spring-context/src/test/java/org/springframework/context/event/AnnotationDrivenEventListenerTests.java @@ -850,9 +850,9 @@ public class AnnotationDrivenEventListenerTests { this.eventCollector.addEvent(this, event); } - @Override @EventListener @Async + @Override public void handleAsync(AnotherTestEvent event) { assertThat(Thread.currentThread().getName()).isNotEqualTo(event.content); this.eventCollector.addEvent(this, event); @@ -877,9 +877,9 @@ public class AnnotationDrivenEventListenerTests { this.eventCollector.addEvent(this, event); } - @Override @EventListener @Async + @Override public void handleAsync(AnotherTestEvent event) { assertThat(Thread.currentThread().getName()).isNotEqualTo(event.content); this.eventCollector.addEvent(this, event); @@ -994,20 +994,20 @@ public class AnnotationDrivenEventListenerTests { super.handle(event); } - @Override @EventListener(condition = "#payload.startsWith('OK')") + @Override public void handleString(String payload) { super.handleString(payload); } - @Override @ConditionalEvent("#root.event.timestamp > #p0") + @Override public void handleTimestamp(Long timestamp) { collectEvent(timestamp); } - @Override @ConditionalEvent("@conditionEvaluator.valid(#p0)") + @Override public void handleRatio(Double ratio) { collectEvent(ratio); } @@ -1085,6 +1085,7 @@ public class AnnotationDrivenEventListenerTests { } } + @Configuration @Import(UseMissingEventListener.class) public static class MissingEventListener { @@ -1095,6 +1096,7 @@ public class AnnotationDrivenEventListenerTests { } } + @Component public static class MyEventListener { @@ -1104,6 +1106,7 @@ public class AnnotationDrivenEventListenerTests { } } + public static class UseMissingEventListener { @Inject diff --git a/spring-core/src/main/java/org/springframework/core/codec/AbstractDataBufferDecoder.java b/spring-core/src/main/java/org/springframework/core/codec/AbstractDataBufferDecoder.java index ff01c0b47f..0fd5870b2a 100644 --- a/spring-core/src/main/java/org/springframework/core/codec/AbstractDataBufferDecoder.java +++ b/spring-core/src/main/java/org/springframework/core/codec/AbstractDataBufferDecoder.java @@ -102,6 +102,7 @@ public abstract class AbstractDataBufferDecoder extends AbstractDecoder { * {@link #decode(DataBuffer, ResolvableType, MimeType, Map)} instead */ @Deprecated + @Nullable protected T decodeDataBuffer(DataBuffer buffer, ResolvableType elementType, @Nullable MimeType mimeType, @Nullable Map hints) { diff --git a/spring-web/src/main/java/org/springframework/http/codec/ServerSentEventHttpMessageReader.java b/spring-web/src/main/java/org/springframework/http/codec/ServerSentEventHttpMessageReader.java index b7553e168c..d6b9c9cb9d 100644 --- a/spring-web/src/main/java/org/springframework/http/codec/ServerSentEventHttpMessageReader.java +++ b/spring-web/src/main/java/org/springframework/http/codec/ServerSentEventHttpMessageReader.java @@ -155,6 +155,7 @@ public class ServerSentEventHttpMessageReader implements HttpMessageReader hints) { if (String.class == dataType.resolve()) { return data.substring(0, data.length() - 1); -- GitLab