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;
+       }
 }

Reply via email to