From 4ac1ee971977d9f4432965d74bf059e25c98468a Mon Sep 17 00:00:00 2001 From: Tatu Saloranta Date: Thu, 6 Feb 2025 20:38:49 -0800 Subject: [PATCH] Fix #4956 --- release-notes/VERSION | 1 + src/main/java/tools/jackson/databind/JsonNode.java | 2 +- src/main/java/tools/jackson/databind/node/BaseJsonNode.java | 2 +- .../java/tools/jackson/databind/node/ContainerNode.java | 2 +- .../deser/jdk/CustomMapKeyDeserializer4444Test.java | 1 - src/test/java/tools/jackson/databind/misc/TestBlocking.java | 2 -- .../java/tools/jackson/databind/node/ArrayNodeTest.java | 2 +- .../java/tools/jackson/databind/node/MissingNodeTest.java | 6 +++--- src/test/java/tools/jackson/databind/node/NullNodeTest.java | 2 +- .../java/tools/jackson/databind/node/ObjectNodeTest.java | 2 +- 10 files changed, 10 insertions(+), 12 deletions(-) diff --git a/release-notes/VERSION b/release-notes/VERSION index 08e1d1a18b..7dacfdcbdf 100644 --- a/release-notes/VERSION +++ b/release-notes/VERSION @@ -97,6 +97,7 @@ Versions: 3.x (for earlier see VERSION-2.x) #4879: Rename `TextNode` as `StringNode`; `JsonNode.xxxTextYyy()` (mostly) as `JsonNode.xxxStringYyy()` [JSTEP-3] #4891: Change 3.0 to use `module-info.java` directly for build (instead of via Moditect) +#4956: Rename `JsonNode.isContainerNode()` as `isContainerNode()` - Remove `MappingJsonFactory` - Add context parameter for `TypeSerializer` contextualization (`forProperty()`) - Default for `JsonNodeFeature.STRIP_TRAILING_BIGDECIMAL_ZEROES` changed to `false` for 3.0 diff --git a/src/main/java/tools/jackson/databind/JsonNode.java b/src/main/java/tools/jackson/databind/JsonNode.java index 23e1513e68..87ce0a9615 100644 --- a/src/main/java/tools/jackson/databind/JsonNode.java +++ b/src/main/java/tools/jackson/databind/JsonNode.java @@ -140,7 +140,7 @@ public final boolean isValueNode() } @Override - public boolean isContainerNode() { + public boolean isContainer() { return false; } diff --git a/src/main/java/tools/jackson/databind/node/BaseJsonNode.java b/src/main/java/tools/jackson/databind/node/BaseJsonNode.java index f947d8542f..52cb479703 100644 --- a/src/main/java/tools/jackson/databind/node/BaseJsonNode.java +++ b/src/main/java/tools/jackson/databind/node/BaseJsonNode.java @@ -180,7 +180,7 @@ protected boolean _withXxxMayReplace(JsonNode node, OverwriteMode overwriteMode) case NULLS: return node.isNull(); case SCALARS: - return !node.isContainerNode(); + return !node.isContainer(); default: case ALL: return true; diff --git a/src/main/java/tools/jackson/databind/node/ContainerNode.java b/src/main/java/tools/jackson/databind/node/ContainerNode.java index 690e754077..407ffca989 100644 --- a/src/main/java/tools/jackson/databind/node/ContainerNode.java +++ b/src/main/java/tools/jackson/databind/node/ContainerNode.java @@ -32,7 +32,7 @@ protected ContainerNode(JsonNodeFactory nc) { protected ContainerNode() { _nodeFactory = null; } // only for JDK ser @Override - public boolean isContainerNode() { + public boolean isContainer() { return true; } diff --git a/src/test/java/tools/jackson/databind/deser/jdk/CustomMapKeyDeserializer4444Test.java b/src/test/java/tools/jackson/databind/deser/jdk/CustomMapKeyDeserializer4444Test.java index 128535fb69..b4fd19f717 100644 --- a/src/test/java/tools/jackson/databind/deser/jdk/CustomMapKeyDeserializer4444Test.java +++ b/src/test/java/tools/jackson/databind/deser/jdk/CustomMapKeyDeserializer4444Test.java @@ -1,6 +1,5 @@ package tools.jackson.databind.deser.jdk; -import java.io.IOException; import java.util.Map; import org.junit.jupiter.api.Test; diff --git a/src/test/java/tools/jackson/databind/misc/TestBlocking.java b/src/test/java/tools/jackson/databind/misc/TestBlocking.java index 92522a7dda..1078c77413 100644 --- a/src/test/java/tools/jackson/databind/misc/TestBlocking.java +++ b/src/test/java/tools/jackson/databind/misc/TestBlocking.java @@ -1,7 +1,5 @@ package tools.jackson.databind.misc; -import java.io.IOException; - import org.junit.jupiter.api.Test; import tools.jackson.core.*; diff --git a/src/test/java/tools/jackson/databind/node/ArrayNodeTest.java b/src/test/java/tools/jackson/databind/node/ArrayNodeTest.java index 0b9cda35c6..583c56464c 100644 --- a/src/test/java/tools/jackson/databind/node/ArrayNodeTest.java +++ b/src/test/java/tools/jackson/databind/node/ArrayNodeTest.java @@ -35,7 +35,7 @@ public void testDirectCreation() throws Exception assertFalse(n.canConvertToExactIntegral()); assertTrue(n.isArray()); assertFalse(n.isObject()); - assertTrue(n.isContainerNode()); + assertTrue(n.isContainer()); assertStandardEquals(n); assertFalse(n.values().iterator().hasNext()); diff --git a/src/test/java/tools/jackson/databind/node/MissingNodeTest.java b/src/test/java/tools/jackson/databind/node/MissingNodeTest.java index 0f33ad83c6..d5b077c2a9 100644 --- a/src/test/java/tools/jackson/databind/node/MissingNodeTest.java +++ b/src/test/java/tools/jackson/databind/node/MissingNodeTest.java @@ -45,7 +45,7 @@ public void testMissingViaMapper() throws Exception String JSON = "[ { }, [ ] ]"; JsonNode result = objectMapper().readTree(new StringReader(JSON)); - assertTrue(result.isContainerNode()); + assertTrue(result.isContainer()); assertTrue(result.isArray()); assertEquals(2, result.size()); @@ -58,7 +58,7 @@ public void testMissingViaMapper() throws Exception Iterator it = result.iterator(); JsonNode onode = it.next(); - assertTrue(onode.isContainerNode()); + assertTrue(onode.isContainer()); assertTrue(onode.isObject()); assertEquals(0, onode.size()); assertFalse(onode.isMissingNode()); // real node @@ -83,7 +83,7 @@ public void testMissingViaMapper() throws Exception // and same for the array node JsonNode anode = it.next(); - assertTrue(anode.isContainerNode()); + assertTrue(anode.isContainer()); assertTrue(anode.isArray()); assertFalse(anode.isMissingNode()); // real node assertEquals(0, anode.size()); diff --git a/src/test/java/tools/jackson/databind/node/NullNodeTest.java b/src/test/java/tools/jackson/databind/node/NullNodeTest.java index 6eea5da8f9..8a05378e62 100644 --- a/src/test/java/tools/jackson/databind/node/NullNodeTest.java +++ b/src/test/java/tools/jackson/databind/node/NullNodeTest.java @@ -33,7 +33,7 @@ public void testBasicsWithNullNode() throws Exception NullNode n = NullNode.instance; // basic properties - assertFalse(n.isContainerNode()); + assertFalse(n.isContainer()); assertFalse(n.isBigDecimal()); assertFalse(n.isBigInteger()); assertFalse(n.isBinary()); diff --git a/src/test/java/tools/jackson/databind/node/ObjectNodeTest.java b/src/test/java/tools/jackson/databind/node/ObjectNodeTest.java index 5926f0f090..617eb0c3e3 100644 --- a/src/test/java/tools/jackson/databind/node/ObjectNodeTest.java +++ b/src/test/java/tools/jackson/databind/node/ObjectNodeTest.java @@ -80,7 +80,7 @@ public void testSimpleObject() throws Exception // basic properties first: assertFalse(root.isValueNode()); - assertTrue(root.isContainerNode()); + assertTrue(root.isContainer()); assertFalse(root.isArray()); assertTrue(root.isObject()); assertEquals(2, root.size());