From 9649673f9b63007fd7c1094d192c68ae29811362 Mon Sep 17 00:00:00 2001 From: Glenn Renfro Date: Wed, 9 Jul 2025 10:39:18 -0400 Subject: [PATCH 1/4] Mark CompositeCodec(defaultCodec) ctor for deprecation Fixes: https://github.com/spring-projects/spring-integration/issues/10197 Update deprecated ctor to use an empty map for delegates instead of null. **Auto-cherry-pick to `6.4.x`** --- .../org/springframework/integration/codec/CompositeCodec.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java b/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java index 423cb7fd1b5..74e85e49db3 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java @@ -43,8 +43,10 @@ public CompositeCodec(Map, Codec> delegates, Codec defaultCodec) { this.delegates = new HashMap, Codec>(delegates); } + @Deprecated(since = "6.4", forRemoval = true) public CompositeCodec(Codec defaultCodec) { - this(null, defaultCodec); + this.defaultCodec = defaultCodec; + this.delegates = Map.of(); } @Override From b0d115eae0fcf1c51239f76b47a04b3dfa0aac94 Mon Sep 17 00:00:00 2001 From: Artem Bilan Date: Wed, 9 Jul 2025 13:32:47 -0400 Subject: [PATCH 2/4] Fix `since` in the deprecated ctor Signed-off-by: Artem Bilan --- .../org/springframework/integration/codec/CompositeCodec.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java b/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java index 74e85e49db3..ac2d1de6df6 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java @@ -43,7 +43,7 @@ public CompositeCodec(Map, Codec> delegates, Codec defaultCodec) { this.delegates = new HashMap, Codec>(delegates); } - @Deprecated(since = "6.4", forRemoval = true) + @Deprecated(since = "6.4.6", forRemoval = true) public CompositeCodec(Codec defaultCodec) { this.defaultCodec = defaultCodec; this.delegates = Map.of(); From 0b058501bea5f28b5802672ef9c57ee00f07c8e3 Mon Sep 17 00:00:00 2001 From: Artem Bilan Date: Wed, 9 Jul 2025 13:36:04 -0400 Subject: [PATCH 3/4] Add JavaDoc to the deprecated ctor Signed-off-by: Artem Bilan --- .../springframework/integration/codec/CompositeCodec.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java b/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java index ac2d1de6df6..5c2b89ec8ef 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java @@ -42,7 +42,10 @@ public CompositeCodec(Map, Codec> delegates, Codec defaultCodec) { this.defaultCodec = defaultCodec; this.delegates = new HashMap, Codec>(delegates); } - + /** + * @param defaultCodec codec for fallback + * @deprecated since 6.4.6 in favor of {@link #CompositeCodec(Map, Codec)} with provided delegates. + */ @Deprecated(since = "6.4.6", forRemoval = true) public CompositeCodec(Codec defaultCodec) { this.defaultCodec = defaultCodec; From aed9780906144b7ef36ac0981e73e974e6ff6841 Mon Sep 17 00:00:00 2001 From: Artem Bilan Date: Wed, 9 Jul 2025 13:45:37 -0400 Subject: [PATCH 4/4] Add missed blank line before ctor definition Signed-off-by: Artem Bilan --- .../org/springframework/integration/codec/CompositeCodec.java | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java b/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java index 5c2b89ec8ef..d386485c198 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/codec/CompositeCodec.java @@ -42,6 +42,7 @@ public CompositeCodec(Map, Codec> delegates, Codec defaultCodec) { this.defaultCodec = defaultCodec; this.delegates = new HashMap, Codec>(delegates); } + /** * @param defaultCodec codec for fallback * @deprecated since 6.4.6 in favor of {@link #CompositeCodec(Map, Codec)} with provided delegates.