public abstract class AbstractReader extends Object implements ExtendedHierarchicalStreamReader
HierarchicalStreamReader should rather be derived from this class then implementing
 the interface directly.| Modifier | Constructor and Description | 
|---|---|
protected  | 
AbstractReader()
Creates an AbstractReader with a NameCoder that does nothing. 
 | 
protected  | 
AbstractReader(NameCoder nameCoder)
Creates an AbstractReader with a provided  
NameCoder. | 
| Modifier and Type | Method and Description | 
|---|---|
String | 
decodeAttribute(String name)
Decode an attribute name from the target format. 
 | 
String | 
decodeNode(String name)
Decode a node name from the target format. 
 | 
protected String | 
encodeAttribute(String name)
Encode the attribute name again into the name of the target format. 
 | 
protected String | 
encodeNode(String name)
Encode the node name again into the name of the target format. 
 | 
String | 
peekNextChild()
Peek the name of the next child. 
 | 
HierarchicalStreamReader | 
underlyingReader()
Return the underlying HierarchicalStreamReader implementation. 
 | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitappendErrors, close, getAttribute, getAttribute, getAttributeCount, getAttributeName, getAttributeNames, getNodeName, getValue, hasMoreChildren, moveDown, moveUpprotected AbstractReader()
public HierarchicalStreamReader underlyingReader()
If a Converter needs to access methods of a specific HierarchicalStreamReader implementation that are not defined in the HierarchicalStreamReader interface, it should call this method before casting. This is because the reader passed to the Converter is often wrapped/decorated by another implementation to provide additional functionality (such as XPath tracking).
For example:
MySpecificReader mySpecificReader = (MySpecificReader)reader; // INCORRECT! mySpecificReader.doSomethingSpecific();
MySpecificReader mySpecificReader = (MySpecificReader)reader.underlyingReader(); // CORRECT! mySpecificReader.doSomethingSpecific();
Implementations of HierarchicalStreamReader should return 'this', unless they are a decorator, in which case they should delegate to whatever they are wrapping.
underlyingReader in interface HierarchicalStreamReaderpublic String decodeNode(String name)
name - the name in the target formatpublic String decodeAttribute(String name)
name - the name in the target formatprotected String encodeNode(String name)
name - the original nameprotected String encodeAttribute(String name)
name - the original namepublic String peekNextChild()
ExtendedHierarchicalStreamReaderHierarchicalStreamReader.hasMoreChildren() returns
 true, peek the tag name of the child.peekNextChild in interface ExtendedHierarchicalStreamReaderCopyright © 2004–2016 XStream. All rights reserved.