private static class XMLPullReaderFactory.XMLPullReader extends java.lang.Object implements IXMLReader
Modifier and Type | Field and Description |
---|---|
private InByteBuffer |
m_byteBuffer
Byte buffer used when stream set directly (lazy create,
null if not used). |
private java.lang.String |
m_docName
Document name.
|
private java.lang.String |
m_encoding
Input document character encoding (
null if unknown) |
private org.xmlpull.v1.XmlPullParser |
m_parser
Actual parser.
|
private InputStreamWrapper |
m_streamWrapper
Wrapper for supplied input stream (lazy create,
null
if not used). |
CDSECT, COMMENT, DOCDECL, END_DOCUMENT, END_TAG, ENTITY_REF, IGNORABLE_WHITESPACE, PROCESSING_INSTRUCTION, START_DOCUMENT, START_TAG, TEXT
Modifier | Constructor and Description |
---|---|
private |
XMLPullReader(org.xmlpull.v1.XmlPullParser parser)
Constructor used by factory.
|
Modifier and Type | Method and Description |
---|---|
java.lang.String |
buildPositionString()
Build current parse input position description.
|
private java.lang.String |
describeException(java.lang.Exception e)
Format error message from exception.
|
int |
getAttributeCount()
Get the number of attributes of the current start tag.
|
java.lang.String |
getAttributeName(int index)
Get an attribute name from the current start tag.
|
java.lang.String |
getAttributeNamespace(int index)
Get an attribute namespace from the current start tag.
|
java.lang.String |
getAttributePrefix(int index)
Get an attribute prefix from the current start tag.
|
java.lang.String |
getAttributeValue(int index)
Get an attribute value from the current start tag.
|
java.lang.String |
getAttributeValue(java.lang.String ns,
java.lang.String name)
Get an attribute value from the current start tag.
|
int |
getColumnNumber()
Get current source column number.
|
java.lang.String |
getDocumentName()
Get document name.
|
int |
getEventType()
Gets the current parse event type, without changing the current parse
state.
|
java.lang.String |
getInputEncoding()
Return the input encoding, if known.
|
int |
getLineNumber()
Get current source line number.
|
java.lang.String |
getName()
Get element name from the current start or end tag.
|
java.lang.String |
getNamespace()
Get element namespace from the current start or end tag.
|
java.lang.String |
getNamespace(java.lang.String prefix)
Get namespace URI associated with prefix.
|
int |
getNamespaceCount(int depth)
Get number of namespace declarations active at depth.
|
java.lang.String |
getNamespacePrefix(int index)
Get namespace prefix.
|
java.lang.String |
getNamespaceUri(int index)
Get namespace URI.
|
int |
getNestingDepth()
Get current element nesting depth.
|
java.lang.String |
getPrefix()
Get element prefix from the current start or end tag.
|
java.lang.String |
getText()
Get current text.
|
void |
init()
Initialize reader.
|
boolean |
isNamespaceAware()
Return namespace processing flag.
|
int |
next()
Advance to next binding component of input document.
|
int |
nextToken()
Advance to next parse event of input document.
|
private void |
setDocument(java.io.InputStream is,
java.lang.String name,
java.lang.String enc)
Set document to be parsed from input stream.
|
private void |
setDocument(java.io.Reader rdr,
java.lang.String name)
Set document to be parsed from reader.
|
private final org.xmlpull.v1.XmlPullParser m_parser
private java.lang.String m_docName
private InByteBuffer m_byteBuffer
null
if not used).private InputStreamWrapper m_streamWrapper
null
if not used).private java.lang.String m_encoding
null
if unknown)private XMLPullReader(org.xmlpull.v1.XmlPullParser parser)
parser
- private void setDocument(java.io.InputStream is, java.lang.String name, java.lang.String enc) throws JiBXException
is
- document input streamname
- document name (null
if unknown)enc
- document character encoding (null
if unknown)JiBXException
- on parser configuration errorprivate void setDocument(java.io.Reader rdr, java.lang.String name) throws JiBXException
rdr
- document readername
- document name (null
if unknown)JiBXException
- on parser configuration errorprivate java.lang.String describeException(java.lang.Exception e)
e
- root cause exceptionpublic void init()
IXMLReader
init
in interface IXMLReader
public java.lang.String buildPositionString()
IXMLReader
buildPositionString
in interface IXMLReader
public int nextToken() throws JiBXException
IXMLReader
nextToken
in interface IXMLReader
JiBXException
- if error reading or parsing documentpublic int next() throws JiBXException
IXMLReader
IXMLReader.nextToken()
, which consolidates text
content and ignores parse events for components such as comments and PIs.next
in interface IXMLReader
JiBXException
- if error reading or parsing documentpublic int getEventType() throws JiBXException
IXMLReader
getEventType
in interface IXMLReader
JiBXException
- if error parsing documentpublic java.lang.String getName()
IXMLReader
getName
in interface IXMLReader
public java.lang.String getNamespace()
IXMLReader
getNamespace
in interface IXMLReader
public java.lang.String getPrefix()
IXMLReader
getPrefix
in interface IXMLReader
null
if no prefix)public int getAttributeCount()
IXMLReader
getAttributeCount
in interface IXMLReader
public java.lang.String getAttributeName(int index)
IXMLReader
getAttributeName
in interface IXMLReader
index
- attribute indexpublic java.lang.String getAttributeNamespace(int index)
IXMLReader
getAttributeNamespace
in interface IXMLReader
index
- attribute indexpublic java.lang.String getAttributePrefix(int index)
IXMLReader
getAttributePrefix
in interface IXMLReader
index
- attribute indexnull
if no prefix present)public java.lang.String getAttributeValue(int index)
IXMLReader
getAttributeValue
in interface IXMLReader
index
- attribute indexpublic java.lang.String getAttributeValue(java.lang.String ns, java.lang.String name)
IXMLReader
getAttributeValue
in interface IXMLReader
ns
- namespace URI for expected attribute (may be null
or the empty string for the empty namespace)name
- attribute name expectednull
if missingpublic java.lang.String getText()
IXMLReader
getText
in interface IXMLReader
public int getNestingDepth()
IXMLReader
getNestingDepth
in interface IXMLReader
public int getNamespaceCount(int depth)
IXMLReader
getNamespaceCount
in interface IXMLReader
depth
- element nesting depthpublic java.lang.String getNamespaceUri(int index)
IXMLReader
getNamespaceUri
in interface IXMLReader
index
- declaration indexpublic java.lang.String getNamespacePrefix(int index)
IXMLReader
getNamespacePrefix
in interface IXMLReader
index
- declaration indexnull
if a default namespacepublic java.lang.String getDocumentName()
IXMLReader
getDocumentName
in interface IXMLReader
null
if not knownpublic int getLineNumber()
IXMLReader
getLineNumber
in interface IXMLReader
-1
if line number
information not availablepublic int getColumnNumber()
IXMLReader
getColumnNumber
in interface IXMLReader
-1
if column
number information not availablepublic java.lang.String getNamespace(java.lang.String prefix)
IXMLReader
getNamespace
in interface IXMLReader
prefix
- namespace prefix to be matched (null
for
default namespace)null
if prefix not defined)public java.lang.String getInputEncoding()
IXMLReader
getInputEncoding
in interface IXMLReader
null
if unknown)public boolean isNamespaceAware()
IXMLReader
isNamespaceAware
in interface IXMLReader
true
if namespaces are
processed by reader, false
if not)