Class XMLStreamWriterOutput
- java.lang.Object
-
- com.sun.xml.bind.v2.runtime.output.XmlOutputAbstractImpl
-
- com.sun.xml.bind.v2.runtime.output.XMLStreamWriterOutput
-
- All Implemented Interfaces:
XmlOutput
- Direct Known Subclasses:
FastInfosetStreamWriterOutput,StAXExStreamWriterOutput
public class XMLStreamWriterOutput extends XmlOutputAbstractImpl
XmlOutputthat writes to StAXXMLStreamWriter.TODO: Finding the optimized FI implementations is a bit hacky and not very extensible. Can we use the service provider mechanism in general for concrete implementations of XmlOutputAbstractImpl.
- Author:
- Kohsuke Kawaguchi
-
-
Field Summary
Fields Modifier and Type Field Description protected char[]buf-
Fields inherited from class com.sun.xml.bind.v2.runtime.output.XmlOutputAbstractImpl
nsContext, nsUriIndex2prefixIndex, serializer
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedXMLStreamWriterOutput(javax.xml.stream.XMLStreamWriter out, CharacterEscapeHandler escapeHandler)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidattribute(int prefix, java.lang.String localName, java.lang.String value)voidbeginStartTag(int prefix, java.lang.String localName)static XmlOutputcreate(javax.xml.stream.XMLStreamWriter out, JAXBContextImpl context, CharacterEscapeHandler escapeHandler)Creates a newXmlOutputfrom aXMLStreamWriter.voidendDocument(boolean fragment)Called at the very end.voidendStartTag()voidendTag(int prefix, java.lang.String localName)voidstartDocument(XMLSerializer serializer, boolean fragment, int[] nsUriIndex2prefixIndex, NamespaceContextImpl nsContext)Called at the very beginning.voidtext(Pcdata value, boolean needsSeparatingWhitespace)Writes XML text with character escaping, if necessary.voidtext(java.lang.String value, boolean needsSeparatingWhitespace)Writes XML text with character escaping, if necessary.-
Methods inherited from class com.sun.xml.bind.v2.runtime.output.XmlOutputAbstractImpl
attribute, beginStartTag, endTag
-
-
-
-
Constructor Detail
-
XMLStreamWriterOutput
protected XMLStreamWriterOutput(javax.xml.stream.XMLStreamWriter out, CharacterEscapeHandler escapeHandler)
-
-
Method Detail
-
create
public static XmlOutput create(javax.xml.stream.XMLStreamWriter out, JAXBContextImpl context, CharacterEscapeHandler escapeHandler)
Creates a newXmlOutputfrom aXMLStreamWriter. This method recognizes an FI StAX writer.
-
startDocument
public void startDocument(XMLSerializer serializer, boolean fragment, int[] nsUriIndex2prefixIndex, NamespaceContextImpl nsContext) throws java.io.IOException, org.xml.sax.SAXException, javax.xml.stream.XMLStreamException
Description copied from class:XmlOutputAbstractImplCalled at the very beginning.- Specified by:
startDocumentin interfaceXmlOutput- Overrides:
startDocumentin classXmlOutputAbstractImpl- Parameters:
serializer- theXMLSerializerthat coordinates this whole marshalling episode.fragment- true if we are marshalling a fragment.- Throws:
java.io.IOExceptionorg.xml.sax.SAXExceptionjavax.xml.stream.XMLStreamException
-
endDocument
public void endDocument(boolean fragment) throws java.io.IOException, org.xml.sax.SAXException, javax.xml.stream.XMLStreamExceptionDescription copied from class:XmlOutputAbstractImplCalled at the very end.- Specified by:
endDocumentin interfaceXmlOutput- Overrides:
endDocumentin classXmlOutputAbstractImpl- Parameters:
fragment- false if we are writing the whole document.- Throws:
java.io.IOExceptionorg.xml.sax.SAXExceptionjavax.xml.stream.XMLStreamException
-
beginStartTag
public void beginStartTag(int prefix, java.lang.String localName) throws java.io.IOException, javax.xml.stream.XMLStreamException- Specified by:
beginStartTagin interfaceXmlOutput- Specified by:
beginStartTagin classXmlOutputAbstractImpl- Throws:
java.io.IOExceptionjavax.xml.stream.XMLStreamException
-
attribute
public void attribute(int prefix, java.lang.String localName, java.lang.String value) throws java.io.IOException, javax.xml.stream.XMLStreamException- Specified by:
attributein interfaceXmlOutput- Specified by:
attributein classXmlOutputAbstractImpl- Parameters:
prefix- -1 if this attribute does not have a prefix (this handling differs from that of elements.)- Throws:
java.io.IOExceptionjavax.xml.stream.XMLStreamException
-
endStartTag
public void endStartTag() throws java.io.IOException, org.xml.sax.SAXException- Specified by:
endStartTagin interfaceXmlOutput- Specified by:
endStartTagin classXmlOutputAbstractImpl- Throws:
java.io.IOExceptionorg.xml.sax.SAXException
-
endTag
public void endTag(int prefix, java.lang.String localName) throws java.io.IOException, org.xml.sax.SAXException, javax.xml.stream.XMLStreamException- Specified by:
endTagin interfaceXmlOutput- Specified by:
endTagin classXmlOutputAbstractImpl- Throws:
java.io.IOExceptionorg.xml.sax.SAXExceptionjavax.xml.stream.XMLStreamException
-
text
public void text(java.lang.String value, boolean needsSeparatingWhitespace) throws java.io.IOException, org.xml.sax.SAXException, javax.xml.stream.XMLStreamExceptionDescription copied from interface:XmlOutputWrites XML text with character escaping, if necessary.- Parameters:
value- this string can contain characters that might need escaping (such as'&' or '>')- Throws:
java.io.IOExceptionorg.xml.sax.SAXExceptionjavax.xml.stream.XMLStreamException
-
text
public void text(Pcdata value, boolean needsSeparatingWhitespace) throws java.io.IOException, org.xml.sax.SAXException, javax.xml.stream.XMLStreamException
Description copied from interface:XmlOutputWrites XML text with character escaping, if necessary.- Parameters:
value- this string can contain characters that might need escaping (such as'&' or '>')- Throws:
java.io.IOExceptionorg.xml.sax.SAXExceptionjavax.xml.stream.XMLStreamException
-
-