Class JsonXMLOutputFactory
- java.lang.Object
-
- javax.xml.stream.XMLOutputFactory
-
- org.apache.synapse.commons.staxon.core.base.AbstractXMLOutputFactory
-
- org.apache.synapse.commons.staxon.core.json.JsonXMLOutputFactory
-
public class JsonXMLOutputFactory extends AbstractXMLOutputFactory
XML output factory for streaming to JSON.
-
-
Field Summary
Fields Modifier and Type Field Description static String
PROP_AUTO_ARRAY
Start/end arrays automatically?static String
PROP_AUTO_PRIMITIVE
Convert element text to JSON primitives (number, boolean, null) automatically?static String
PROP_CUSTOM_REGEX
Convert element text to JSON primitives with ignore given regex (number, boolean, null) automatically?static String
PROP_CUSTOM_REPLACE_REGEX
static String
PROP_CUSTOM_REPLACE_SEQUENCE
static String
PROP_MULTIPLE_PI
Whether to use theJsonXMLStreamConstants.MULTIPLE_PI_TARGET
processing instruction target to trigger an array start.static String
PROP_NAMESPACE_DECLARATIONS
Whether to write namespace declarations.static String
PROP_NAMESPACE_SEPARATOR
Namespace prefix separator.static String
PROP_PRETTY_PRINT
Format output for better readability?static String
PROP_VIRTUAL_ROOT
JSON documents may have have multiple root properties.-
Fields inherited from class javax.xml.stream.XMLOutputFactory
IS_REPAIRING_NAMESPACES
-
-
Constructor Summary
Constructors Constructor Description JsonXMLOutputFactory()
JsonXMLOutputFactory(JsonXMLConfig config)
JsonXMLOutputFactory(JsonXMLConfig config, JsonStreamFactory streamFactory)
JsonXMLOutputFactory(JsonStreamFactory streamFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description XMLEventWriter
createXMLEventWriter(XMLStreamWriter writer)
JsonXMLStreamWriter
createXMLStreamWriter(OutputStream stream)
JsonXMLStreamWriter
createXMLStreamWriter(OutputStream stream, String encoding)
JsonXMLStreamWriter
createXMLStreamWriter(Writer stream)
JsonXMLConfig
getConfig()
Object
getProperty(String name)
boolean
isPropertySupported(String name)
void
setProperty(String name, Object value)
-
Methods inherited from class org.apache.synapse.commons.staxon.core.base.AbstractXMLOutputFactory
createXMLEventWriter, createXMLEventWriter, createXMLEventWriter, createXMLEventWriter, createXMLStreamWriter
-
Methods inherited from class javax.xml.stream.XMLOutputFactory
newDefaultFactory, newFactory, newFactory, newInstance, newInstance
-
-
-
-
Field Detail
-
PROP_AUTO_ARRAY
public static final String PROP_AUTO_ARRAY
Start/end arrays automatically?
The default value is
false
.- See Also:
- Constant Field Values
-
PROP_AUTO_PRIMITIVE
public static final String PROP_AUTO_PRIMITIVE
Convert element text to JSON primitives (number, boolean, null) automatically?
The default value is
false
.- See Also:
- Constant Field Values
-
PROP_MULTIPLE_PI
public static final String PROP_MULTIPLE_PI
Whether to use the
JsonXMLStreamConstants.MULTIPLE_PI_TARGET
processing instruction target to trigger 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.Note that the element given in the PI may be written zero times, indicating an empty array.
The default value is true.
- See Also:
- Constant Field Values
-
PROP_VIRTUAL_ROOT
public static final String PROP_VIRTUAL_ROOT
JSON documents may have have multiple root properties. However, XML requires a single root element. This property takes the name of a "virtual" root element, which will be removed from the stream when writing.
The default value is
null
.- See Also:
- Constant Field Values
-
PROP_NAMESPACE_SEPARATOR
public static final String PROP_NAMESPACE_SEPARATOR
Namespace prefix separator.
The default value is
':'
.- See Also:
- Constant Field Values
-
PROP_NAMESPACE_DECLARATIONS
public static final String PROP_NAMESPACE_DECLARATIONS
Whether to write namespace declarations.
The default value is
true
.- See Also:
- Constant Field Values
-
PROP_PRETTY_PRINT
public static final String PROP_PRETTY_PRINT
Format output for better readability?
The default value is
false
.- See Also:
- Constant Field Values
-
PROP_CUSTOM_REGEX
public static final String PROP_CUSTOM_REGEX
Convert element text to JSON primitives with ignore given regex (number, boolean, null) automatically?
The default value is
null
.- See Also:
- Constant Field Values
-
PROP_CUSTOM_REPLACE_REGEX
public static final String PROP_CUSTOM_REPLACE_REGEX
- See Also:
- Constant Field Values
-
PROP_CUSTOM_REPLACE_SEQUENCE
public static final String PROP_CUSTOM_REPLACE_SEQUENCE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
JsonXMLOutputFactory
public JsonXMLOutputFactory() throws FactoryConfigurationError
- Throws:
FactoryConfigurationError
-
JsonXMLOutputFactory
public JsonXMLOutputFactory(JsonStreamFactory streamFactory)
-
JsonXMLOutputFactory
public JsonXMLOutputFactory(JsonXMLConfig config) throws FactoryConfigurationError
- Throws:
FactoryConfigurationError
-
JsonXMLOutputFactory
public JsonXMLOutputFactory(JsonXMLConfig config, JsonStreamFactory streamFactory)
-
-
Method Detail
-
createXMLStreamWriter
public JsonXMLStreamWriter createXMLStreamWriter(OutputStream stream, String encoding) throws XMLStreamException
- Specified by:
createXMLStreamWriter
in classXMLOutputFactory
- Throws:
XMLStreamException
-
createXMLStreamWriter
public JsonXMLStreamWriter createXMLStreamWriter(Writer stream) throws XMLStreamException
- Specified by:
createXMLStreamWriter
in classXMLOutputFactory
- Throws:
XMLStreamException
-
createXMLStreamWriter
public JsonXMLStreamWriter createXMLStreamWriter(OutputStream stream) throws XMLStreamException
- Specified by:
createXMLStreamWriter
in classXMLOutputFactory
- Throws:
XMLStreamException
-
createXMLEventWriter
public XMLEventWriter createXMLEventWriter(XMLStreamWriter writer) throws XMLStreamException
- Specified by:
createXMLEventWriter
in classAbstractXMLOutputFactory
- Throws:
XMLStreamException
-
isPropertySupported
public boolean isPropertySupported(String name)
- Overrides:
isPropertySupported
in classAbstractXMLOutputFactory
-
getProperty
public Object getProperty(String name) throws IllegalArgumentException
- Overrides:
getProperty
in classAbstractXMLOutputFactory
- Throws:
IllegalArgumentException
-
setProperty
public void setProperty(String name, Object value) throws IllegalArgumentException
- Overrides:
setProperty
in classAbstractXMLOutputFactory
- Throws:
IllegalArgumentException
-
getConfig
public JsonXMLConfig getConfig()
-
-