Class JacksonXMLDataFormat
- java.lang.Object
-
- org.apache.camel.model.IdentifiedType
-
- org.apache.camel.model.DataFormatDefinition
-
- org.apache.camel.model.dataformat.JacksonXMLDataFormat
-
- All Implemented Interfaces:
ContentTypeHeaderAware
@Metadata(firstVersion="2.16.0", label="dataformat,transformation,xml", title="Jackson XML") public class JacksonXMLDataFormat extends DataFormatDefinition implements ContentTypeHeaderAware
Unmarshal an XML payloads to POJOs and back using XMLMapper extension of Jackson.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
JacksonXMLDataFormat.Builder
Builder
is a specific builder forJacksonXMLDataFormat
.
-
Constructor Summary
Constructors Constructor Description JacksonXMLDataFormat()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
getAllowJmsType()
String
getAllowUnmarshallType()
Class<?>
getCollectionType()
String
getCollectionTypeName()
String
getContentTypeHeader()
Whether the data format should set the Content-Type header with the type from the data format.String
getDisableFeatures()
String
getEnableFeatures()
String
getEnableJaxbAnnotationModule()
String
getInclude()
Class<?>
getJsonView()
String
getJsonViewTypeName()
String
getModuleClassNames()
String
getModuleRefs()
String
getPrettyPrint()
String
getTimezone()
Class<?>
getUnmarshalType()
String
getUnmarshalTypeName()
String
getUseList()
String
getXmlMapper()
void
setAllowJmsType(String allowJmsType)
Used for JMS users to allow the JMSType header from the JMS spec to specify a FQN classname to use to unmarshal to.void
setAllowUnmarshallType(String allowUnmarshallType)
If enabled then Jackson is allowed to attempt to use the CamelJacksonUnmarshalType header during the unmarshalling.void
setCollectionType(Class<?> collectionType)
void
setCollectionTypeName(String collectionTypeName)
Refers to a custom collection type to lookup in the registry to use.void
setContentTypeHeader(String contentTypeHeader)
Whether the data format should set the Content-Type header with the type from the data format.void
setDisableFeatures(String disableFeatures)
Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper.void
setEnableFeatures(String enableFeatures)
Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper.void
setEnableJaxbAnnotationModule(String enableJaxbAnnotationModule)
Whether to enable the JAXB annotations module when using jackson.void
setInclude(String include)
If you want to marshal a pojo to JSON, and the pojo has some fields with null values.void
setJsonView(Class<?> jsonView)
When marshalling a POJO to JSON you might want to exclude certain fields from the JSON output.void
setJsonViewTypeName(String jsonViewTypeName)
When marshalling a POJO to JSON you might want to exclude certain fields from the JSON output.void
setModuleClassNames(String moduleClassNames)
To use custom Jackson modules com.fasterxml.jackson.databind.Module specified as a String with FQN class names.void
setModuleRefs(String moduleRefs)
To use custom Jackson modules referred from the Camel registry.void
setPrettyPrint(String prettyPrint)
To enable pretty printing output nicely formatted.void
setTimezone(String timezone)
If set then Jackson will use the Timezone when marshalling/unmarshalling.void
setUnmarshalType(Class<?> unmarshalType)
Class of the java type to use when unmarshallingvoid
setUnmarshalTypeName(String unmarshalTypeName)
Class name of the java type to use when unmarshallingvoid
setUseList(String useList)
To unmarshal to a List of Map or a List of Pojo.void
setXmlMapper(String xmlMapper)
Lookup and use the existing XmlMapper with the given id.-
Methods inherited from class org.apache.camel.model.DataFormatDefinition
getDataFormat, getDataFormatName, getShortName, setDataFormat, setDataFormatName
-
Methods inherited from class org.apache.camel.model.IdentifiedType
getId, setId
-
-
-
-
Method Detail
-
getXmlMapper
public String getXmlMapper()
-
setXmlMapper
public void setXmlMapper(String xmlMapper)
Lookup and use the existing XmlMapper with the given id.
-
getPrettyPrint
public String getPrettyPrint()
-
setPrettyPrint
public void setPrettyPrint(String prettyPrint)
To enable pretty printing output nicely formatted. Is by default false.
-
getUnmarshalTypeName
public String getUnmarshalTypeName()
-
setUnmarshalTypeName
public void setUnmarshalTypeName(String unmarshalTypeName)
Class name of the java type to use when unmarshalling
-
getUnmarshalType
public Class<?> getUnmarshalType()
-
setUnmarshalType
public void setUnmarshalType(Class<?> unmarshalType)
Class of the java type to use when unmarshalling
-
getJsonViewTypeName
public String getJsonViewTypeName()
-
setJsonViewTypeName
public void setJsonViewTypeName(String jsonViewTypeName)
When marshalling a POJO to JSON you might want to exclude certain fields from the JSON output. With Jackson you can use JSON views to accomplish this. This option is to refer to the class which has @JsonView annotations
-
getJsonView
public Class<?> getJsonView()
-
setJsonView
public void setJsonView(Class<?> jsonView)
When marshalling a POJO to JSON you might want to exclude certain fields from the JSON output. With Jackson you can use JSON views to accomplish this. This option is to refer to the class which has @JsonView annotations
-
getInclude
public String getInclude()
-
setInclude
public void setInclude(String include)
If you want to marshal a pojo to JSON, and the pojo has some fields with null values. And you want to skip these null values, you can set this option to NON_NULL
-
getAllowJmsType
public String getAllowJmsType()
-
setAllowJmsType
public void setAllowJmsType(String allowJmsType)
Used for JMS users to allow the JMSType header from the JMS spec to specify a FQN classname to use to unmarshal to.
-
getCollectionTypeName
public String getCollectionTypeName()
-
setCollectionTypeName
public void setCollectionTypeName(String collectionTypeName)
Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to use different collection types than java.util.Collection based as default.
-
getCollectionType
public Class<?> getCollectionType()
-
setCollectionType
public void setCollectionType(Class<?> collectionType)
-
getUseList
public String getUseList()
-
setUseList
public void setUseList(String useList)
To unmarshal to a List of Map or a List of Pojo.
-
getEnableJaxbAnnotationModule
public String getEnableJaxbAnnotationModule()
-
setEnableJaxbAnnotationModule
public void setEnableJaxbAnnotationModule(String enableJaxbAnnotationModule)
Whether to enable the JAXB annotations module when using jackson. When enabled then JAXB annotations can be used by Jackson.
-
getModuleClassNames
public String getModuleClassNames()
-
setModuleClassNames
public void setModuleClassNames(String moduleClassNames)
To use custom Jackson modules com.fasterxml.jackson.databind.Module specified as a String with FQN class names. Multiple classes can be separated by comma.
-
getModuleRefs
public String getModuleRefs()
-
setModuleRefs
public void setModuleRefs(String moduleRefs)
To use custom Jackson modules referred from the Camel registry. Multiple modules can be separated by comma.
-
getEnableFeatures
public String getEnableFeatures()
-
setEnableFeatures
public void setEnableFeatures(String enableFeatures)
Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma
-
getDisableFeatures
public String getDisableFeatures()
-
setDisableFeatures
public void setDisableFeatures(String disableFeatures)
Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma
-
getAllowUnmarshallType
public String getAllowUnmarshallType()
-
setAllowUnmarshallType
public void setAllowUnmarshallType(String allowUnmarshallType)
If enabled then Jackson is allowed to attempt to use the CamelJacksonUnmarshalType header during the unmarshalling. This should only be enabled when desired to be used.
-
getContentTypeHeader
public String getContentTypeHeader()
Description copied from interface:ContentTypeHeaderAware
Whether the data format should set the Content-Type header with the type from the data format. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSON etc.- Specified by:
getContentTypeHeader
in interfaceContentTypeHeaderAware
-
setContentTypeHeader
public void setContentTypeHeader(String contentTypeHeader)
Description copied from interface:ContentTypeHeaderAware
Whether the data format should set the Content-Type header with the type from the data format. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSON etc.- Specified by:
setContentTypeHeader
in interfaceContentTypeHeaderAware
-
getTimezone
public String getTimezone()
-
setTimezone
public void setTimezone(String timezone)
If set then Jackson will use the Timezone when marshalling/unmarshalling.
-
-