Class JsonXMLStreamReader
- java.lang.Object
-
- org.apache.synapse.commons.staxon.core.base.AbstractXMLStreamReader<org.apache.synapse.commons.staxon.core.json.JsonXMLStreamReader.ScopeInfo>
-
- org.apache.synapse.commons.staxon.core.json.JsonXMLStreamReader
-
- All Implemented Interfaces:
XMLStreamConstants,XMLStreamReader
public class JsonXMLStreamReader extends AbstractXMLStreamReader<org.apache.synapse.commons.staxon.core.json.JsonXMLStreamReader.ScopeInfo>
JSON XML stream reader.Limitations
- Mixed content (e.g.
<alice>bob<edgar/></alice>) is not supported.
The reader may produce processing instructions
<?xml-multiple element-name?>to indicate array starts ('[').
-
-
Field Summary
-
Fields inherited from interface javax.xml.stream.XMLStreamConstants
ATTRIBUTE, CDATA, CHARACTERS, COMMENT, DTD, END_DOCUMENT, END_ELEMENT, ENTITY_DECLARATION, ENTITY_REFERENCE, NAMESPACE, NOTATION_DECLARATION, PROCESSING_INSTRUCTION, SPACE, START_DOCUMENT, START_ELEMENT
-
-
Constructor Summary
Constructors Constructor Description JsonXMLStreamReader(JsonStreamSource source, boolean multiplePI, char namespaceSeparator)Create reader instance.JsonXMLStreamReader(JsonStreamSource source, boolean multiplePI, char namespaceSeparator, boolean xmlNilReadWriteEnabled)Create reader instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()protected booleanconsume()Main method to be implemented by subclasses.BooleangetBoolean()NumbergetNumber()booleanhasBoolean()booleanhasNumber()-
Methods inherited from class org.apache.synapse.commons.staxon.core.base.AbstractXMLStreamReader
getAttributeCount, getAttributeLocalName, getAttributeName, getAttributeNamespace, getAttributePrefix, getAttributeType, getAttributeValue, getAttributeValue, getCharacterEncodingScheme, getElementText, getEncoding, getEventData, getEventName, getEventType, getLocalName, getLocation, getName, getNamespaceContext, getNamespaceCount, getNamespacePrefix, getNamespaceURI, getNamespaceURI, getNamespaceURI, getPIData, getPITarget, getPrefix, getProperty, getScope, getText, getTextCharacters, getTextCharacters, getTextLength, getTextStart, getVersion, hasName, hasNext, hasText, initialize, isAttributeSpecified, isCharacters, isEndElement, isStandalone, isStartDocumentRead, isStartElement, isWhiteSpace, next, nextTag, readAttr, readData, readEndDocument, readEndElementTag, readNsDecl, readPI, readStartDocument, readStartElementTag, require, standaloneSet, toString
-
-
-
-
Constructor Detail
-
JsonXMLStreamReader
public JsonXMLStreamReader(JsonStreamSource source, boolean multiplePI, char namespaceSeparator) throws XMLStreamException
Create reader instance.- Parameters:
source- stream sourcemultiplePI- whether to produce<xml-multiple?>PIs to signal array startnamespaceSeparator- namespace prefix separator- Throws:
XMLStreamException
-
JsonXMLStreamReader
public JsonXMLStreamReader(JsonStreamSource source, boolean multiplePI, char namespaceSeparator, boolean xmlNilReadWriteEnabled) throws XMLStreamException
Create reader instance.- Parameters:
source- stream sourcemultiplePI- whether to produce<xml-multiple?>PIs to signal array startnamespaceSeparator- namespace prefix separatorxmlNilReadWriteEnabled- Supports reading and writing of XML Nil elements as defined by http://www.w3.org/TR/xmlschema-1/#xsi_nil when the XML/JSON inputs contains nil/null values.- Throws:
XMLStreamException
-
-
Method Detail
-
consume
protected boolean consume() throws XMLStreamException, IOExceptionDescription copied from class:AbstractXMLStreamReaderMain method to be implemented by subclasses. This method is called by the reader when the event queue runs dry. Consume some events and delegate to the variousreadXXX()methods. When encountering an element start event, all attributes and namespace delarations must be consumed too, otherwise these won't be available during start element.- Specified by:
consumein classAbstractXMLStreamReader<org.apache.synapse.commons.staxon.core.json.JsonXMLStreamReader.ScopeInfo>- Returns:
trueif there's more to read- Throws:
XMLStreamExceptionIOException
-
hasNumber
public boolean hasNumber()
- Returns:
trueiff the current event data is a number primitive
-
getNumber
public Number getNumber()
- Returns:
- number primitive
- Throws:
ClassCastException
-
hasBoolean
public boolean hasBoolean()
- Returns:
trueiff the current event data is a boolean primitive
-
getBoolean
public Boolean getBoolean()
- Returns:
- boolean primitive
- Throws:
ClassCastException
-
close
public void close() throws XMLStreamException- Specified by:
closein interfaceXMLStreamReader- Overrides:
closein classAbstractXMLStreamReader<org.apache.synapse.commons.staxon.core.json.JsonXMLStreamReader.ScopeInfo>- Throws:
XMLStreamException
-
-