XmlOutput
FastInfosetStreamWriterOutput
, StAXExStreamWriterOutput
public class XMLStreamWriterOutput extends XmlOutputAbstractImpl
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.
Modifier and Type | Field | Description |
---|---|---|
protected char[] |
buf |
nsContext, nsUriIndex2prefixIndex, serializer
Modifier | Constructor | Description |
---|---|---|
protected |
XMLStreamWriterOutput(javax.xml.stream.XMLStreamWriter out,
CharacterEscapeHandler escapeHandler) |
Modifier and Type | Method | Description |
---|---|---|
void |
attribute(int prefix,
java.lang.String localName,
java.lang.String value) |
|
void |
beginStartTag(int prefix,
java.lang.String localName) |
|
static XmlOutput |
create(javax.xml.stream.XMLStreamWriter out,
JAXBContextImpl context,
CharacterEscapeHandler escapeHandler) |
Creates a new
XmlOutput from a XMLStreamWriter . |
void |
endDocument(boolean fragment) |
Called at the very end.
|
void |
endStartTag() |
|
void |
endTag(int prefix,
java.lang.String localName) |
|
void |
startDocument(XMLSerializer serializer,
boolean fragment,
int[] nsUriIndex2prefixIndex,
NamespaceContextImpl nsContext) |
Called at the very beginning.
|
void |
text(Pcdata value,
boolean needsSeparatingWhitespace) |
Writes XML text with character escaping, if necessary.
|
void |
text(java.lang.String value,
boolean needsSeparatingWhitespace) |
Writes XML text with character escaping, if necessary.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
attribute, beginStartTag, endTag
protected XMLStreamWriterOutput(javax.xml.stream.XMLStreamWriter out, CharacterEscapeHandler escapeHandler)
public static XmlOutput create(javax.xml.stream.XMLStreamWriter out, JAXBContextImpl context, CharacterEscapeHandler escapeHandler)
XmlOutput
from a XMLStreamWriter
.
This method recognizes an FI StAX writer.public void startDocument(XMLSerializer serializer, boolean fragment, int[] nsUriIndex2prefixIndex, NamespaceContextImpl nsContext) throws java.io.IOException, org.xml.sax.SAXException, javax.xml.stream.XMLStreamException
XmlOutputAbstractImpl
startDocument
in interface XmlOutput
startDocument
in class XmlOutputAbstractImpl
serializer
- the XMLSerializer
that coordinates this whole marshalling episode.fragment
- true if we are marshalling a fragment.java.io.IOException
org.xml.sax.SAXException
javax.xml.stream.XMLStreamException
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 XmlOutputAbstractImpl
fragment
- false if we are writing the whole document.java.io.IOException
org.xml.sax.SAXException
javax.xml.stream.XMLStreamException
public void beginStartTag(int prefix, java.lang.String localName) throws java.io.IOException, javax.xml.stream.XMLStreamException
beginStartTag
in interface XmlOutput
beginStartTag
in class XmlOutputAbstractImpl
java.io.IOException
javax.xml.stream.XMLStreamException
public void attribute(int prefix, java.lang.String localName, java.lang.String value) throws java.io.IOException, javax.xml.stream.XMLStreamException
attribute
in interface XmlOutput
attribute
in class XmlOutputAbstractImpl
prefix
- -1 if this attribute does not have a prefix
(this handling differs from that of elements.)java.io.IOException
javax.xml.stream.XMLStreamException
public void endStartTag() throws java.io.IOException, org.xml.sax.SAXException
endStartTag
in interface XmlOutput
endStartTag
in class XmlOutputAbstractImpl
java.io.IOException
org.xml.sax.SAXException
public void endTag(int prefix, java.lang.String localName) throws java.io.IOException, org.xml.sax.SAXException, javax.xml.stream.XMLStreamException
endTag
in interface XmlOutput
endTag
in class XmlOutputAbstractImpl
java.io.IOException
org.xml.sax.SAXException
javax.xml.stream.XMLStreamException
public void text(java.lang.String value, boolean needsSeparatingWhitespace) throws java.io.IOException, org.xml.sax.SAXException, javax.xml.stream.XMLStreamException
XmlOutput
value
- this string can contain characters that might need escaping
(such as '&' or '>'
)java.io.IOException
org.xml.sax.SAXException
javax.xml.stream.XMLStreamException
public void text(Pcdata value, boolean needsSeparatingWhitespace) throws java.io.IOException, org.xml.sax.SAXException, javax.xml.stream.XMLStreamException
XmlOutput
value
- this string can contain characters that might need escaping
(such as '&' or '>'
)java.io.IOException
org.xml.sax.SAXException
javax.xml.stream.XMLStreamException
Copyright © 2018 Oracle Corporation. All rights reserved.