Class MutableXMLStreamBuffer
A MutableXMLStreamBuffer is created using specific SAX and StAX-based creators. Utility methods on MutableXMLStreamBuffer are provided for such functionality that utilize SAX and StAX-based creators.
Once instantiated the same instance of a MutableXMLStreamBuffer may be reused for creation to reduce the amount of Objects instantiated and garbage collected that are required for internally representing an XML infoset.
A MutableXMLStreamBuffer is not designed to be created and processed concurrently. If done so unspecified behaviour may occur.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
The default array size for the arrays used in internal representation of the XML infoset.Fields inherited from class com.sun.xml.stream.buffer.XMLStreamBuffer
_contentCharactersBuffer, _contentCharactersBufferPtr, _contentObjects, _contentObjectsPtr, _hasInternedStrings, _inscopeNamespaces, _structure, _structurePtr, _structureStrings, _structureStringsPtr, systemId, treeCount
-
Constructor Summary
ConstructorsConstructorDescriptionCreate a new MutableXMLStreamBuffer using theDEFAULT_ARRAY_SIZE
.MutableXMLStreamBuffer
(int size) Create a new MutableXMLStreamBuffer. -
Method Summary
Modifier and TypeMethodDescriptionCreate contents of a buffer from aSAXBufferCreator
.void
createFromXMLReader
(XMLReader reader, InputStream in) Create contents of a buffer from aXMLReader
andInputStream
.void
createFromXMLReader
(XMLReader reader, InputStream in, String systemId) Create contents of a buffer from aXMLReader
andInputStream
.void
Create contents of a buffer from a XMLStreamReader.Create contents of a buffer from a XMLStreamWriter.void
reset()
Reset the MutableXMLStreamBuffer.protected void
setHasInternedStrings
(boolean hasInternedStrings) void
setSystemId
(String systemId) Set the system identifier for this buffer.Methods inherited from class com.sun.xml.stream.buffer.XMLStreamBuffer
createNewBufferFromXMLReader, createNewBufferFromXMLReader, createNewBufferFromXMLStreamReader, getContentCharactersBuffer, getContentCharactersBufferPtr, getContentObjects, getContentObjectsPtr, getInscopeNamespaces, getStructure, getStructurePtr, getStructureStrings, getStructureStringsPtr, getSystemId, hasInternedStrings, isCreated, isElementFragment, isForest, isFragment, readAsXMLReader, readAsXMLReader, readAsXMLStreamReader, writeTo, writeTo, writeTo, writeTo, writeTo, writeToXMLStreamWriter, writeToXMLStreamWriter
-
Field Details
-
DEFAULT_ARRAY_SIZE
public static final int DEFAULT_ARRAY_SIZEThe default array size for the arrays used in internal representation of the XML infoset.- See Also:
-
-
Constructor Details
-
MutableXMLStreamBuffer
public MutableXMLStreamBuffer()Create a new MutableXMLStreamBuffer using theDEFAULT_ARRAY_SIZE
. -
MutableXMLStreamBuffer
public MutableXMLStreamBuffer(int size) Create a new MutableXMLStreamBuffer.- Parameters:
size
- The size of the arrays used in the internal representation of the XML infoset.- Throws:
NegativeArraySizeException
- If thesize
argument is less than0
.
-
-
Method Details
-
setSystemId
Set the system identifier for this buffer.- Parameters:
systemId
- The system identifier.
-
createFromXMLStreamReader
Create contents of a buffer from a XMLStreamReader.The MutableXMLStreamBuffer is reset (see
reset()
) before creation.The MutableXMLStreamBuffer is created by consuming the events on the XMLStreamReader using an instance of
StreamReaderBufferCreator
.- Parameters:
reader
- A XMLStreamReader to read from to create.- Throws:
XMLStreamException
-
createFromXMLStreamWriter
Create contents of a buffer from a XMLStreamWriter.The MutableXMLStreamBuffer is reset (see
reset()
) before creation.The MutableXMLStreamBuffer is created by consuming events on a XMLStreamWriter using an instance of
StreamWriterBufferCreator
. -
createFromSAXBufferCreator
Create contents of a buffer from aSAXBufferCreator
.The MutableXMLStreamBuffer is reset (see
reset()
) before creation.The MutableXMLStreamBuffer is created by consuming events from a
ContentHandler
using an instance ofSAXBufferCreator
.- Returns:
- The
SAXBufferCreator
to create from.
-
createFromXMLReader
Create contents of a buffer from aXMLReader
andInputStream
.The MutableXMLStreamBuffer is reset (see
reset()
) before creation.The MutableXMLStreamBuffer is created by using an instance of
SAXBufferCreator
and registering associated handlers on theXMLReader
.- Parameters:
reader
- TheXMLReader
to use for parsing.in
- TheInputStream
to be parsed.- Throws:
SAXException
IOException
-
createFromXMLReader
public void createFromXMLReader(XMLReader reader, InputStream in, String systemId) throws SAXException, IOException Create contents of a buffer from aXMLReader
andInputStream
.The MutableXMLStreamBuffer is reset (see
reset()
) before creation.The MutableXMLStreamBuffer is created by using an instance of
SAXBufferCreator
and registering associated handlers on theXMLReader
.- Parameters:
reader
- TheXMLReader
to use for parsing.in
- TheInputStream
to be parsed.systemId
- The system ID of the input stream.- Throws:
SAXException
IOException
-
reset
public void reset()Reset the MutableXMLStreamBuffer.This method will reset the MutableXMLStreamBuffer to a state of being "uncreated" similar to the state of a newly instantiated MutableXMLStreamBuffer.
As many Objects as possible will be retained for reuse in future creation.
-
setHasInternedStrings
protected void setHasInternedStrings(boolean hasInternedStrings)
-