Class JsonXMLConfigImpl
- java.lang.Object
-
- org.apache.synapse.commons.staxon.core.json.JsonXMLConfigImpl
-
- All Implemented Interfaces:
Cloneable
,JsonXMLConfig
public class JsonXMLConfigImpl extends Object implements JsonXMLConfig, Cloneable
Simple JSON XML configuration.
Initially, values are set according to
JsonXMLConfig.DEFAULT
.- See Also:
JsonXMLConfig
-
-
Field Summary
-
Fields inherited from interface org.apache.synapse.commons.staxon.core.json.JsonXMLConfig
DEFAULT
-
-
Constructor Summary
Constructors Constructor Description JsonXMLConfigImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected JsonXMLConfigImpl
clone()
String
getCustomRegex()
Format output ignoring scientific numbersString
getCustomReplaceRegex()
String
getCustomReplaceSequence()
char
getNamespaceSeparator()
Namespace prefix separator.QName
getVirtualRoot()
JSON documents may have have multiple root properties.boolean
isAutoArray()
Trigger arrays automatically?boolean
isAutoPrimitive()
Convert element text to number/boolean/null primitives automatically?boolean
isMultiplePI()
Whether to use theJsonXMLStreamConstants.MULTIPLE_PI_TARGET
processing instruction to indicate an array start.boolean
isNamespaceDeclarations()
Whether to write namespace declarations.boolean
isPreserverNamespacesForJson()
Preserves the namespace declarations in the JSON output in XML to JSON transformations.boolean
isPrettyPrint()
Format output for better readability?boolean
isProcessNCNames()
Builds valid XML NCNames when building XML element names in XML to JSON transformations.boolean
isReadWriteXmlNil()
boolean
isRepairingNamespaces()
Repair namespaces when writing+>boolean
isWriteNullForEmptyElements()
Used in XML->JSON conversion.void
setAutoArray(boolean autoArray)
void
setAutoPrimitive(boolean autoPrimitive)
void
setCustomRegex(String customRegex)
void
setCustomReplaceRegex(String customReplaceRegex)
void
setCustomReplaceSequence(String customReplaceSequence)
void
setMultiplePI(boolean multiplePI)
void
setNamespaceDeclarations(boolean namespaceDeclarations)
void
setNamespaceSeparator(char namespaceSeparator)
void
setPreserverNamespacesForJson(boolean preserverNamespacesForJson)
void
setPrettyPrint(boolean prettyPrint)
void
setProcessNCNames(boolean processNCNames)
void
setReadWriteXmlNil(boolean readWriteXmlNil)
void
setRepairingNamespaces(boolean repairingNamespaces)
void
setVirtualRoot(QName virtualRoot)
void
setWriteNullForEmptyElement(boolean writeNullForEmptyElement)
-
-
-
Method Detail
-
clone
protected JsonXMLConfigImpl clone()
-
isAutoArray
public boolean isAutoArray()
Description copied from interface:JsonXMLConfig
Trigger arrays automatically?
- Specified by:
isAutoArray
in interfaceJsonXMLConfig
- Returns:
- auto array flag
- See Also:
JsonXMLOutputFactory.PROP_AUTO_ARRAY
-
setAutoArray
public void setAutoArray(boolean autoArray)
-
isAutoPrimitive
public boolean isAutoPrimitive()
Description copied from interface:JsonXMLConfig
Convert element text to number/boolean/null primitives automatically?
- Specified by:
isAutoPrimitive
in interfaceJsonXMLConfig
- Returns:
- auto primitive flag
- See Also:
JsonXMLOutputFactory.PROP_AUTO_ARRAY
-
setAutoPrimitive
public void setAutoPrimitive(boolean autoPrimitive)
-
isMultiplePI
public boolean isMultiplePI()
Description copied from interface:JsonXMLConfig
Whether to use the
IfJsonXMLStreamConstants.MULTIPLE_PI_TARGET
processing instruction to indicate an array start. Iftrue
, a PI is used to inform the writer to begin an array, passing the name of following multiple elements as data. The writer will close arrays automatically.true
, this reader will insert a PI with the field name as PI data.Note that the element given in the PI may occur zero times, indicating an "empty array".
- Specified by:
isMultiplePI
in interfaceJsonXMLConfig
- Returns:
- multiple PI flag
- See Also:
JsonXMLInputFactory.PROP_MULTIPLE_PI
,JsonXMLOutputFactory.PROP_MULTIPLE_PI
-
setMultiplePI
public void setMultiplePI(boolean multiplePI)
-
isNamespaceDeclarations
public boolean isNamespaceDeclarations()
Description copied from interface:JsonXMLConfig
Whether to write namespace declarations.
- Specified by:
isNamespaceDeclarations
in interfaceJsonXMLConfig
- Returns:
- namespace declarations flag
- See Also:
JsonXMLOutputFactory.PROP_NAMESPACE_DECLARATIONS
-
setNamespaceDeclarations
public void setNamespaceDeclarations(boolean namespaceDeclarations)
-
getNamespaceSeparator
public char getNamespaceSeparator()
Description copied from interface:JsonXMLConfig
Namespace prefix separator.
- Specified by:
getNamespaceSeparator
in interfaceJsonXMLConfig
- Returns:
- namespace separator
- See Also:
JsonXMLInputFactory.PROP_NAMESPACE_SEPARATOR
,JsonXMLOutputFactory.PROP_NAMESPACE_SEPARATOR
-
setNamespaceSeparator
public void setNamespaceSeparator(char namespaceSeparator)
-
isPrettyPrint
public boolean isPrettyPrint()
Description copied from interface:JsonXMLConfig
Format output for better readability?
- Specified by:
isPrettyPrint
in interfaceJsonXMLConfig
- Returns:
- pretty print flag
- See Also:
JsonXMLOutputFactory.PROP_PRETTY_PRINT
-
setPrettyPrint
public void setPrettyPrint(boolean prettyPrint)
-
getVirtualRoot
public QName getVirtualRoot()
Description copied from interface:JsonXMLConfig
JSON documents may have have multiple root properties. However, XML requires a single root element. This property specifies the root as a "virtual" element, which will be removed from the stream when writing and added to the stream when reading.
- Specified by:
getVirtualRoot
in interfaceJsonXMLConfig
- Returns:
- virtual root
- See Also:
JsonXMLInputFactory.PROP_VIRTUAL_ROOT
,JsonXMLOutputFactory.PROP_VIRTUAL_ROOT
-
setVirtualRoot
public void setVirtualRoot(QName virtualRoot)
-
isRepairingNamespaces
public boolean isRepairingNamespaces()
Description copied from interface:JsonXMLConfig
Repair namespaces when writing+>
- Specified by:
isRepairingNamespaces
in interfaceJsonXMLConfig
- Returns:
- namespace-repairing flag
- See Also:
XMLOutputFactory.IS_REPAIRING_NAMESPACES
-
setRepairingNamespaces
public void setRepairingNamespaces(boolean repairingNamespaces)
-
getCustomRegex
public String getCustomRegex()
Description copied from interface:JsonXMLConfig
Format output ignoring scientific numbers
- Specified by:
getCustomRegex
in interfaceJsonXMLConfig
- Returns:
- autoprimitive enabled with scientific Number Ignore flag
- See Also:
JsonXMLOutputFactory.PROP_CUSTOM_REGEX
-
setCustomRegex
public void setCustomRegex(String customRegex)
-
getCustomReplaceRegex
public String getCustomReplaceRegex()
- Specified by:
getCustomReplaceRegex
in interfaceJsonXMLConfig
-
setCustomReplaceRegex
public void setCustomReplaceRegex(String customReplaceRegex)
-
getCustomReplaceSequence
public String getCustomReplaceSequence()
- Specified by:
getCustomReplaceSequence
in interfaceJsonXMLConfig
-
setCustomReplaceSequence
public void setCustomReplaceSequence(String customReplaceSequence)
-
setReadWriteXmlNil
public void setReadWriteXmlNil(boolean readWriteXmlNil)
-
setWriteNullForEmptyElement
public void setWriteNullForEmptyElement(boolean writeNullForEmptyElement)
-
isReadWriteXmlNil
public boolean isReadWriteXmlNil()
- Specified by:
isReadWriteXmlNil
in interfaceJsonXMLConfig
-
isWriteNullForEmptyElements
public boolean isWriteNullForEmptyElements()
Description copied from interface:JsonXMLConfig
Used in XML->JSON conversion. Decides whether to set null or "" for an empty XML element without nil attribute- Specified by:
isWriteNullForEmptyElements
in interfaceJsonXMLConfig
- Returns:
- true if null is written, false if "" is written
-
isPreserverNamespacesForJson
public boolean isPreserverNamespacesForJson()
Description copied from interface:JsonXMLConfig
Preserves the namespace declarations in the JSON output in XML to JSON transformations.- Specified by:
isPreserverNamespacesForJson
in interfaceJsonXMLConfig
- Returns:
- preserveNamespacesForJson
-
setPreserverNamespacesForJson
public void setPreserverNamespacesForJson(boolean preserverNamespacesForJson)
-
isProcessNCNames
public boolean isProcessNCNames()
Description copied from interface:JsonXMLConfig
Builds valid XML NCNames when building XML element names in XML to JSON transformations.- Specified by:
isProcessNCNames
in interfaceJsonXMLConfig
- Returns:
- processNCNames
-
setProcessNCNames
public void setProcessNCNames(boolean processNCNames)
-
-