From f97b9236a273104c31f6663a86010d5c00fd6816 Mon Sep 17 00:00:00 2001 From: Lorrin Nelson Date: Mon, 10 Jul 2017 13:13:18 -0700 Subject: [PATCH 1/2] Support configuring the Jackson Object Mapper --- .../main/java/ro/pippo/jackson/JacksonBaseEngine.java | 11 +++++++---- .../main/java/ro/pippo/jackson/JacksonJsonEngine.java | 2 +- .../main/java/ro/pippo/jackson/JacksonXmlEngine.java | 2 +- .../main/java/ro/pippo/jackson/JacksonYamlEngine.java | 2 +- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonBaseEngine.java b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonBaseEngine.java index 0011a0ef8..3233073bf 100644 --- a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonBaseEngine.java +++ b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonBaseEngine.java @@ -23,7 +23,6 @@ import com.fasterxml.jackson.module.afterburner.AfterburnerModule; import ro.pippo.core.Application; import ro.pippo.core.ContentTypeEngine; -import ro.pippo.core.HttpConstants; import ro.pippo.core.PippoRuntimeException; import java.io.IOException; @@ -36,17 +35,21 @@ */ public abstract class JacksonBaseEngine implements ContentTypeEngine { - protected ObjectMapper objectMapper; + private ObjectMapper objectMapper; @Override public void init(Application application) { - objectMapper = getObjectMapper(); + objectMapper = constructObjectMapper(); objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); objectMapper.setTimeZone(TimeZone.getDefault()); objectMapper.registerModule(new AfterburnerModule()); } - protected abstract ObjectMapper getObjectMapper(); + public ObjectMapper getObjectMapper() { + return objectMapper; + } + + protected abstract ObjectMapper constructObjectMapper(); @Override public String toString(Object object) { diff --git a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonJsonEngine.java b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonJsonEngine.java index ccc186bd1..e73aca21b 100644 --- a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonJsonEngine.java +++ b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonJsonEngine.java @@ -29,7 +29,7 @@ public class JacksonJsonEngine extends JacksonBaseEngine { @Override - protected ObjectMapper getObjectMapper() { + protected ObjectMapper constructObjectMapper() { return new ObjectMapper(); } diff --git a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonXmlEngine.java b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonXmlEngine.java index c6dc7fe0a..84599f42f 100644 --- a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonXmlEngine.java +++ b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonXmlEngine.java @@ -31,7 +31,7 @@ public class JacksonXmlEngine extends JacksonBaseEngine { @Override - protected ObjectMapper getObjectMapper() { + protected ObjectMapper constructObjectMapper() { // Check out: https://github.com/FasterXML/jackson-dataformat-xml JacksonXmlModule module = new JacksonXmlModule(); // setDefaultUseWrapper produces more similar output to diff --git a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonYamlEngine.java b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonYamlEngine.java index aeb21bef6..eb0133f99 100644 --- a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonYamlEngine.java +++ b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonYamlEngine.java @@ -30,7 +30,7 @@ public class JacksonYamlEngine extends JacksonBaseEngine { @Override - protected ObjectMapper getObjectMapper() { + protected ObjectMapper constructObjectMapper() { return new YAMLMapper(); } From ffdc51dbf1c5bd3bf1e4cb85163e3662a9339101 Mon Sep 17 00:00:00 2001 From: Lorrin Nelson Date: Fri, 21 Jul 2017 16:44:21 -0700 Subject: [PATCH 2/2] Back out superflous accessor --- .../src/main/java/ro/pippo/jackson/JacksonBaseEngine.java | 8 ++------ .../src/main/java/ro/pippo/jackson/JacksonJsonEngine.java | 2 +- .../src/main/java/ro/pippo/jackson/JacksonXmlEngine.java | 2 +- .../src/main/java/ro/pippo/jackson/JacksonYamlEngine.java | 2 +- 4 files changed, 5 insertions(+), 9 deletions(-) diff --git a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonBaseEngine.java b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonBaseEngine.java index 3233073bf..8591526c7 100644 --- a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonBaseEngine.java +++ b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonBaseEngine.java @@ -39,17 +39,13 @@ public abstract class JacksonBaseEngine implements ContentTypeEngine { @Override public void init(Application application) { - objectMapper = constructObjectMapper(); + objectMapper = createObjectMapper(); objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); objectMapper.setTimeZone(TimeZone.getDefault()); objectMapper.registerModule(new AfterburnerModule()); } - public ObjectMapper getObjectMapper() { - return objectMapper; - } - - protected abstract ObjectMapper constructObjectMapper(); + protected abstract ObjectMapper createObjectMapper(); @Override public String toString(Object object) { diff --git a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonJsonEngine.java b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonJsonEngine.java index e73aca21b..46b026443 100644 --- a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonJsonEngine.java +++ b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonJsonEngine.java @@ -29,7 +29,7 @@ public class JacksonJsonEngine extends JacksonBaseEngine { @Override - protected ObjectMapper constructObjectMapper() { + protected ObjectMapper createObjectMapper() { return new ObjectMapper(); } diff --git a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonXmlEngine.java b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonXmlEngine.java index 84599f42f..2b25543c7 100644 --- a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonXmlEngine.java +++ b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonXmlEngine.java @@ -31,7 +31,7 @@ public class JacksonXmlEngine extends JacksonBaseEngine { @Override - protected ObjectMapper constructObjectMapper() { + protected ObjectMapper createObjectMapper() { // Check out: https://github.com/FasterXML/jackson-dataformat-xml JacksonXmlModule module = new JacksonXmlModule(); // setDefaultUseWrapper produces more similar output to diff --git a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonYamlEngine.java b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonYamlEngine.java index eb0133f99..4f30bd266 100644 --- a/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonYamlEngine.java +++ b/pippo-content-type-parent/pippo-jackson/src/main/java/ro/pippo/jackson/JacksonYamlEngine.java @@ -30,7 +30,7 @@ public class JacksonYamlEngine extends JacksonBaseEngine { @Override - protected ObjectMapper constructObjectMapper() { + protected ObjectMapper createObjectMapper() { return new YAMLMapper(); }