DOMResultpublic class DOMResult extends Object implements ResultActs as a holder for a transformation result tree in the form of a Document Object Model (DOM) tree.
If no output DOM source is set, the transformation will create a Document node as the holder for the result of the transformation,
which may be retrieved with {@link #getNode()}. |
Fields Summary |
---|
public static final String | FEATURE If {@link javax.xml.transform.TransformerFactory#getFeature}
returns true when passed this value as an argument,
the Transformer supports Result output of this type. | private Node | node The node to which the transformation will be appended. | private Node | nextSibling The child node before which the result nodes will be inserted. | private String | systemId The System ID that may be used in association with the node. |
Constructors Summary |
---|
public DOMResult()Zero-argument default constructor.
node ,
siblingNode and
systemId
will be set to null .
setNode(null);
setNextSibling(null);
setSystemId(null);
| public DOMResult(Node node)Use a DOM node to create a new output target.
In practice, the node should be
a {@link org.w3c.dom.Document} node,
a {@link org.w3c.dom.DocumentFragment} node, or
a {@link org.w3c.dom.Element} node.
In other words, a node that accepts children.
siblingNode and
systemId
will be set to null .
setNode(node);
setNextSibling(null);
setSystemId(null);
| public DOMResult(Node node, String systemId)Use a DOM node to create a new output target with the specified System ID.
In practice, the node should be
a {@link org.w3c.dom.Document} node,
a {@link org.w3c.dom.DocumentFragment} node, or
a {@link org.w3c.dom.Element} node.
In other words, a node that accepts children.
siblingNode will be set to null .
setNode(node);
setNextSibling(null);
setSystemId(systemId);
| public DOMResult(Node node, Node nextSibling)Use a DOM node to create a new output target specifying the child node where the result nodes should be inserted before.
In practice, node and nextSibling should be
a {@link org.w3c.dom.Document} node,
a {@link org.w3c.dom.DocumentFragment} node, or
a {@link org.w3c.dom.Element} node.
In other words, a node that accepts children.
Use nextSibling to specify the child node
where the result nodes should be inserted before.
If nextSibling is not a sibling of node ,
then an IllegalArgumentException is thrown.
If node is null and nextSibling is not null ,
then an IllegalArgumentException is thrown.
If nextSibling is null ,
then the behavior is the same as calling {@link #DOMResult(Node node)},
i.e. append the result nodes as the last child of the specified node .
systemId will be set to null .
// does the corrent parent/child relationship exist?
if (nextSibling != null) {
// cannot be a sibling of a null node
if (node == null) {
throw new IllegalArgumentException("Cannot create a DOMResult when the nextSibling is contained by the \"null\" node.");
}
// nextSibling contained by node?
if ((node.compareDocumentPosition(nextSibling)&Node.DOCUMENT_POSITION_CONTAINED_BY)==0) {
throw new IllegalArgumentException("Cannot create a DOMResult when the nextSibling is not contained by the node.");
}
}
setNode(node);
setNextSibling(nextSibling);
setSystemId(null);
| public DOMResult(Node node, Node nextSibling, String systemId)Use a DOM node to create a new output target specifying the child node where the result nodes should be inserted before and
the specified System ID.
In practice, node and nextSibling should be
a {@link org.w3c.dom.Document} node,
a {@link org.w3c.dom.DocumentFragment} node, or a
{@link org.w3c.dom.Element} node.
In other words, a node that accepts children.
Use nextSibling to specify the child node
where the result nodes should be inserted before.
If nextSibling is not a sibling of node ,
then an IllegalArgumentException is thrown.
If node is null and nextSibling is not null ,
then an IllegalArgumentException is thrown.
If nextSibling is null ,
then the behavior is the same as calling {@link #DOMResult(Node node, String systemId)},
i.e. append the result nodes as the last child of the specified node and use the specified System ID.
// does the corrent parent/child relationship exist?
if (nextSibling != null) {
// cannot be a sibling of a null node
if (node == null) {
throw new IllegalArgumentException("Cannot create a DOMResult when the nextSibling is contained by the \"null\" node.");
}
// nextSibling contained by node?
if ((node.compareDocumentPosition(nextSibling)&Node.DOCUMENT_POSITION_CONTAINED_BY)==0) {
throw new IllegalArgumentException("Cannot create a DOMResult when the nextSibling is not contained by the node.");
}
}
setNode(node);
setNextSibling(nextSibling);
setSystemId(systemId);
|
Methods Summary |
---|
public org.w3c.dom.Node | getNextSibling()Get the child node before which the result nodes will be inserted.
If no node was set via
{@link #DOMResult(Node node, Node nextSibling)},
{@link #DOMResult(Node node, Node nextSibling, String systemId)} or
{@link #setNextSibling(Node nextSibling)},
then null will be returned.
return nextSibling;
| public org.w3c.dom.Node | getNode()Get the node that will contain the result DOM tree.
If no node was set via
{@link #DOMResult(Node node)},
{@link #DOMResult(Node node, String systeId)},
{@link #DOMResult(Node node, Node nextSibling)},
{@link #DOMResult(Node node, Node nextSibling, String systemId)} or
{@link #setNode(Node node)},
then the node will be set by the transformation, and may be obtained from this method once the transformation is complete.
Calling this method before the transformation will return null .
return node;
| public java.lang.String | getSystemId()Get the System Identifier.
If no System ID was set via
{@link #DOMResult(Node node, String systemId)},
{@link #DOMResult(Node node, Node nextSibling, String systemId)} or
{@link #setSystemId(String systemId)},
then null will be returned.
return systemId;
| public void | setNextSibling(org.w3c.dom.Node nextSibling)Set the child node before which the result nodes will be inserted.
Use nextSibling to specify the child node
before which the result nodes should be inserted.
If nextSibling is not a descendant of node ,
then an IllegalArgumentException is thrown.
If node is null and nextSibling is not null ,
then an IllegalStateException is thrown.
If nextSibling is null ,
then the behavior is the same as calling {@link #DOMResult(Node node)},
i.e. append the result nodes as the last child of the specified node .
// does the corrent parent/child relationship exist?
if (nextSibling != null) {
// cannot be a sibling of a null node
if (node == null) {
throw new IllegalStateException("Cannot create a DOMResult when the nextSibling is contained by the \"null\" node.");
}
// nextSibling contained by node?
if ((node.compareDocumentPosition(nextSibling)&Node.DOCUMENT_POSITION_CONTAINED_BY)==0) {
throw new IllegalArgumentException("Cannot create a DOMResult when the nextSibling is not contained by the node.");
}
}
this.nextSibling = nextSibling;
| public void | setNode(org.w3c.dom.Node node)Set the node that will contain the result DOM tree.
In practice, the node should be
a {@link org.w3c.dom.Document} node,
a {@link org.w3c.dom.DocumentFragment} node, or
a {@link org.w3c.dom.Element} node.
In other words, a node that accepts children.
An IllegalStateException is thrown if
nextSibling is not null and
node is not a parent of nextSibling .
An IllegalStateException is thrown if node is null and
nextSibling is not null .
// does the corrent parent/child relationship exist?
if (nextSibling != null) {
// cannot be a sibling of a null node
if (node == null) {
throw new IllegalStateException("Cannot create a DOMResult when the nextSibling is contained by the \"null\" node.");
}
// nextSibling contained by node?
if ((node.compareDocumentPosition(nextSibling)&Node.DOCUMENT_POSITION_CONTAINED_BY)==0) {
throw new IllegalArgumentException("Cannot create a DOMResult when the nextSibling is not contained by the node.");
}
}
this.node = node;
| public void | setSystemId(java.lang.String systemId)Set the systemId that may be used in association with the node.
this.systemId = systemId;
|
|