|
BeanIO 2.0.4 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.beanio.stream.xml.XmlReader
public class XmlReader
A XmlReader is used to read records from a XML input stream. Each XML record read from the input stream is parsed into a Document Object Model (DOM). A XmlReader is configured using a base DOM object to define the group structure of the XML. When a XML element is read from the input stream that is not found in the base document, the element and its children are appended to the base document to form the record. The base document object model will be modified as the input stream is read and should therefore not be shared across multiple streams.
A XmlReader makes use of the DOM user data feature to pass additional information to and from the parser. The GROUP_COUNT is an Integer value added to elements in the base document to indicate the number of times an element was read from the input stream. And the IS_NAMESPACE_IGNORED is a Boolean value set on elements in the base document where the XML namespace should not be used to match nodes read from the input stream.
The method getRecordText() is not currently supported.
Field Summary | |
---|---|
static String |
GROUP_COUNT
The DOM user data key to obtain the number of times a group element was read in the base document as a java.lang.Integer. |
static String |
IS_NAMESPACE_IGNORED
The DOM user data key to indicate whether the namespace of an element in the base document is ignored when matching nodes read from an input stream. |
Constructor Summary | |
---|---|
XmlReader(Reader reader)
Constructs a new XmlReader. |
|
XmlReader(Reader reader,
Document base)
Constructs a new XmlReader. |
Method Summary | |
---|---|
void |
close()
Closes this input stream. |
int |
getRecordLineNumber()
Returns the line number of the last record from this input stream. |
String |
getRecordText()
Returns the unparsed record text of the last record read. |
Document |
read()
Reads a single record from this input stream. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String GROUP_COUNT
public static final String IS_NAMESPACE_IGNORED
Constructor Detail |
---|
public XmlReader(Reader reader)
reader
- the input stream to read frompublic XmlReader(Reader reader, Document base)
reader
- the input stream to read frombase
- the base document object model (DOM) that defines the
group structure of the XML. May be null if fully reading
the XML document.Method Detail |
---|
public Document read() throws IOException, RecordIOException
RecordReader
read
in interface RecordReader
IOException
- if an I/O error occurs reading from the stream
RecordIOException
- if the record is malformed and cannot
be parsed, but subsequent reads may still be possiblepublic void close() throws IOException
RecordReader
close
in interface RecordReader
IOException
- if an I/O error occurs closing the streampublic int getRecordLineNumber()
RecordReader
getRecordLineNumber
in interface RecordReader
public String getRecordText()
RecordReader
getRecordText
in interface RecordReader
|
BeanIO 2.0.4 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |