## javax.xml.soap
Interface Node

All Superinterfaces:
  org.w3c.dom.Node

All Known Subinterfaces:
  Detail, DetailEntry, SOAPBody, SOAPBodyElement, SOAPElement, SOAPEnvelope, SOAPFault, SOAPFaultElement, SOAPHeader, SOAPHeaderElement, Text

All Known Implementing Classes:
  CommentImpl, Detail, DetailEntry, MessageElement, NodeImpl, SOAPBody, SOAPBodyElement, SOAPEnvelope, SOAPFault, SOAPFaultElement, SOAPHeader, SOAPHeaderElement, Text

public interface Node
extends org.w3c.dom.Node

A representation of a node (element) in a DOM representation of an XML document that provides some tree manipulation methods. This interface provides methods for getting the value of a node, for getting and setting the parent of a node, and for removing a node.

Field Summary

Fields inherited from interface org.w3c.dom.Node
`ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE`

Method Summary
`void` `detachNode()` Removes this `Node` object from the tree.
`SOAPElement` `getParentElement()` Returns the parent element of this `Node` object.
`java.lang.String` `getValue()` Returns the the value of the immediate child of this `Node` object if a child exists and its value is text.
`void` `recycleNode()` Notifies the implementation that this `Node` object is no longer being used by the application and that the implementation is free to reuse this object for nodes that may be created later.
`void` `setParentElement(SOAPElement parent)` Sets the parent of this `Node` object to the given `SOAPElement` object.
`void` `setValue(java.lang.String value)` If this is a Text node then this method will set its value, otherwise it sets the value of the immediate (Text) child of this node.

Methods inherited from interface org.w3c.dom.Node
`appendChild, cloneNode, getAttributes, getChildNodes, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, hasAttributes, hasChildNodes, insertBefore, isSupported, normalize, removeChild, replaceChild, setNodeValue, setPrefix`

Method Detail

### getValue

    public java.lang.String getValue()

  Returns the the value of the immediate child of this `Node` object if a child exists and its value is text.

  Returns:
    a `String` with the text of the immediate child of this `Node` object if (1) there is a child and (2) the child is a `Text` object; `null` otherwise

### setParentElement

    public void setParentElement(SOAPElement parent)
                          throws SOAPException

  Sets the parent of this `Node` object to the given `SOAPElement` object.

  Parameters:
    `parent` - the `SOAPElement` object to be set as the parent of this `Node` object
  Throws:
    `SOAPException` - if there is a problem in setting the parent to the given element
  See Also:
    `getParentElement()`

### getParentElement

    public SOAPElement getParentElement()

  Returns the parent element of this `Node` object. This method can throw an `UnsupportedOperationException` if the tree is not kept in memory.

  Returns:
    the `SOAPElement` object that is the parent of this `Node` object or `null` if this `Node` object is root
  Throws:
    `java.lang.UnsupportedOperationException` - if the whole tree is not kept in memory
  See Also:
    `setParentElement(javax.xml.soap.SOAPElement)`

### detachNode

    public void detachNode()

  Removes this `Node` object from the tree. Once removed, this node can be garbage collected if there are no application references to it.

### recycleNode

    public void recycleNode()

  Notifies the implementation that this `Node` object is no longer being used by the application and that the implementation is free to reuse this object for nodes that may be created later.

  Calling the method `recycleNode` implies that the method `detachNode` has been called previously.

### setValue

    public void setValue(java.lang.String value)

  If this is a Text node then this method will set its value, otherwise it sets the value of the immediate (Text) child of this node. The value of the immediate child of this node can be set only if, there is one child node and that node is a Text node, or if there are no children in which case a child Text node will be created.

  Parameters:
    `value` - the text to set
  Throws:
    `java.lang.IllegalStateException` - if the node is not a Text node and either has more than one child node or has a child node that is not a Text node

Copyright © 2005 Apache Web Services Project. All Rights Reserved.