public final class RepairingStreamWriter extends StreamWriterBase
StreamWriterBase, which
implements the "namespace repairing" mode of operation.
This means that the writer ensures correctness and validity
of namespace bindings, as based on namespace URIs caller
passes, by adding necessary namespace declarations and using
prefixes as required to obtain expected results.StreamWriterBase.State_cfgCDataAsText, _cfgCheckAttrs, _cfgCheckContent, _cfgCheckStructure, _config, _currElem, _dtdRootElemName, _outputElemPool, _poolSize, _rootNsContext, _state, _stateAnyOutput, _stateEmptyElement, _stateStartElementOpen, _symbols, _validator, _valueEncoderFactory, _vldContent, _vldProblemHandler, _xmlWriterATTRIBUTE, CDATA, CHARACTERS, COMMENT, DTD, END_DOCUMENT, END_ELEMENT, ENTITY_DECLARATION, ENTITY_REFERENCE, NAMESPACE, NOTATION_DECLARATION, PROCESSING_INSTRUCTION, SPACE, START_DOCUMENT, START_ELEMENT| Constructor and Description |
|---|
RepairingStreamWriter(WriterConfig cfg,
XmlWriter writer,
WNameTable symbols) |
| Modifier and Type | Method and Description |
|---|---|
protected WName |
_generateAttrName(String suggPrefix,
String localName,
String uri) |
protected String |
_generateElemPrefix(String uri)
Method called if given URI is not yet bound, and no suggested prefix
is given (or one given can't be used).
|
protected String |
_serializeQName(QName name) |
void |
_setPrefix(String prefix,
String uri) |
void |
_writeStartOrEmpty(String prefix,
String localName,
String nsURI,
boolean isEmpty) |
void |
setDefaultNamespace(String uri)
With repairing writer, this is only taken as a suggestion as to how
the caller would prefer prefixes to be mapped.
|
void |
writeAttribute(String nsURI,
String localName,
String value) |
void |
writeAttribute(String prefix,
String nsURI,
String localName,
String value) |
void |
writeDefaultNamespace(String nsURI) |
void |
writeEmptyElement(String nsURI,
String localName) |
void |
writeEmptyElement(String prefix,
String localName,
String nsURI) |
void |
writeNamespace(String prefix,
String nsURI) |
void |
writeStartElement(String nsURI,
String localName) |
void |
writeStartElement(String prefix,
String localName,
String nsURI) |
void |
writeTypedAttribute(String prefix,
String nsURI,
String localName,
org.codehaus.stax2.ri.typed.AsciiValueEncoder enc)
Need to leave implementation of this method abstract, because
repairing and non-repairing modes differ in how names are
handled.
|
_closeStartElement, _reportInvalidContent, _reportNwfAttr, _reportNwfAttr, _reportNwfContent, _reportNwfContent, _reportNwfName, _reportNwfStructure, _reportNwfStructure, _reportValidationProblem, _verifyRootElement, _verifyStartElement, _verifyWriteAttr, _verifyWriteCData, _verifyWriteDTD, _writeAttribute, _writeAttribute, _writeDefaultNamespace, _writeNamespace, _writeStartDocument, _writeStartTag, _writeStartTag, addDefaultAttribute, close, closeCompletely, findAttributeIndex, flush, getAttributeCount, getAttributeLocalName, getAttributeNamespace, getAttributePrefix, getAttributeType, getAttributeValue, getAttributeValue, getBaseUri, getCurrentElementName, getEncoding, getLocation, getNamespaceContext, getNamespaceURI, getPrefix, getPrefixes, getProperty, getValidationLocation, getXmlVersion, inPrologOrEpilog, isNotationDeclared, isPropertySupported, isUnparsedEntityDeclared, reportIllegalArg, reportIllegalMethod, reportProblem, setNamespaceContext, setPrefix, setProperty, setValidationProblemHandler, stopValidatingAgainst, stopValidatingAgainst, throwFromIOE, throwOutputError, throwOutputError, toString, validateAgainst, valueEncoderFactory, writeAttribute, writeBinary, writeBinary, writeBinaryAttribute, writeBinaryAttribute, writeBoolean, writeBooleanAttribute, writeCData, writeCData, writeCharacters, writeCharacters, writeComment, writeDecimal, writeDecimalAttribute, writeDouble, writeDoubleArray, writeDoubleArrayAttribute, writeDoubleAttribute, writeDTD, writeDTD, writeDTD, writeEmptyElement, writeEndDocument, writeEndElement, writeEntityRef, writeFloat, writeFloatArray, writeFloatArrayAttribute, writeFloatAttribute, writeFullEndElement, writeInt, writeIntArray, writeIntArrayAttribute, writeIntAttribute, writeInteger, writeIntegerAttribute, writeLong, writeLongArray, writeLongArrayAttribute, writeLongAttribute, writeProcessingInstruction, writeProcessingInstruction, writeQName, writeQNameAttribute, writeRaw, writeRaw, writeRaw, writeSpace, writeSpace, writeStartDocument, writeStartDocument, writeStartDocument, writeStartDocument, writeStartElementpublic RepairingStreamWriter(WriterConfig cfg, XmlWriter writer, WNameTable symbols)
public void setDefaultNamespace(String uri) throws XMLStreamException
setDefaultNamespace in interface XMLStreamWritersetDefaultNamespace in class StreamWriterBaseXMLStreamExceptionpublic void _setPrefix(String prefix, String uri)
_setPrefix in class StreamWriterBasepublic void writeAttribute(String nsURI, String localName, String value) throws XMLStreamException
writeAttribute in interface XMLStreamWriterwriteAttribute in class StreamWriterBaseXMLStreamExceptionpublic void writeAttribute(String prefix, String nsURI, String localName, String value) throws XMLStreamException
writeAttribute in interface XMLStreamWriterwriteAttribute in class StreamWriterBaseXMLStreamExceptionpublic void writeDefaultNamespace(String nsURI) throws XMLStreamException
writeDefaultNamespace in interface XMLStreamWriterwriteDefaultNamespace in class StreamWriterBaseXMLStreamExceptionpublic void writeEmptyElement(String nsURI, String localName) throws XMLStreamException
writeEmptyElement in interface XMLStreamWriterwriteEmptyElement in class StreamWriterBaseXMLStreamExceptionpublic void writeEmptyElement(String prefix, String localName, String nsURI) throws XMLStreamException
writeEmptyElement in interface XMLStreamWriterwriteEmptyElement in class StreamWriterBaseXMLStreamExceptionpublic void writeNamespace(String prefix, String nsURI) throws XMLStreamException
writeNamespace in interface XMLStreamWriterwriteNamespace in class StreamWriterBaseXMLStreamExceptionpublic void writeStartElement(String nsURI, String localName) throws XMLStreamException
writeStartElement in interface XMLStreamWriterwriteStartElement in class StreamWriterBaseXMLStreamExceptionpublic void writeStartElement(String prefix, String localName, String nsURI) throws XMLStreamException
writeStartElement in interface XMLStreamWriterwriteStartElement in class StreamWriterBaseXMLStreamExceptionpublic void writeTypedAttribute(String prefix, String nsURI, String localName, org.codehaus.stax2.ri.typed.AsciiValueEncoder enc) throws XMLStreamException
StreamWriterBasewriteTypedAttribute in class StreamWriterBaseXMLStreamExceptionprotected String _serializeQName(QName name) throws XMLStreamException
_serializeQName in class StreamWriterBaseXMLStreamExceptionprotected WName _generateAttrName(String suggPrefix, String localName, String uri) throws XMLStreamException
uri - Non-empty namespace URI that will be used for the
attributeXMLStreamExceptionpublic void _writeStartOrEmpty(String prefix, String localName, String nsURI, boolean isEmpty) throws XMLStreamException
XMLStreamExceptionprotected final String _generateElemPrefix(String uri) throws XMLStreamException
XMLStreamExceptionCopyright © 2021 FasterXML. All rights reserved.