Class XmlWriter
- All Implemented Interfaces:
Closeable,Flushable,Appendable,AutoCloseable
- Direct Known Subclasses:
HtmlWriter
Notes:
- This class is not intended for external use.
See Also:
-
Field Summary
Fields inherited from class org.apache.juneau.serializer.SerializerWriter
maxIndent, out, quoteChar, trimStrings, uriResolver, useWhitespace -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionappend(char c) append(char[] value) Appends the specified characters to this writer.append(int indent, char c) Writes an indent (if theuseWhitespacesetting is enabled), followed by text.Writes an indent (if theuseWhitespacesetting is enabled), followed by text.Writes the specified text to the writer if it isn'tnull .Writes the specified text to the writer if it isn'tnull .appendIf(boolean flag, char value) Writes the specified text to the writer if b is true.Writes the specified text to the writer if b is true.Writes an indent (if theuseWhitespacesetting is enabled), followed by text, followed by a newline (if theuseWhitespacesetting is enabled).Writes the specified text followed by a newline (if theuseWhitespacesetting is enabled).Appends the specified object as a URI.Shortcut forattr(null , name, value,false );Shortcut forattr(null , name, value,false );Shortcut forattr(ns, name, value,false );Writes an attribute to the output:ns:name ='value' Same asattr(String, String, Object), except pass in aNamespaceobject for the namespace.Append an attribute with a URI value.Writes an attribute with a URI value to the output:ns:name ='uri-value' Writes an attribute with a URI value to the output:ns:name ='uri-value' ceTag()Closes an empty tag.cr(int depth) Performs a carriage return.cre(int depth) Performs a carriage return at the end of a line.cTag()Closes a tag.Shortcut fori(indent).eTag(null , name,false );Shortcut fori(indent).eTag(ns, name,false );Shortcut fori(indent).eTag(ns, name, needsEncoding); Shortcut foreTag(null , name,false );Shortcut foreTag(ns, name,false );Writes an end tag to the output:</ns:name> i(int indent) Writes an indent to the writer if theuseWhitespacesetting is enabled.ie(int indent) Writes an end-of-line indent to the writer if theuseWhitespacesetting is enabled.nl(int indent) Writes a newline to the writer if theuseWhitespacesetting is enabled.nlIf(boolean flag, int indent) Writes a newline to the writer if theuseWhitespacesetting is enabled and the boolean flag is true.Writes an open-ended attribute to the output:ns:name =Writes an open-ended attribute to the output:ns:name =Shortcut fori(indent).oTag(null , name,false );Shortcut fori(indent).oTag(ns, name,false );Shortcut fori(indent).oTag(ns, name, needsEncoding); Shortcut foroTag(null , name,false );Shortcut foroTag(ns, name,false );Writes an opening tag to the output:<ns:name q()Adds the quote character specified by thequoteCharsetting to the output.s()Adds a whitespace character to the output if theuseWhitespacesetting is enabled.sIf(boolean flag) Writes a space if the boolean expression istrue anduseWhitespaceis false.Shortcut fori(indent).sTag(null , name,false );Shortcut fori(indent).sTag(ns, name,false );Shortcut fori(indent).sTag(ns, name, needsEncoding); Shortcut forsTag(null , name,false );Shortcut forsTag(ns, name,false );Writes a start tag to the output:<ns:name> Shortcut fori(indent).tag(null , name,false );Shortcut fori(indent).tag(ns, name,false );Shortcut fori(indent).tag(ns, name, needsEncoding); Shortcut fortag(null , name,false );Shortcut fortag(ns, name,false );Writes a closed tag to the output:<ns:name/> Shortcut for callingtext(o,false );Serializes and encodes the specified object as valid XML text.Same astext(Object)but treats the value as a URL to resolved then serialized.toString()w(char c) Writes the specified character to the writer.Writes the specified string to the writer.Methods inherited from class org.apache.juneau.serializer.SerializerWriter
close, flush, write
-
Constructor Details
-
XmlWriter
public XmlWriter(Writer out, boolean useWhitespace, int maxIndent, boolean trimStrings, char quoteChar, UriResolver uriResolver, boolean enableNs, Namespace defaultNamespace) Constructor.- Parameters:
out- The wrapped writer.useWhitespace- Iftrue XML elements will be indented.maxIndent- The maximum indentation level.trimStrings- Iftrue , strings should be trimmed before they're serialized.quoteChar- The quote character to use for attributes. Should be'\'' or'"' .uriResolver- The URI resolver for resolving URIs to absolute or root-relative form.enableNs- Flag to indicate if XML namespaces are enabled.defaultNamespace- The default namespace if XML namespaces are enabled.
-
XmlWriter
Copy constructor.- Parameters:
w- Writer being copied.
-
-
Method Details
-
append
- Specified by:
appendin interfaceAppendable- Overrides:
appendin classSerializerWriter
-
append
Description copied from class:SerializerWriterAppends the specified characters to this writer.- Overrides:
appendin classSerializerWriter- Parameters:
value- The characters to append to this writer.- Returns:
- This object.
-
append
Description copied from class:SerializerWriterWrites an indent (if theuseWhitespacesetting is enabled), followed by text.- Overrides:
appendin classSerializerWriter- Parameters:
indent- The number of tabs to indent.c- The character to write.- Returns:
- This object.
-
append
Description copied from class:SerializerWriterWrites an indent (if theuseWhitespacesetting is enabled), followed by text.- Overrides:
appendin classSerializerWriter- Parameters:
indent- The number of tabs to indent.text- The text to write.- Returns:
- This object.
-
append
Description copied from class:SerializerWriterWrites the specified text to the writer if it isn'tnull .- Overrides:
appendin classSerializerWriter- Parameters:
text- The text to write.- Returns:
- This object.
-
append
Description copied from class:SerializerWriterWrites the specified text to the writer if it isn'tnull .- Overrides:
appendin classSerializerWriter- Parameters:
text- The text to write.- Returns:
- This object.
-
appendIf
Description copied from class:SerializerWriterWrites the specified text to the writer if b is true.- Overrides:
appendIfin classSerializerWriter- Parameters:
flag- Boolean flag.value- The text to write.- Returns:
- This object.
-
appendIf
Description copied from class:SerializerWriterWrites the specified text to the writer if b is true.- Overrides:
appendIfin classSerializerWriter- Parameters:
flag- Boolean flag.value- The text to write.- Returns:
- This object.
-
appendln
Description copied from class:SerializerWriterWrites an indent (if theuseWhitespacesetting is enabled), followed by text, followed by a newline (if theuseWhitespacesetting is enabled).- Overrides:
appendlnin classSerializerWriter- Parameters:
indent- The number of tabs to indent.text- The text to write.- Returns:
- This object.
-
appendln
Description copied from class:SerializerWriterWrites the specified text followed by a newline (if theuseWhitespacesetting is enabled).- Overrides:
appendlnin classSerializerWriter- Parameters:
text- The text to write.- Returns:
- This object.
-
appendUri
Description copied from class:SerializerWriterAppends the specified object as a URI.Object is converted to a
String usingtoString() , so this will work onURLorURIobjects, or any other type that returns a URI via it'stoString() method.The URI is resolved based on the
Serializer.Builder.uriRelativity(UriRelativity)andSerializer.Builder.uriResolution(UriResolution)settings and theUriContextthat's part of the session.- Overrides:
appendUriin classSerializerWriter- Parameters:
value- The URI to serialize.- Returns:
- This object.
-
attr
Same asattr(String, String, Object), except pass in aNamespaceobject for the namespace.- Parameters:
ns- The namespace. Can benull .name- The attribute name.value- The attribute value.- Returns:
- This object.
-
attr
Shortcut forattr(null , name, value,false );- Parameters:
name- The attribute name.value- The attribute value.- Returns:
- This object.
-
attr
Shortcut forattr(null , name, value,false );- Parameters:
name- The attribute name.value- The attribute value.valNeedsEncoding- Iftrue , attribute name will be encoded.- Returns:
- This object.
-
attr
Shortcut forattr(ns, name, value,false );- Parameters:
ns- The namespace. Can benull .name- The attribute name.value- The attribute value.- Returns:
- This object.
-
attr
Writes an attribute to the output:ns:name ='value' - Parameters:
ns- The namespace. Can benull .name- The attribute name.value- The attribute value.valNeedsEncoding- Iftrue , attribute name will be encoded.- Returns:
- This object.
-
attrUri
Writes an attribute with a URI value to the output:ns:name ='uri-value' - Parameters:
ns- The namespace. Can benull .name- The attribute name.value- The attribute value, convertible to a URI viatoString() - Returns:
- This object.
-
attrUri
Append an attribute with a URI value.- Parameters:
name- The attribute name.value- The attribute value. Can be any object whosetoString() method returns a URI.- Returns:
- This object.
-
attrUri
Writes an attribute with a URI value to the output:ns:name ='uri-value' - Parameters:
ns- The namespace. Can benull .name- The attribute name.value- The attribute value, convertible to a URI viatoString() - Returns:
- This object.
-
ceTag
Closes an empty tag.Shortcut for
append('/' ).append('->' );- Returns:
- This object.
-
cr
Description copied from class:SerializerWriterPerforms a carriage return.Adds a newline and the specified number of tabs (if the
useWhitespacesetting is enabled) to the output.- Overrides:
crin classSerializerWriter- Parameters:
depth- The indentation.- Returns:
- This object.
-
cre
Description copied from class:SerializerWriterPerforms a carriage return at the end of a line.Adds a newline and the specified number of tabs (if the
useWhitespacesetting is enabled) to the output.- Overrides:
crein classSerializerWriter- Parameters:
depth- The indentation.- Returns:
- This object.
-
cTag
Closes a tag.Shortcut for
append('->' );- Returns:
- This object.
-
eTag
Shortcut fori(indent).eTag(null , name,false );- Parameters:
indent- The number of prefix tabs to add.name- The element name.- Returns:
- This object.
-
eTag
Shortcut fori(indent).eTag(ns, name,false );- Parameters:
indent- The number of prefix tabs to add.ns- The namespace. Can benull .name- The element name.- Returns:
- This object.
-
eTag
Shortcut fori(indent).eTag(ns, name, needsEncoding); - Parameters:
indent- The number of prefix tabs to add.ns- The namespace. Can benull .name- The element name.needsEncoding- Iftrue , element name will be encoded.- Returns:
- This object.
-
eTag
Shortcut foreTag(null , name,false );- Parameters:
name- The element name.- Returns:
- This object.
-
eTag
Shortcut foreTag(ns, name,false );- Parameters:
ns- The namespace. Can benull .name- The element name.- Returns:
- This object.
-
eTag
Writes an end tag to the output:</ns:name> - Parameters:
ns- The namespace. Can benull .name- The element name.needsEncoding- Iftrue , element name will be encoded.- Returns:
- This object.
-
i
Description copied from class:SerializerWriterWrites an indent to the writer if theuseWhitespacesetting is enabled.- Overrides:
iin classSerializerWriter- Parameters:
indent- The number of tabs to indent.- Returns:
- This object.
-
ie
Description copied from class:SerializerWriterWrites an end-of-line indent to the writer if theuseWhitespacesetting is enabled.- Overrides:
iein classSerializerWriter- Parameters:
indent- The number of tabs to indent.- Returns:
- This object.
-
nl
Description copied from class:SerializerWriterWrites a newline to the writer if theuseWhitespacesetting is enabled.- Overrides:
nlin classSerializerWriter- Parameters:
indent- The current indentation level.- Returns:
- This object.
-
nlIf
Description copied from class:SerializerWriterWrites a newline to the writer if theuseWhitespacesetting is enabled and the boolean flag is true.- Overrides:
nlIfin classSerializerWriter- Parameters:
flag- The boolean flag.indent- The current indentation level.- Returns:
- This object.
-
oAttr
Writes an open-ended attribute to the output:ns:name =- Parameters:
ns- The namespace. Can benull .name- The attribute name.- Returns:
- This object.
-
oAttr
Writes an open-ended attribute to the output:ns:name =- Parameters:
ns- The namespace. Can benull .name- The attribute name.- Returns:
- This object.
-
oTag
Shortcut fori(indent).oTag(null , name,false );- Parameters:
indent- The number of prefix tabs to add.name- The element name.- Returns:
- This object.
-
oTag
Shortcut fori(indent).oTag(ns, name,false );- Parameters:
indent- The number of prefix tabs to add.ns- The namespace. Can benull .name- The element name.- Returns:
- This object.
-
oTag
Shortcut fori(indent).oTag(ns, name, needsEncoding); - Parameters:
indent- The number of prefix tabs to add.ns- The namespace. Can benull .name- The element name.needsEncoding- Iftrue , element name will be encoded.- Returns:
- This object.
-
oTag
Shortcut foroTag(null , name,false );- Parameters:
name- The element name.- Returns:
- This object.
-
oTag
Shortcut foroTag(ns, name,false );- Parameters:
ns- The namespace. Can benull .name- The element name.- Returns:
- This object.
-
oTag
Writes an opening tag to the output:<ns:name - Parameters:
ns- The namespace. Can benull .name- The element name.needsEncoding- Iftrue , element name will be encoded.- Returns:
- This object.
-
q
Description copied from class:SerializerWriterAdds the quote character specified by thequoteCharsetting to the output.- Overrides:
qin classSerializerWriter- Returns:
- This object.
-
s
Description copied from class:SerializerWriterAdds a whitespace character to the output if theuseWhitespacesetting is enabled.- Overrides:
sin classSerializerWriter- Returns:
- This object.
-
sIf
Description copied from class:SerializerWriterWrites a space if the boolean expression istrue anduseWhitespaceis false.Intended for cases in XML where text should be separated by either a space or newline. This ensures the text is separated by a space if whitespace is disabled.
- Overrides:
sIfin classSerializerWriter- Parameters:
flag- The boolean flag.- Returns:
- This object.
-
sTag
Shortcut fori(indent).sTag(null , name,false );- Parameters:
indent- The number of prefix tabs to add.name- The element name.- Returns:
- This object.
-
sTag
Shortcut fori(indent).sTag(ns, name,false );- Parameters:
indent- The number of prefix tabs to add.ns- The namespace. Can benull .name- The element name.- Returns:
- This object.
-
sTag
Shortcut fori(indent).sTag(ns, name, needsEncoding); - Parameters:
indent- The number of prefix tabs to add.ns- The namespace. Can benull .name- The element name.needsEncoding- Iftrue , element name will be encoded.- Returns:
- This object.
-
sTag
Shortcut forsTag(null , name,false );- Parameters:
name- The element name.- Returns:
- This object.
-
sTag
Shortcut forsTag(ns, name,false );- Parameters:
ns- The namespace. Can benull .name- The element name.- Returns:
- This object.
-
sTag
Writes a start tag to the output:<ns:name> - Parameters:
ns- The namespace. Can benull .name- The element name.needsEncoding- Iftrue , element name will be encoded.- Returns:
- This object.
-
tag
Shortcut fori(indent).tag(null , name,false );- Parameters:
indent- The number of prefix tabs to add.name- The element name.- Returns:
- This object.
-
tag
Shortcut fori(indent).tag(ns, name,false );- Parameters:
indent- The number of prefix tabs to add.ns- The namespace. Can benull .name- The element name.- Returns:
- This object.
-
tag
Shortcut fori(indent).tag(ns, name, needsEncoding); - Parameters:
indent- The number of prefix tabs to add.ns- The namespace. Can benull .name- The element name.needsEncoding- Iftrue , element name will be encoded.- Returns:
- This object.
-
tag
Shortcut fortag(null , name,false );- Parameters:
name- The element name.- Returns:
- This object.
-
tag
Shortcut fortag(ns, name,false );- Parameters:
ns- The namespace. Can benull .name- The element name.- Returns:
- This object.
-
tag
Writes a closed tag to the output:<ns:name/> - Parameters:
ns- The namespace. Can benull .name- The element name.needsEncoding- Iftrue , element name will be encoded.- Returns:
- This object.
-
text
Shortcut for callingtext(o,false );- Parameters:
value- The object being serialized.- Returns:
- This object.
-
text
Serializes and encodes the specified object as valid XML text.- Parameters:
value- The object being serialized.preserveWhitespace- Iftrue , then we're serializingXmlFormat.MIXED_PWSorXmlFormat.TEXT_PWScontent.- Returns:
- This object.
-
textUri
Same astext(Object)but treats the value as a URL to resolved then serialized.- Parameters:
value- The object being serialized.- Returns:
- This object.
-
toString
-
w
Description copied from class:SerializerWriterWrites the specified character to the writer.- Overrides:
win classSerializerWriter- Parameters:
c- The character to write.- Returns:
- This object.
-
w
Description copied from class:SerializerWriterWrites the specified string to the writer.- Overrides:
win classSerializerWriter- Parameters:
s- The string to write.- Returns:
- This object.
-