This is an automated email from the ASF dual-hosted git repository. acosentino pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
commit 147766122fd5912b7269f53ac6ae26a29ff39c97 Author: Andrea Cosentino <anco...@gmail.com> AuthorDate: Mon Jan 25 08:54:07 2021 +0100 CAMEL-16061 - Added custom Object mapper option to endpoint --- .../apache/camel/component/jslt/JsltEndpoint.java | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/components/camel-jslt/src/main/java/org/apache/camel/component/jslt/JsltEndpoint.java b/components/camel-jslt/src/main/java/org/apache/camel/component/jslt/JsltEndpoint.java index f188f69..003b5c4 100644 --- a/components/camel-jslt/src/main/java/org/apache/camel/component/jslt/JsltEndpoint.java +++ b/components/camel-jslt/src/main/java/org/apache/camel/component/jslt/JsltEndpoint.java @@ -62,6 +62,8 @@ public class JsltEndpoint extends ResourceEndpoint { private boolean prettyPrint; @UriParam(defaultValue = "false") private boolean mapBigDecimalAsFloats; + @UriParam + private ObjectMapper objectMapper; public JsltEndpoint() { } @@ -147,7 +149,12 @@ public class JsltEndpoint extends ResourceEndpoint { JsonNode input; - ObjectMapper objectMapper = new ObjectMapper(); + ObjectMapper objectMapper; + if (ObjectHelper.isEmpty(getObjectMapper())) { + objectMapper = new ObjectMapper(); + } else { + objectMapper = getObjectMapper(); + } if (isMapBigDecimalAsFloats()) { objectMapper.enable(DeserializationFeature.USE_BIG_DECIMAL_FOR_FLOATS); } @@ -240,4 +247,15 @@ public class JsltEndpoint extends ResourceEndpoint { public void setMapBigDecimalAsFloats(boolean mapBigDecimalAsFloats) { this.mapBigDecimalAsFloats = mapBigDecimalAsFloats; } + + public ObjectMapper getObjectMapper() { + return objectMapper; + } + + /** + * Setting a custom JSON Object Mapper to be used + */ + public void setObjectMapper(ObjectMapper objectMapper) { + this.objectMapper = objectMapper; + } }