javax.xml.transform.dom
Class DOMResult

java.lang.Object
  extended by javax.xml.transform.dom.DOMResult
All Implemented Interfaces:
Result

public class DOMResult
extends java.lang.Object
implements Result

Acts 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 getNode().

Version:
$Revision: 446598 $, $Date: 2006-09-15 08:55:40 -0400 (Fri, 15 Sep 2006) $
Author:
Jeff Suttor

Field Summary
static java.lang.String FEATURE
          If TransformerFactory.getFeature(java.lang.String) returns true when passed this value as an argument, the Transformer supports Result output of this type.
 
Fields inherited from interface javax.xml.transform.Result
PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING
 
Constructor Summary
DOMResult()
          Zero-argument default constructor.
DOMResult(Node node)
          Use a DOM node to create a new output target.
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.
DOMResult(Node node, Node nextSibling, java.lang.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.
DOMResult(Node node, java.lang.String systemId)
          Use a DOM node to create a new output target with the specified System ID.
 
Method Summary
 Node getNextSibling()
          Get the child node before which the result nodes will be inserted.
 Node getNode()
          Get the node that will contain the result DOM tree.
 java.lang.String getSystemId()
          Get the System Identifier.
 void setNextSibling(Node nextSibling)
          Set the child node before which the result nodes will be inserted.
 void setNode(Node node)
          Set the node that will contain the result DOM tree.
 void setSystemId(java.lang.String systemId)
          Set the systemId that may be used in association with the node.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

FEATURE

public static final java.lang.String FEATURE

If TransformerFactory.getFeature(java.lang.String) returns true when passed this value as an argument, the Transformer supports Result output of this type.

See Also:
Constant Field Values
Constructor Detail

DOMResult

public DOMResult()

Zero-argument default constructor.

node, siblingNode and systemId will be set to null.


DOMResult

public DOMResult(Node node)

Use a DOM node to create a new output target.

In practice, the node should be a Document node, a DocumentFragment node, or a Element node. In other words, a node that accepts children.

siblingNode and systemId will be set to null.

Parameters:
node - The DOM node that will contain the result tree.

DOMResult

public DOMResult(Node node,
                 java.lang.String systemId)

Use a DOM node to create a new output target with the specified System ID.

In practice, the node should be a Document node, a DocumentFragment node, or a Element node. In other words, a node that accepts children.

siblingNode will be set to null.

Parameters:
node - The DOM node that will contain the result tree.
systemId - The system identifier which may be used in association with this node.

DOMResult

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 Document node, a DocumentFragment node, or a 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 DOMResult(Node node), i.e. append the result nodes as the last child of the specified node.

systemId will be set to null.

Parameters:
node - The DOM node that will contain the result tree.
nextSibling - The child node where the result nodes should be inserted before.
Throws:
java.lang.IllegalArgumentException - If nextSibling is not a sibling of node.
java.lang.IllegalArgumentException - If node is null and nextSibling is not null.
Since:
1.5

DOMResult

public DOMResult(Node node,
                 Node nextSibling,
                 java.lang.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 Document node, a DocumentFragment node, or a 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 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.

Parameters:
node - The DOM node that will contain the result tree.
nextSibling - The child node where the result nodes should be inserted before.
systemId - The system identifier which may be used in association with this node.
Throws:
java.lang.IllegalArgumentException - If nextSibling is not a sibling of node.
java.lang.IllegalArgumentException - If node is null and nextSibling is not null.
Since:
1.5
Method Detail

setNode

public void setNode(Node node)

Set the node that will contain the result DOM tree.

In practice, the node should be a Document node, a DocumentFragment node, or a 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.

Parameters:
node - The node to which the transformation will be appended.
Throws:
java.lang.IllegalStateException - If nextSibling is not null and nextSibling is not a child of node.
java.lang.IllegalStateException - If node is null and nextSibling is not null.

getNode

public Node getNode()

Get the node that will contain the result DOM tree.

If no node was set via DOMResult(Node node), DOMResult(Node node, String systeId), DOMResult(Node node, Node nextSibling), DOMResult(Node node, Node nextSibling, String systemId) or 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.

Returns:
The node to which the transformation will be appended.

setNextSibling

public void setNextSibling(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 DOMResult(Node node), i.e. append the result nodes as the last child of the specified node.

Parameters:
nextSibling - The child node before which the result nodes will be inserted.
Throws:
java.lang.IllegalArgumentException - If nextSibling is not a descendant of node.
java.lang.IllegalStateException - If node is null and nextSibling is not null.
Since:
1.5

getNextSibling

public Node getNextSibling()

Get the child node before which the result nodes will be inserted.

If no node was set via DOMResult(Node node, Node nextSibling), DOMResult(Node node, Node nextSibling, String systemId) or setNextSibling(Node nextSibling), then null will be returned.

Returns:
The child node before which the result nodes will be inserted.
Since:
1.5

setSystemId

public void setSystemId(java.lang.String systemId)

Set the systemId that may be used in association with the node.

Specified by:
setSystemId in interface Result
Parameters:
systemId - The system identifier as a URI string.

getSystemId

public java.lang.String getSystemId()

Get the System Identifier.

If no System ID was set via DOMResult(Node node, String systemId), DOMResult(Node node, Node nextSibling, String systemId) or setSystemId(String systemId), then null will be returned.

Specified by:
getSystemId in interface Result
Returns:
The system identifier.