com.sun.xml.bind.v2.runtime.output
Class IndentingUTF8XmlOutput

java.lang.Object
  extended by com.sun.xml.bind.v2.runtime.output.XmlOutputAbstractImpl
      extended by com.sun.xml.bind.v2.runtime.output.UTF8XmlOutput
          extended by com.sun.xml.bind.v2.runtime.output.IndentingUTF8XmlOutput
All Implemented Interfaces:
XmlOutput

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.

Author:
Kohsuke Kawaguchi

Field Summary
 
Fields inherited from class com.sun.xml.bind.v2.runtime.output.UTF8XmlOutput
closeStartTagPending, octetBuffer, octetBufferIndex, out
 
Fields inherited from class com.sun.xml.bind.v2.runtime.output.XmlOutputAbstractImpl
nsContext, nsUriIndex2prefixIndex, serializer
 
Constructor Summary
IndentingUTF8XmlOutput(OutputStream out, String indentStr, Encoded[] localNames, CharacterEscapeHandler escapeHandler)
           
 
Method Summary
 void beginStartTag(int prefix, String localName)
           
 void beginStartTag(Name name)
          Writes a start tag.
 void endDocument(boolean fragment)
          Called at the very end.
 void endTag(int prefix, String localName)
           
 void endTag(Name name)
           
 void text(Pcdata value, boolean needSP)
          Writes XML text with character escaping, if necessary.
 void text(String value, boolean needSP)
          Writes XML text with character escaping, if necessary.
 
Methods inherited from class com.sun.xml.bind.v2.runtime.output.UTF8XmlOutput
attribute, attribute, closeStartTag, endStartTag, flushBuffer, setHeader, startDocument, text, text, write, write, write, writeNsDecl, writeNsDecls
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IndentingUTF8XmlOutput

public IndentingUTF8XmlOutput(OutputStream out,
                              String indentStr,
                              Encoded[] localNames,
                              CharacterEscapeHandler escapeHandler)
Parameters:
indentStr - set to null for no indentation and optimal performance. otherwise the string is used for indentation.
Method Detail

beginStartTag

public void beginStartTag(int prefix,
                          String localName)
                   throws IOException
Specified by:
beginStartTag in interface XmlOutput
Overrides:
beginStartTag in class UTF8XmlOutput
Throws:
IOException

beginStartTag

public void beginStartTag(Name name)
                   throws IOException
Description copied from class: XmlOutputAbstractImpl
Writes a start tag.

At this point XmlOutputAbstractImpl.nsContext holds namespace declarations needed for this new element.

This method is used for writing tags that are indexed.

Specified by:
beginStartTag in interface XmlOutput
Overrides:
beginStartTag in class UTF8XmlOutput
Throws:
IOException

endTag

public void endTag(Name name)
            throws IOException
Specified by:
endTag in interface XmlOutput
Overrides:
endTag in class UTF8XmlOutput
Throws:
IOException

endTag

public void endTag(int prefix,
                   String localName)
            throws IOException
Specified by:
endTag in interface XmlOutput
Overrides:
endTag in class UTF8XmlOutput
Throws:
IOException

text

public void text(String value,
                 boolean needSP)
          throws IOException
Description copied from interface: XmlOutput
Writes XML text with character escaping, if necessary.

Specified by:
text in interface XmlOutput
Overrides:
text in class UTF8XmlOutput
Parameters:
value - this string can contain characters that might need escaping (such as '&' or '>')
Throws:
IOException

text

public void text(Pcdata value,
                 boolean needSP)
          throws IOException
Description copied from interface: XmlOutput
Writes XML text with character escaping, if necessary.

Specified by:
text in interface XmlOutput
Overrides:
text in class UTF8XmlOutput
Parameters:
value - this string can contain characters that might need escaping (such as '&' or '>')
Throws:
IOException

endDocument

public void endDocument(boolean fragment)
                 throws IOException,
                        SAXException,
                        XMLStreamException
Description copied from class: XmlOutputAbstractImpl
Called at the very end.

Specified by:
endDocument in interface XmlOutput
Overrides:
endDocument in class UTF8XmlOutput
Parameters:
fragment - false if we are writing the whole document.
Throws:
IOException
SAXException
XMLStreamException


Copyright © 2014 Oracle Corporation. All Rights Reserved.