|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectedu.internet2.middleware.grouperClientExt.com.thoughtworks.xstream.io.WriterWrapper
public abstract class WriterWrapper
Base class to make it easy to create wrappers (decorators) for HierarchicalStreamWriter.
| Field Summary | |
|---|---|
protected HierarchicalStreamWriter |
wrapped
|
| Constructor Summary | |
|---|---|
protected |
WriterWrapper(HierarchicalStreamWriter wrapped)
|
| Method Summary | |
|---|---|
void |
addAttribute(String key,
String value)
|
void |
close()
Close the writer, if necessary. |
void |
endNode()
|
void |
flush()
Flush the writer, if necessary. |
void |
setValue(String text)
Write the value (text content) of the current node. |
void |
startNode(String name)
|
void |
startNode(String name,
Class clazz)
|
HierarchicalStreamWriter |
underlyingWriter()
Return the underlying HierarchicalStreamWriter implementation. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected HierarchicalStreamWriter wrapped
| Constructor Detail |
|---|
protected WriterWrapper(HierarchicalStreamWriter wrapped)
| Method Detail |
|---|
public void startNode(String name)
startNode in interface HierarchicalStreamWriter
public void startNode(String name,
Class clazz)
startNode in interface ExtendedHierarchicalStreamWriterpublic void endNode()
endNode in interface HierarchicalStreamWriter
public void addAttribute(String key,
String value)
addAttribute in interface HierarchicalStreamWriterpublic void setValue(String text)
HierarchicalStreamWriter
setValue in interface HierarchicalStreamWriterpublic void flush()
HierarchicalStreamWriter
flush in interface HierarchicalStreamWriterpublic void close()
HierarchicalStreamWriter
close in interface HierarchicalStreamWriterpublic HierarchicalStreamWriter underlyingWriter()
HierarchicalStreamWriterIf a Converter needs to access methods of a specific HierarchicalStreamWriter implementation that are not defined in the HierarchicalStreamWriter interface, it should call this method before casting. This is because the writer passed to the Converter is often wrapped/decorated by another implementation to provide additional functionality (such as XPath tracking).
For example:
MySpecificWriter mySpecificWriter = (MySpecificWriter)writer; // INCORRECT! mySpecificWriter.doSomethingSpecific();
MySpecificWriter mySpecificWriter = (MySpecificWriter)writer.underlyingWriter(); // CORRECT! mySpecificWriter.doSomethingSpecific();
Implementations of HierarchicalStreamWriter should return 'this', unless they are a decorator, in which case they should delegate to whatever they are wrapping.
underlyingWriter in interface HierarchicalStreamWriter
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||