Returns a copy of this DocumentPrinter
that omits XML declarations
Converts the Document
to a String
.
Converts the Document
to a String
. May use a lot of memory for large XML documents.
To have more control over the character encoding of the output, when converting the String to bytes
(and of the encoding mentioned in the XML declaration, if any), consider using one of the other overloaded
print
methods taking a Document
.
Serializes the Document
to an output stream, using the given encoding.
Serializes the Document
to an output stream, using the given encoding.
This method should close the output stream afterwards.
May use a lot of memory for large XML documents, although not as much as the print
method that returns a byte array.
Converts the Elem
to a String
, omitting the XML declaration.
Converts the Elem
to a String
, omitting the XML declaration. May use a lot of memory for large XML documents.
To have more control over the character encoding of the output, when converting the String to bytes
(and of the encoding mentioned in the XML declaration, if any), consider using one of the other overloaded
print
methods taking an Elem
.
Serializes the Elem
to an output stream, omitting the XML declaration.
Serializes the Elem
to an output stream, omitting the XML declaration.
This method should close the output stream afterwards.
Converts the Elem
to a byte array, omitting the XML declaration
Converts the Document
to a byte array, using the given encoding.
Converts the Document
to a byte array, using the given encoding. May use a lot of memory for large XML documents.
Document printer (to the XML as a
String
or byte array).Implementing classes deal with the details of printing yaidom documents as XML strings or byte arrays. The yaidom package itself is agnostic of those details.
Typical implementations use DOM or StAX, but make them easier to use in the tradition of the "template" classes of the Spring framework. That is, resource management is done as much as possible by the
DocumentPrinter
, typical usage is easy, and complex scenarios are still possible. The idea is that the document printer is configured once, and that it should be re-usable multiple times.Although
DocumentPrinter
instances should be re-usable multiple times, implementing classes are encouraged to indicate to what extent re-use of aDocumentPrinter
instance is indeed supported (single-threaded, or even multi-threaded).