Skip to content

Commit 31d1a0f

Browse files
committed
feat: migrate to Jackson 3.x (tools.jackson 3.2.1) per easy4j-deploy spec
1 parent 1c05907 commit 31d1a0f

6 files changed

Lines changed: 28 additions & 20 deletions

File tree

pom.xml

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -483,7 +483,8 @@
483483
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
484484
<!-- Dependency versions -->
485485
<commons-exec.version>1.6.0</commons-exec.version>
486-
<jackson.version>2.22.0</jackson.version>
486+
<jackson.version>3.2.1</jackson.version>
487+
<jackson-bom.version>3.2.1</jackson-bom.version>
487488
<junit-jupiter.version>6.1.0</junit-jupiter.version>
488489
<junit.version>5.11.4</junit.version>
489490
<lombok.version>1.18.46</lombok.version>
@@ -510,13 +511,16 @@
510511

511512
<dependencyManagement>
512513
<dependencies>
513-
514+
<!-- Jackson BOM -->
514515
<dependency>
515-
<groupId>com.fasterxml.jackson.core</groupId>
516-
<artifactId>jackson-databind</artifactId>
517-
<version>${jackson.version}</version>
516+
<groupId>tools.jackson</groupId>
517+
<artifactId>jackson-bom</artifactId>
518+
<version>${jackson-bom.version}</version>
519+
<type>pom</type>
520+
<scope>import</scope>
518521
</dependency>
519522

523+
520524
<dependency>
521525
<groupId>org.apache.commons</groupId>
522526
<artifactId>commons-exec</artifactId>
@@ -549,7 +553,7 @@
549553
<dependencies>
550554

551555
<dependency>
552-
<groupId>com.fasterxml.jackson.core</groupId>
556+
<groupId>tools.jackson.core</groupId>
553557
<artifactId>jackson-databind</artifactId>
554558
</dependency>
555559

src/main/java/io/github/easy4j/codex/CodexClient.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,10 @@
1515
*/
1616
package io.github.easy4j.codex;
1717

18-
import com.fasterxml.jackson.core.type.TypeReference;
19-
import com.fasterxml.jackson.databind.DeserializationFeature;
20-
import com.fasterxml.jackson.databind.ObjectMapper;
18+
import tools.jackson.core.type.TypeReference;
19+
import tools.jackson.databind.DeserializationFeature;
20+
import tools.jackson.databind.ObjectMapper;
21+
import tools.jackson.databind.json.JsonMapper;
2122
import io.github.easy4j.codex.cli.CodexCli;
2223
import io.github.easy4j.codex.cli.CodexCliExecutor;
2324
import io.github.easy4j.codex.cli.CodexCliResult;
@@ -61,8 +62,7 @@
6162
public class CodexClient implements AutoCloseable {
6263

6364
private static final Logger log = LoggerFactory.getLogger(CodexClient.class);
64-
private static final ObjectMapper MAPPER = new ObjectMapper()
65-
.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
65+
private static final ObjectMapper MAPPER = JsonMapper.builder().disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES).build();
6666

6767
private final CodexClientConfig config;
6868
private final CodexCli cli;

src/test/java/io/github/easy4j/codex/CodexClientTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
*/
1616
package io.github.easy4j.codex;
1717

18-
import com.fasterxml.jackson.databind.ObjectMapper;
18+
import tools.jackson.databind.ObjectMapper;
19+
import tools.jackson.databind.json.JsonMapper;
1920
import io.github.easy4j.codex.cli.CodexCli;
2021
import io.github.easy4j.codex.cli.CodexCliExecutor;
2122
import io.github.easy4j.codex.cli.CodexCliResult;
@@ -43,7 +44,7 @@
4344
*/
4445
class CodexClientTest {
4546

46-
private static final ObjectMapper MAPPER = new ObjectMapper();
47+
private static final ObjectMapper MAPPER = new JsonMapper();
4748

4849
private static CodexClientConfig echoConfig() {
4950
CodexClientConfig config = new CodexClientConfig();

src/test/java/io/github/easy4j/codex/model/CodexDoctorReportTest.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
*/
1616
package io.github.easy4j.codex.model;
1717

18-
import com.fasterxml.jackson.databind.ObjectMapper;
18+
import tools.jackson.databind.ObjectMapper;
19+
import tools.jackson.databind.json.JsonMapper;
1920
import org.junit.jupiter.api.Test;
2021

2122
import java.util.List;
@@ -32,7 +33,7 @@
3233
*/
3334
class CodexDoctorReportTest {
3435

35-
private final ObjectMapper mapper = new ObjectMapper();
36+
private final ObjectMapper mapper = new JsonMapper();
3637

3738
@Test
3839
void shouldProvideSensibleDefaults() {
@@ -95,7 +96,7 @@ void shouldIgnoreUnknownPropertiesOnReport() throws Exception {
9596
void shouldIgnoreUnknownPropertiesOnCheckItem() throws Exception {
9697
String json = "{\"name\":\"X\",\"status\":\"ok\",\"extra\":42,\"nested\":{}}";
9798
CodexDoctorReport.CheckItem item =
98-
new ObjectMapper().readValue(json, CodexDoctorReport.CheckItem.class);
99+
new JsonMapper().readValue(json, CodexDoctorReport.CheckItem.class);
99100

100101
assertEquals("X", item.getName());
101102
assertEquals("ok", item.getStatus());

src/test/java/io/github/easy4j/codex/model/CodexEventTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
*/
1616
package io.github.easy4j.codex.model;
1717

18-
import com.fasterxml.jackson.databind.ObjectMapper;
18+
import tools.jackson.databind.ObjectMapper;
19+
import tools.jackson.databind.json.JsonMapper;
1920
import org.junit.jupiter.api.Test;
2021

2122
import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -30,7 +31,7 @@
3031
*/
3132
class CodexEventTest {
3233

33-
private final ObjectMapper mapper = new ObjectMapper();
34+
private final ObjectMapper mapper = new JsonMapper();
3435

3536
@Test
3637
void shouldProvideSensibleDefaults() {

src/test/java/io/github/easy4j/codex/model/CodexSessionTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
*/
1616
package io.github.easy4j.codex.model;
1717

18-
import com.fasterxml.jackson.databind.ObjectMapper;
18+
import tools.jackson.databind.ObjectMapper;
19+
import tools.jackson.databind.json.JsonMapper;
1920
import org.junit.jupiter.api.Test;
2021

2122
import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -29,7 +30,7 @@
2930
*/
3031
class CodexSessionTest {
3132

32-
private final ObjectMapper mapper = new ObjectMapper();
33+
private final ObjectMapper mapper = new JsonMapper();
3334

3435
@Test
3536
void shouldProvideSensibleDefaults() {

0 commit comments

Comments
 (0)