| java.lang.Object com.sun.xml.bind.v2.runtime.output.XmlOutputAbstractImpl com.sun.xml.bind.v2.runtime.output.XMLStreamWriterOutput com.sun.xml.bind.v2.runtime.output.FastInfosetStreamWriterOutput
FastInfosetStreamWriterOutput | final public class FastInfosetStreamWriterOutput extends XMLStreamWriterOutput (Code) | | XmlOutput for
LowLevelStAXDocumentSerializer .
This class is responsible for managing the indexing of elements, attributes
and local names that are known to JAXB by way of the JAXBContext (generated
from JAXB beans or schema). The pre-encoded UTF-8 representations of known
local names are also utilized.
The lookup of elements, attributes and local names with respect to a context
is very efficient. It relies on an incrementing base line so that look up is
performed in O(1) time and only uses static memory. When the base line reaches
a point where integer overflow will occur the arrays and base line are reset
(such an event is rare and will have little impact on performance).
A weak map of JAXB contexts to optimized tables for attributes, elements and
local names is utilized and stored on the LowLevel StAX serializer. Thus,
optimized serializing can work other multiple serializing of JAXB beans using
the same LowLevel StAX serializer instance. This approach works best when JAXB
contexts are only created once per schema or JAXB beans (which is the recommended
practice as the creation JAXB contexts are expensive, they are thread safe and
can be reused).
author: Paul.Sandoz@Sun.Com |
Inner Class :final static class TablesPerJAXBContext | |
Inner Class :final static class AppData implements VocabularyApplicationData | |
Method Summary | |
public void | attribute(Name name, String value) | public void | attribute(int prefix, String localName, String value) | public void | beginStartTag(Name name) | public void | beginStartTag(int prefix, String localName) | public void | beginStartTagWithNamespaces(Name name) | public void | endDocument(boolean fragment) | public void | endStartTag() | public void | endTag(Name name) | public void | endTag(int prefix, String localName) | public void | startDocument(XMLSerializer serializer, boolean fragment, int[] nsUriIndex2prefixIndex, NamespaceContextImpl nsContext) | public void | text(Pcdata value, boolean needsSeparatingWhitespace) | public void | text(String value, boolean needsSeparatingWhitespace) |
FastInfosetStreamWriterOutput | public FastInfosetStreamWriterOutput(StAXDocumentSerializer out, JAXBContextImpl context)(Code) | | |
Fields inherited from com.sun.xml.bind.v2.runtime.output.XMLStreamWriterOutput | final protected char[] buf(Code)(Java Doc)
|
Methods inherited from com.sun.xml.bind.v2.runtime.output.XMLStreamWriterOutput | public void attribute(int prefix, String localName, String value) throws IOException, XMLStreamException(Code)(Java Doc) public void beginStartTag(int prefix, String localName) throws IOException, XMLStreamException(Code)(Java Doc) public static XmlOutput create(XMLStreamWriter out, JAXBContextImpl context)(Code)(Java Doc) public void endDocument(boolean fragment) throws IOException, SAXException, XMLStreamException(Code)(Java Doc) public void endStartTag() throws IOException, SAXException(Code)(Java Doc) public void endTag(int prefix, String localName) throws IOException, SAXException, XMLStreamException(Code)(Java Doc) public void startDocument(XMLSerializer serializer, boolean fragment, int[] nsUriIndex2prefixIndex, NamespaceContextImpl nsContext) throws IOException, SAXException, XMLStreamException(Code)(Java Doc) public void text(String value, boolean needsSeparatingWhitespace) throws IOException, SAXException, XMLStreamException(Code)(Java Doc) public void text(Pcdata value, boolean needsSeparatingWhitespace) throws IOException, SAXException, XMLStreamException(Code)(Java Doc)
|
Methods inherited from com.sun.xml.bind.v2.runtime.output.XmlOutputAbstractImpl | public void attribute(Name name, String value) throws IOException, XMLStreamException(Code)(Java Doc) abstract public void attribute(int prefix, String localName, String value) throws IOException, XMLStreamException(Code)(Java Doc) public void beginStartTag(Name name) throws IOException, XMLStreamException(Code)(Java Doc) abstract public void beginStartTag(int prefix, String localName) throws IOException, XMLStreamException(Code)(Java Doc) public void endDocument(boolean fragment) throws IOException, SAXException, XMLStreamException(Code)(Java Doc) abstract public void endStartTag() throws IOException, SAXException(Code)(Java Doc) public void endTag(Name name) throws IOException, SAXException, XMLStreamException(Code)(Java Doc) abstract public void endTag(int prefix, String localName) throws IOException, SAXException, XMLStreamException(Code)(Java Doc) public void startDocument(XMLSerializer serializer, boolean fragment, int[] nsUriIndex2prefixIndex, NamespaceContextImpl nsContext) throws IOException, SAXException, XMLStreamException(Code)(Java Doc)
|
|
|