org.apache.axis2.format
Class TextFromElementReader
java.lang.Object
java.io.Reader
org.apache.axis2.format.TextFromElementReader
- All Implemented Interfaces:
- java.io.Closeable, java.lang.Readable
public class TextFromElementReader
- extends java.io.Reader
Reader implementation that extracts the text nodes from an element given by an
XMLStreamReader. The expected input is a document with only a document
element (as produced by org.apache.axiom.om.OMElement.OMElement#getXMLStreamReader()).
The class will extract the text nodes that are direct children of that element, i.e. it uses
the same conventions as org.apache.axiom.om.OMElement.OMElement#getText().
It will call XMLStreamReader.close() when the end of the document is reached or when
close() is called.
The main purpose of this class is to provide a convenient and efficient way to get the text
content of an element without converting it first to a string, i.e. without using
org.apache.axiom.om.OMElement.OMElement#getText(). This is important for potentially
large contents, for which this class guarantees constant memory usage.
Note that this class should in general not be used directly. Instead,
ElementHelper#getTextAsStream(org.apache.axiom.om.OMElement)
should be called to get the most efficient stream implementation for a given an element.
NOTICE: The code in this class will be moved to Axiom (or somewhere else). Use with care!
| Fields inherited from class java.io.Reader |
lock |
|
Method Summary |
void |
close()
|
int |
read(char[] cbuf,
int off,
int len)
|
| Methods inherited from class java.io.Reader |
mark, markSupported, read, read, read, ready, reset, skip |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TextFromElementReader
public TextFromElementReader(javax.xml.stream.XMLStreamReader stream)
- Constructor.
- Parameters:
stream - the stream to extract the text nodes from
- Throws:
org.apache.axiom.om.OMException - if the stream doesn't start with the expected events
read
public int read(char[] cbuf,
int off,
int len)
throws java.io.IOException
- Specified by:
read in class java.io.Reader
- Throws:
java.io.IOException
close
public void close()
throws java.io.IOException
- Specified by:
close in interface java.io.Closeable- Specified by:
close in class java.io.Reader
- Throws:
java.io.IOException
Copyright © 2004-2009 The Apache Software Foundation. All Rights Reserved.