|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.thoughtworks.xstream.io.json.JsonHierarchicalStreamWriter
public class JsonHierarchicalStreamWriter
A simple writer that outputs JSON in a pretty-printed indented stream. Arrays, Lists and Sets rely on you NOT using XStream.addImplicitCollection(..)
Nested Class Summary | |
---|---|
class |
JsonHierarchicalStreamWriter.Node
|
Constructor Summary | |
---|---|
JsonHierarchicalStreamWriter(java.io.Writer writer)
|
|
JsonHierarchicalStreamWriter(java.io.Writer writer,
char[] lineIndenter)
|
|
JsonHierarchicalStreamWriter(java.io.Writer writer,
char[] lineIndenter,
java.lang.String newLine)
|
|
JsonHierarchicalStreamWriter(java.io.Writer writer,
java.lang.String lineIndenter)
|
|
JsonHierarchicalStreamWriter(java.io.Writer writer,
java.lang.String lineIndenter,
java.lang.String newLine)
|
Method Summary | |
---|---|
void |
addAttribute(java.lang.String key,
java.lang.String value)
|
void |
close()
Close the writer, if necessary. |
void |
endNode()
|
protected void |
endOfLine()
|
void |
flush()
Flush the writer, if necessary. |
void |
setValue(java.lang.String text)
Write the value (text content) of the current node. |
void |
startNode(java.lang.String name)
Deprecated. Use startNode(String name, Class clazz) instead. |
void |
startNode(java.lang.String name,
java.lang.Class clazz)
|
HierarchicalStreamWriter |
underlyingWriter()
Return the underlying HierarchicalStreamWriter implementation. |
protected void |
writeAttributeValue(com.thoughtworks.xstream.core.util.QuickWriter writer,
java.lang.String text)
|
protected void |
writeText(com.thoughtworks.xstream.core.util.QuickWriter writer,
java.lang.String text)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public JsonHierarchicalStreamWriter(java.io.Writer writer, char[] lineIndenter, java.lang.String newLine)
public JsonHierarchicalStreamWriter(java.io.Writer writer, char[] lineIndenter)
public JsonHierarchicalStreamWriter(java.io.Writer writer, java.lang.String lineIndenter, java.lang.String newLine)
public JsonHierarchicalStreamWriter(java.io.Writer writer, java.lang.String lineIndenter)
public JsonHierarchicalStreamWriter(java.io.Writer writer)
Method Detail |
---|
public void startNode(java.lang.String name)
startNode
in interface HierarchicalStreamWriter
public void startNode(java.lang.String name, java.lang.Class clazz)
startNode
in interface ExtendedHierarchicalStreamWriter
public void setValue(java.lang.String text)
HierarchicalStreamWriter
setValue
in interface HierarchicalStreamWriter
public void addAttribute(java.lang.String key, java.lang.String value)
addAttribute
in interface HierarchicalStreamWriter
protected void writeAttributeValue(com.thoughtworks.xstream.core.util.QuickWriter writer, java.lang.String text)
protected void writeText(com.thoughtworks.xstream.core.util.QuickWriter writer, java.lang.String text)
public void endNode()
endNode
in interface HierarchicalStreamWriter
protected void endOfLine()
public void flush()
HierarchicalStreamWriter
flush
in interface HierarchicalStreamWriter
public void close()
HierarchicalStreamWriter
close
in interface HierarchicalStreamWriter
public HierarchicalStreamWriter underlyingWriter()
HierarchicalStreamWriter
If 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 |