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
XmlOutput that writes to StAX XMLStreamWriter.
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
FieldsFields inherited from class com.sun.xml.bind.v2.runtime.output.XmlOutputAbstractImpl
nsContext, nsUriIndex2prefixIndex, serializer -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedXMLStreamWriterOutput(XMLStreamWriter out, CharacterEscapeHandler escapeHandler) -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidbeginStartTag(int prefix, String localName) static XmlOutputcreate(XMLStreamWriter out, JAXBContextImpl context, CharacterEscapeHandler escapeHandler) Creates a newXmlOutputfrom aXMLStreamWriter.voidendDocument(boolean fragment) Called at the very end.voidvoidvoidstartDocument(XMLSerializer serializer, boolean fragment, int[] nsUriIndex2prefixIndex, NamespaceContextImpl nsContext) Called at the very beginning.voidWrites XML text with character escaping, if necessary.voidWrites XML text with character escaping, if necessary.Methods inherited from class com.sun.xml.bind.v2.runtime.output.XmlOutputAbstractImpl
attribute, beginStartTag, endTag
-
Field Details
-
buf
protected final char[] buf
-
-
Constructor Details
-
XMLStreamWriterOutput
-
-
Method Details
-
create
public static XmlOutput create(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 IOException, SAXException, 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:
IOExceptionSAXExceptionXMLStreamException
-
endDocument
Description 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:
IOExceptionSAXExceptionXMLStreamException
-
beginStartTag
- Specified by:
beginStartTagin interfaceXmlOutput- Specified by:
beginStartTagin classXmlOutputAbstractImpl- Throws:
IOExceptionXMLStreamException
-
attribute
public void attribute(int prefix, String localName, String value) throws IOException, 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:
IOExceptionXMLStreamException
-
endStartTag
- Specified by:
endStartTagin interfaceXmlOutput- Specified by:
endStartTagin classXmlOutputAbstractImpl- Throws:
IOExceptionSAXException
-
endTag
public void endTag(int prefix, String localName) throws IOException, SAXException, XMLStreamException - Specified by:
endTagin interfaceXmlOutput- Specified by:
endTagin classXmlOutputAbstractImpl- Throws:
IOExceptionSAXExceptionXMLStreamException
-
text
public void text(String value, boolean needsSeparatingWhitespace) throws IOException, SAXException, 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:
IOExceptionSAXExceptionXMLStreamException
-
text
public void text(Pcdata value, boolean needsSeparatingWhitespace) throws IOException, SAXException, 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:
IOExceptionSAXExceptionXMLStreamException
-