This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch camel-3.x
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-3.x by this push:
new 8613fc0f30e CAMEL-19009: camel-gson - Date Format with GsonBuilder
8613fc0f30e is described below
commit 8613fc0f30ec53a1a2b126d4951ed935b4fe69e7
Author: Claus Ibsen <[email protected]>
AuthorDate: Sun Feb 5 12:11:40 2023 +0100
CAMEL-19009: camel-gson - Date Format with GsonBuilder
---
.../resources/org/apache/camel/catalog/schemas/camel-spring.xsd | 9 +++++++++
.../org/apache/camel/component/jackson/JacksonDataFormat.java | 5 +++--
.../apache/camel/reifier/dataformat/JsonDataFormatReifier.java | 4 +++-
3 files changed, 15 insertions(+), 3 deletions(-)
diff --git
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
index 5913bea9e8b..0b5d8f01278 100644
---
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
+++
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
@@ -11587,6 +11587,15 @@ using Gson.
</xs:documentation>
</xs:annotation>
</xs:attribute>
+
+ <xs:attribute name="dateFormatPattern" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en"><![CDATA[
+To configure the date format while marshall or unmarshall Date fields in JSON
+using Gson.
+ ]]></xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
</xs:extension>
diff --git
a/components/camel-jackson/src/main/java/org/apache/camel/component/jackson/JacksonDataFormat.java
b/components/camel-jackson/src/main/java/org/apache/camel/component/jackson/JacksonDataFormat.java
index 092767524ee..bd5d3b67f75 100644
---
a/components/camel-jackson/src/main/java/org/apache/camel/component/jackson/JacksonDataFormat.java
+++
b/components/camel-jackson/src/main/java/org/apache/camel/component/jackson/JacksonDataFormat.java
@@ -21,10 +21,11 @@ import org.apache.camel.spi.Metadata;
import org.apache.camel.spi.annotations.Dataformat;
/**
- * Marshal POJOs to JSON and back using <a
href="https://github.com/FasterXML/jackson">Jackson</a>
+ * Marshal POJOs to JSON and back using Jackson
*/
@Dataformat("jackson")
-@Metadata(excludeProperties = "library,permissions,dropRootNode")
+@Metadata(excludeProperties =
"library,permissions,dropRootNode,dateFormatPattern")
+>>>>>>> 3fb33a356f2 (CAMEL-19009: camel-gson - Date Format with GsonBuilder)
public class JacksonDataFormat extends AbstractJacksonDataFormat {
/**
diff --git
a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/dataformat/JsonDataFormatReifier.java
b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/dataformat/JsonDataFormatReifier.java
index d6eb5829652..4a66fab8148 100644
---
a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/dataformat/JsonDataFormatReifier.java
+++
b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/dataformat/JsonDataFormatReifier.java
@@ -48,7 +48,6 @@ public class JsonDataFormatReifier extends
DataFormatReifier<JsonDataFormat> {
properties.put("unmarshalType", or(definition.getUnmarshalType(),
definition.getUnmarshalTypeName()));
}
properties.put("prettyPrint", definition.getPrettyPrint());
- properties.put("dateFormatPattern", definition.getDateFormatPattern());
properties.put("include", definition.getInclude());
properties.put("allowJmsType", definition.getAllowJmsType());
if (definition.getLibrary() != JsonLibrary.XStream) {
@@ -79,6 +78,9 @@ public class JsonDataFormatReifier extends
DataFormatReifier<JsonDataFormat> {
properties.put("namingStrategy", definition.getNamingStrategy());
properties.put("timezone", definition.getTimezone());
}
+ if (definition.getLibrary() == JsonLibrary.Fastjson ||
definition.getLibrary() == JsonLibrary.Gson) {
+ properties.put("dateFormatPattern",
definition.getDateFormatPattern());
+ }
}
}