Package javanet.staxutils.io
Class XMLWriterUtils
- java.lang.Object
-
- javanet.staxutils.io.XMLWriterUtils
-
public final class XMLWriterUtils extends Object
Set of utility methods useful when writing XML.- Version:
- $Revision: 1.6 $
- Author:
- Christian Niles
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static voidwriteAttribute(QName name, String value, Writer writer)Writes an attribute to the provided stream.static voidwriteAttribute(Attribute attr, Writer writer)Writes anAttributeto the provided stream.static voidwriteAttribute(Attribute attr, XMLStreamWriter writer)Writes anAttributeto the provided stream.static voidwriteCData(char[] data, int start, int length, Writer writer)Writes aCharactersto the provided stream.static voidwriteCData(String text, Writer writer)Writes aCharactersto the provided stream.static voidwriteCharacters(char[] data, int start, int length, Writer writer)Writes a chunk of encoded text to the provided stream.static voidwriteCharacters(CharSequence text, Writer writer)Writes a chunk of encoded text to the provided stream.static voidwriteCharacters(Characters chars, Writer writer)Writes aCharactersto the provided stream.static voidwriteCharacters(Characters chars, XMLStreamWriter writer)Writes aCharactersto the provided stream.static voidwriteComment(String comment, Writer writer)Writes a comment to the provided stream.static voidwriteComment(Comment comment, Writer writer)Writes aCommentto the provided stream.static voidwriteComment(Comment comment, XMLStreamWriter writer)Writes aCommentto the provided stream.static voidwriteDTD(String dtd, Writer writer)Writes a dtd to the provided stream.static voidwriteDTD(DTD dtd, Writer writer)Writes aDTDto the provided stream.static voidwriteDTD(DTD dtd, XMLStreamWriter writer)Writes aDTDto the provided stream.static voidwriteEncodedCharacter(char c, Writer writer)Encodes the provided character if needed, and writes it to an output stream.static voidwriteEncodedQuotedValue(String value, Writer writer)Encodes the given value and writes it to the provided stream, wrapping it in the appropriate quote character.static voidwriteEncodedText(char[] text, int start, int len, Writer writer)static voidwriteEncodedText(CharSequence text, Writer writer)Encodes the provided text and writes it to the provided stream.static voidwriteEncodedValue(String value, char quoteChar, Writer writer)Encodes the given value, and writes it to the stream, but does not actually wrap the value in the quote character.static voidwriteEndDocument(Writer writer)Writes an document ending to the provided stream.static voidwriteEndDocument(EndDocument end, Writer writer)Writes anEndDocumentto the provided stream.static voidwriteEndDocument(EndDocument end, XMLStreamWriter writer)Writes anEndDocumentto the provided stream.static voidwriteEndElement(QName name, Writer writer)Writes an element end tag to the provided stream.static voidwriteEndElement(EndElement end, Writer writer)Writes anEndElementto the provided stream.static voidwriteEndElement(EndElement end, XMLStreamWriter writer)Writes anEndElementto the provided stream.static voidwriteEntityDeclaration(String name, String text, String notation, Writer writer)Writes an internal entity declaration to the stream.static voidwriteEntityDeclaration(String name, String publicId, String systemId, String notation, Writer writer)Writes an external entity declaration to the stream.static voidwriteEntityDeclaration(EntityDeclaration declaration, Writer writer)Writes anEntityDeclarationto the stream.static voidwriteEntityReference(String entityRef, Writer writer)Writes an entity reference to the provided stream.static voidwriteEntityReference(EntityReference entityRef, Writer writer)Writes anEntityReferenceto the provided stream.static voidwriteEntityReference(EntityReference entityRef, XMLStreamWriter writer)Writes anEntityReferenceto the provided stream.static voidwriteEvent(XMLEvent event, Writer writer)Writes the given event to the providedWriter.static voidwriteEvent(XMLEvent event, XMLStreamWriter writer)Writes the given event to the providedXMLStreamWriter.static voidwriteNamespace(String prefix, String uri, Writer writer)Writes aNamespaceto the provided stream.static voidwriteNamespace(Namespace ns, Writer writer)Writes aNamespaceto the provided stream.static voidwriteNamespace(Namespace ns, XMLStreamWriter writer)Writes aNamespaceto the provided stream.static voidwriteNotationDeclaration(String name, String publicId, String systemId, Writer writer)Writes a notation declaration to the stream.static voidwriteNotationDeclaration(NotationDeclaration declaration, Writer writer)Writes aNotationDeclarationto the stream.static voidwriteProcessingInstruction(String target, String data, Writer writer)Writes aProcessingInstructionto the provided stream.static voidwriteProcessingInstruction(ProcessingInstruction procInst, Writer writer)Writes aProcessingInstructionto the provided stream.static voidwriteProcessingInstruction(ProcessingInstruction procInst, XMLStreamWriter writer)Writes aProcessingInstructionto the provided stream.static voidwriteQName(String prefix, String localPart, Writer writer)Writes a qualified name to the provided stream.static voidwriteQName(QName name, Writer writer)Writes a qualified name to the provided stream.static voidwriteQuotedValue(String value, Writer writer)Writes a quoted version of the given value, automatically determining the appropriate quote character.static voidwriteStartDocument(Writer writer)Writes a default XML declaration to the provided stream.static voidwriteStartDocument(String version, Writer writer)Writes an XML declaration to the provided stream.static voidwriteStartDocument(String version, String encoding, boolean standalone, Writer writer)Writes an XML declaration to the provided stream.static voidwriteStartDocument(String version, String encoding, Writer writer)Writes an XML declaration to the provided stream.static voidwriteStartDocument(String version, String encoding, String standalone, Writer writer)Writes an XML declaration to the provided stream.static voidwriteStartDocument(StartDocument start, Writer writer)Writes aStartDocumentto the provided stream.static voidwriteStartDocument(StartDocument start, XMLStreamWriter writer)Writes aStartDocumentto the provided stream.static voidwriteStartElement(QName name, Iterator attributes, Iterator namespaces, boolean empty, Writer writer)Writes a start tag and any associated namespaces and attributes to the provided stream.static voidwriteStartElement(QName name, Iterator attributes, Iterator namespaces, Writer writer)Writes a start tag and any associated namespaces and attributes to the provided stream.static voidwriteStartElement(QName name, Map attributes, Map namespaces, boolean empty, Writer writer)Writes a start tag and any associated namespaces and attributes to the provided stream.static voidwriteStartElement(StartElement start, boolean empty, Writer writer)Writes aStartElementevent to the provided stream.static voidwriteStartElement(StartElement start, boolean empty, XMLStreamWriter writer)Writes aStartElementevent to the provided stream.static voidwriteStartElement(StartElement start, Writer writer)Writes aStartElementevent to the provided stream.
-
-
-
Method Detail
-
writeQuotedValue
public static final void writeQuotedValue(String value, Writer writer) throws IOException
Writes a quoted version of the given value, automatically determining the appropriate quote character. The value will not be encoded before being written. This method is useful when writing quoted DTD values, such as system IDs.- Parameters:
value- The value to quote and output.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeEncodedQuotedValue
public static final void writeEncodedQuotedValue(String value, Writer writer) throws IOException
Encodes the given value and writes it to the provided stream, wrapping it in the appropriate quote character. This method is useful when writing attribute values, and entity replacement text.- Parameters:
value- The value to encode, quote, and output.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeEncodedValue
public static final void writeEncodedValue(String value, char quoteChar, Writer writer) throws IOException
Encodes the given value, and writes it to the stream, but does not actually wrap the value in the quote character. The provided quote character is used to determine whether a character must be encoded or not.- Parameters:
value- The value to encode and output.quoteChar- The quote character; used to determine which characters need to be encoded.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeEncodedText
public static final void writeEncodedText(CharSequence text, Writer writer) throws IOException
Encodes the provided text and writes it to the provided stream. This method is useful when writing character data, such as element text or CData sections, and will not encode single or double quotes.- Parameters:
text- The text to write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeEncodedText
public static final void writeEncodedText(char[] text, int start, int len, Writer writer) throws IOException- Throws:
IOException
-
writeEncodedCharacter
public static final void writeEncodedCharacter(char c, Writer writer) throws IOExceptionEncodes the provided character if needed, and writes it to an output stream.- Parameters:
c- The character to encode and output.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeQName
public static final void writeQName(QName name, Writer writer) throws IOException
Writes a qualified name to the provided stream.- Parameters:
name- The name to write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeQName
public static final void writeQName(String prefix, String localPart, Writer writer) throws IOException
Writes a qualified name to the provided stream.- Parameters:
prefix- The prefix, ornulllocalPart- The local part.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeEvent
public static final void writeEvent(XMLEvent event, Writer writer) throws IOException, XMLStreamException
Writes the given event to the providedWriter. This method will delegate the actual task of writing to the stream to the appropriate overloaded method.- Parameters:
event- The event to write.writer- The destination XML stream.- Throws:
IOException- If an error occurs writing to the stream.XMLStreamException- If the event is a StartElement and an error occurs writing the Namespace or Attribute events.IllegalArgumentException- If the event is an unknown type.
-
writeStartDocument
public static final void writeStartDocument(StartDocument start, Writer writer) throws IOException
Writes aStartDocumentto the provided stream.- Parameters:
start- TheStartDocumentto write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeStartDocument
public static final void writeStartDocument(Writer writer) throws IOException
Writes a default XML declaration to the provided stream.- Parameters:
writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeStartDocument
public static final void writeStartDocument(String version, Writer writer) throws IOException
Writes an XML declaration to the provided stream.- Parameters:
version- The xml version definition.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeStartDocument
public static final void writeStartDocument(String version, String encoding, Writer writer) throws IOException
Writes an XML declaration to the provided stream.- Parameters:
version- The xml version definition.encoding- The document encoding, ornullwriter- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeStartDocument
public static final void writeStartDocument(String version, String encoding, boolean standalone, Writer writer) throws IOException
Writes an XML declaration to the provided stream.- Parameters:
version- The xml version definition.encoding- The document encoding, ornullstandalone- The standalone definitionwriter- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeStartDocument
public static final void writeStartDocument(String version, String encoding, String standalone, Writer writer) throws IOException
Writes an XML declaration to the provided stream.- Parameters:
version- The xml version definition.encoding- The document encoding, ornullstandalone- The standalone definition, ornullwriter- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeEndDocument
public static final void writeEndDocument(EndDocument end, Writer writer) throws IOException
Writes anEndDocumentto the provided stream.- Parameters:
end- TheEndDocumentto write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeEndDocument
public static final void writeEndDocument(Writer writer) throws IOException
Writes an document ending to the provided stream.- Parameters:
writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeStartElement
public static final void writeStartElement(StartElement start, Writer writer) throws IOException, XMLStreamException
Writes aStartElementevent to the provided stream.- Parameters:
start- TheStartElementevent to write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.XMLStreamException- If an error occurs writing any namespaces or attribute events.
-
writeStartElement
public static final void writeStartElement(StartElement start, boolean empty, Writer writer) throws IOException, XMLStreamException
Writes aStartElementevent to the provided stream.- Parameters:
start- TheStartElementevent to write.empty- Whether the element is empty.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.XMLStreamException- If an error occurs writing any namespaces or attribute events.
-
writeStartElement
public static final void writeStartElement(QName name, Iterator attributes, Iterator namespaces, Writer writer) throws IOException, XMLStreamException
Writes a start tag and any associated namespaces and attributes to the provided stream.- Parameters:
name- The tag name.attributes- AnAttributeiterator, ornull.namespaces- ANamespaceiterator, ornull.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.XMLStreamException- If an error occurs writing any namespaces or attribute events.
-
writeStartElement
public static final void writeStartElement(QName name, Iterator attributes, Iterator namespaces, boolean empty, Writer writer) throws IOException, XMLStreamException
Writes a start tag and any associated namespaces and attributes to the provided stream.- Parameters:
name- The tag name.attributes- AnAttributeiterator, ornull.namespaces- ANamespaceiterator, ornull.empty- Whether the element is empty.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.XMLStreamException
-
writeStartElement
public static final void writeStartElement(QName name, Map attributes, Map namespaces, boolean empty, Writer writer) throws IOException
Writes a start tag and any associated namespaces and attributes to the provided stream.- Parameters:
name- The tag name.attributes- AMapof attribute values, keyed by theirQNames. If no attributes are present, this may be null.namespaces- AMapof namespace values, keyed by their prefixes. If no namespaces are present, this may be null.empty- Whether the element is empty.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeAttribute
public static final void writeAttribute(Attribute attr, Writer writer) throws IOException
Writes anAttributeto the provided stream.- Parameters:
attr- TheAttributeto write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeAttribute
public static final void writeAttribute(QName name, String value, Writer writer) throws IOException
Writes an attribute to the provided stream.- Parameters:
name- The attribute name.value- The attribute value.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeNamespace
public static final void writeNamespace(Namespace ns, Writer writer) throws IOException
Writes aNamespaceto the provided stream.- Parameters:
ns- TheNamespaceto write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeNamespace
public static final void writeNamespace(String prefix, String uri, Writer writer) throws IOException
Writes aNamespaceto the provided stream.- Parameters:
prefix- The namespace prefix, which may benull.uri- The namespace uri.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeEndElement
public static final void writeEndElement(EndElement end, Writer writer) throws IOException
Writes anEndElementto the provided stream.- Parameters:
end- TheEndElementto write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeEndElement
public static final void writeEndElement(QName name, Writer writer) throws IOException
Writes an element end tag to the provided stream.- Parameters:
name- The element name.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeCharacters
public static final void writeCharacters(Characters chars, Writer writer) throws IOException
Writes aCharactersto the provided stream.- Parameters:
chars- TheCharactersto write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeCharacters
public static final void writeCharacters(CharSequence text, Writer writer) throws IOException
Writes a chunk of encoded text to the provided stream.- Parameters:
text- The text to write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeCharacters
public static final void writeCharacters(char[] data, int start, int length, Writer writer) throws IOExceptionWrites a chunk of encoded text to the provided stream.- Parameters:
data- A character array containing the characters.start- The starting index into the array.length- The number of characters to write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeCData
public static final void writeCData(String text, Writer writer) throws IOException
Writes aCharactersto the provided stream.- Parameters:
text- The CData text to write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeCData
public static final void writeCData(char[] data, int start, int length, Writer writer) throws IOExceptionWrites aCharactersto the provided stream.- Parameters:
data- A character array containing the cdata text.start- The starting index into the array.length- The number of characters to write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeComment
public static final void writeComment(Comment comment, Writer writer) throws IOException
Writes aCommentto the provided stream.- Parameters:
comment- TheCommentto write.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.IOException
-
writeComment
public static final void writeComment(String comment, Writer writer) throws IOException
Writes a comment to the provided stream.- Parameters:
comment- The comment text.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.IOException
-
writeEntityReference
public static final void writeEntityReference(EntityReference entityRef, Writer writer) throws IOException
Writes anEntityReferenceto the provided stream.- Parameters:
entityRef- TheEntityReferenceto write.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.IOException
-
writeEntityReference
public static final void writeEntityReference(String entityRef, Writer writer) throws IOException
Writes an entity reference to the provided stream.- Parameters:
entityRef- The name of the entity reference.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.IOException
-
writeEntityDeclaration
public static final void writeEntityDeclaration(EntityDeclaration declaration, Writer writer) throws IOException
Writes anEntityDeclarationto the stream.- Parameters:
declaration- TheEntityDeclarationto write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeEntityDeclaration
public static final void writeEntityDeclaration(String name, String publicId, String systemId, String notation, Writer writer) throws IOException
Writes an external entity declaration to the stream. Either or both of thepublicIdandsystemIdparameters must be non-null.- Parameters:
name- The entity name.publicId- The entity public ID, ornull.systemId- The entity system ID, ornull.notation- The notation name, ornull.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeEntityDeclaration
public static final void writeEntityDeclaration(String name, String text, String notation, Writer writer) throws IOException
Writes an internal entity declaration to the stream.- Parameters:
name- The entity name.text- The entity replacement text.notation- The notation name, ornull.writer-- Throws:
IOException
-
writeNotationDeclaration
public static final void writeNotationDeclaration(NotationDeclaration declaration, Writer writer) throws IOException
Writes aNotationDeclarationto the stream.- Parameters:
declaration- TheNotationDeclarationto write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeNotationDeclaration
public static final void writeNotationDeclaration(String name, String publicId, String systemId, Writer writer) throws IOException
Writes a notation declaration to the stream. Either or both of thepublicIdandsystemIdparameters must be non-null.- Parameters:
name- The notation name.publicId- The entity public ID, ornull.systemId- The entity system ID, ornull.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeProcessingInstruction
public static final void writeProcessingInstruction(ProcessingInstruction procInst, Writer writer) throws IOException
Writes aProcessingInstructionto the provided stream.- Parameters:
procInst- TheProcessingInstructionto write.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.IOException
-
writeProcessingInstruction
public static final void writeProcessingInstruction(String target, String data, Writer writer) throws IOException
Writes aProcessingInstructionto the provided stream.- Parameters:
target- The instruction target.data- The instruction data, ornull.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.IOException
-
writeDTD
public static final void writeDTD(DTD dtd, Writer writer) throws IOException
Writes aDTDto the provided stream.- Parameters:
dtd- TheDTDto write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeDTD
public static final void writeDTD(String dtd, Writer writer) throws IOException
Writes a dtd to the provided stream.- Parameters:
dtd- The dtd to write.writer- The destination stream.- Throws:
IOException- If an error occurs writing to the stream.
-
writeEvent
public static final void writeEvent(XMLEvent event, XMLStreamWriter writer) throws XMLStreamException
Writes the given event to the providedXMLStreamWriter. This method will delegate the actual task of writing to the stream to the appropriate overloaded method.- Parameters:
event- The event to write.writer- The destination XML stream.- Throws:
XMLStreamException- If an error occurs writing the event.
-
writeStartElement
public static final void writeStartElement(StartElement start, boolean empty, XMLStreamWriter writer) throws XMLStreamException
Writes aStartElementevent to the provided stream.- Parameters:
start- TheStartElementevent to write.empty- Whether the element is empty.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.
-
writeEndElement
public static final void writeEndElement(EndElement end, XMLStreamWriter writer) throws XMLStreamException
Writes anEndElementto the provided stream.- Parameters:
end- TheEndElementto write.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.
-
writeAttribute
public static final void writeAttribute(Attribute attr, XMLStreamWriter writer) throws XMLStreamException
Writes anAttributeto the provided stream.- Parameters:
attr- TheAttributeto write.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.
-
writeNamespace
public static final void writeNamespace(Namespace ns, XMLStreamWriter writer) throws XMLStreamException
Writes aNamespaceto the provided stream.- Parameters:
ns- TheNamespaceto write.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.
-
writeStartDocument
public static final void writeStartDocument(StartDocument start, XMLStreamWriter writer) throws XMLStreamException
Writes aStartDocumentto the provided stream.- Parameters:
start- TheStartDocumentto write.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.
-
writeEndDocument
public static final void writeEndDocument(EndDocument end, XMLStreamWriter writer) throws XMLStreamException
Writes anEndDocumentto the provided stream.- Parameters:
end- TheEndDocumentto write.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.
-
writeCharacters
public static final void writeCharacters(Characters chars, XMLStreamWriter writer) throws XMLStreamException
Writes aCharactersto the provided stream.- Parameters:
chars- TheCharactersto write.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.
-
writeComment
public static final void writeComment(Comment comment, XMLStreamWriter writer) throws XMLStreamException
Writes aCommentto the provided stream.- Parameters:
comment- TheCommentto write.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.
-
writeEntityReference
public static final void writeEntityReference(EntityReference entityRef, XMLStreamWriter writer) throws XMLStreamException
Writes anEntityReferenceto the provided stream.- Parameters:
entityRef- TheEntityReferenceto write.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.
-
writeProcessingInstruction
public static final void writeProcessingInstruction(ProcessingInstruction procInst, XMLStreamWriter writer) throws XMLStreamException
Writes aProcessingInstructionto the provided stream.- Parameters:
procInst- TheProcessingInstructionto write.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.
-
writeDTD
public static final void writeDTD(DTD dtd, XMLStreamWriter writer) throws XMLStreamException
Writes aDTDto the provided stream.- Parameters:
dtd- TheDTDto write.writer- The destination stream.- Throws:
XMLStreamException- If an error occurs writing to the stream.
-
-