public final class IndentingUTF8XmlOutput extends UTF8XmlOutput
UTF8XmlOutput
with indentation.
TODO: not sure if it's a good idea to move the indenting functionality to another class.
Doesn't have to be final, but it helps the JVM.closeStartTagPending, octetBuffer, octetBufferIndex, out
nsContext, nsUriIndex2prefixIndex, serializer
Constructor and Description |
---|
IndentingUTF8XmlOutput(java.io.OutputStream out,
java.lang.String indentStr,
Encoded[] localNames,
CharacterEscapeHandler escapeHandler) |
Modifier and Type | Method and Description |
---|---|
void |
beginStartTag(int prefix,
java.lang.String localName) |
void |
beginStartTag(Name name)
Writes a start tag.
|
void |
endDocument(boolean fragment)
Called at the very end.
|
void |
endTag(int prefix,
java.lang.String localName) |
void |
endTag(Name name) |
void |
text(Pcdata value,
boolean needSP)
Writes XML text with character escaping, if necessary.
|
void |
text(java.lang.String value,
boolean needSP)
Writes XML text with character escaping, if necessary.
|
attribute, attribute, closeStartTag, endStartTag, flushBuffer, setHeader, startDocument, text, text, write, write, write, writeNsDecl, writeNsDecls
public IndentingUTF8XmlOutput(java.io.OutputStream out, java.lang.String indentStr, Encoded[] localNames, CharacterEscapeHandler escapeHandler)
indentStr
- set to null for no indentation and optimal performance.
otherwise the string is used for indentation.public void beginStartTag(int prefix, java.lang.String localName) throws java.io.IOException
beginStartTag
in interface XmlOutput
beginStartTag
in class UTF8XmlOutput
java.io.IOException
public void beginStartTag(Name name) throws java.io.IOException
XmlOutputAbstractImpl
At this point XmlOutputAbstractImpl.nsContext
holds namespace declarations needed for this
new element.
This method is used for writing tags that are indexed.
beginStartTag
in interface XmlOutput
beginStartTag
in class UTF8XmlOutput
java.io.IOException
public void endTag(Name name) throws java.io.IOException
endTag
in interface XmlOutput
endTag
in class UTF8XmlOutput
java.io.IOException
public void endTag(int prefix, java.lang.String localName) throws java.io.IOException
endTag
in interface XmlOutput
endTag
in class UTF8XmlOutput
java.io.IOException
public void text(java.lang.String value, boolean needSP) throws java.io.IOException
XmlOutput
text
in interface XmlOutput
text
in class UTF8XmlOutput
value
- this string can contain characters that might need escaping
(such as '&' or '>')java.io.IOException
public void text(Pcdata value, boolean needSP) throws java.io.IOException
XmlOutput
text
in interface XmlOutput
text
in class UTF8XmlOutput
value
- this string can contain characters that might need escaping
(such as '&' or '>')java.io.IOException
public void endDocument(boolean fragment) throws java.io.IOException, org.xml.sax.SAXException, javax.xml.stream.XMLStreamException
XmlOutputAbstractImpl
endDocument
in interface XmlOutput
endDocument
in class UTF8XmlOutput
fragment
- false if we are writing the whole document.java.io.IOException
org.xml.sax.SAXException
javax.xml.stream.XMLStreamException