Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.novell.xml.dom
Class NamedNodeMapImpl

    java.lang.Object
      com.novell.xml.dom.NamedNodeMapImpl

All Implemented Interfaces:
  NamedNodeMap

    public class NamedNodeMapImpl

extends Object
implements NamedNodeMap

Implementation of DOM level 1 `NamedNodeMap` interface. This is used for attribute nodes in `Element`s, etc.

Constructor Summary
`protected` | `NamedNodeMapImpl(NodeImpl owner)`

Method Summary
`protected void` | `addNode(Node node)` Add a mapping for an ID, if necessary, handle attributes and namespace nodes
`protected void` | `checkNamespaceAttr(AttrImpl attr)` Check the passed node and if is a namespace declarations invalidate the namespace nodes of this and all descendant Elements
`NamedNodeMapImpl` | `cloneThis(NodeImpl clonedOwner)` Make a copy of this NamedNodeMapImpl for use with cloneNode()
`protected int` | `findItem(String name)`
`protected int` | `findItemNS(String namespaceURI, String localName)`
`int` | `getLength()` The number of nodes in the map.
`Node` | `getNamedItem(String name)` Retrieves a node specified by name.
`Node` | `getNamedItemNS(String namespaceURI, String localName)` Retrieves a node specified by local name and namespace URI.
`Node` | `item(int index)` Returns the `index`th item in the map.
`Node` | `removeNamedItem(String name)` Removes a node specified by name.
`Node` | `removeNamedItemNS(String namespaceURI, String localName)` Removes a node specified by local name and namespace URI.
`protected void` | `removeNode(Node node)` Remove the mapping for an ID if necessary, reset attribute in use flag
`Node` | `setNamedItem(Node arg)` Adds a node using its `nodeName` attribute.
`Node` | `setNamedItemNS(Node arg)` Adds a node using its `namespaceURI` and `localName`.
`protected void` | `sort()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### NamedNodeMapImpl

    protected NamedNodeMapImpl(NodeImpl owner)

Method Detail

### getNamedItem

    public Node getNamedItem(String name)

  Retrieves a node specified by name.

  Specified by:
    `getNamedItem` in interface `NamedNodeMap`
  Parameters:
    `name` - Name of a node to retrieve.
  Returns:
    A `Node` (of any type) with the specified name, or `null` if the specified name did not identify any node in the map.

### setNamedItem

    public Node setNamedItem(Node arg)
                      throws DOMException

  Adds a node using its `nodeName` attribute.
  As the `nodeName` attribute is used to derive the name which the node must be stored under, multiple nodes of certain types (those that have a "special" string value) cannot be stored as the names would clash. This is seen as preferable to allowing nodes to be aliased.

  Specified by:
    `setNamedItem` in interface `NamedNodeMap`
  Parameters:
    `arg` - A node to store in a named node map. The node will later be accessible using the value of the `nodeName` attribute of the node. If a node with that name is already present in the map, it is replaced by the new one.
  Returns:
    If the new `Node` replaces an existing node with the same name the previously existing `Node` is returned, otherwise `null` is returned.
  Throws:
    `DOMException` - WRONG_DOCUMENT_ERR: Raised if `arg` was created from a different document than the one that created the `NamedNodeMap`.
    NO_MODIFICATION_ALLOWED_ERR: Raised if this `NamedNodeMap` is readonly.
    INUSE_ATTRIBUTE_ERR: Raised if `arg` is an `Attr` that is already an attribute of another `Element` object. The DOM user must explicitly clone `Attr` nodes to re-use them in other elements.

### removeNamedItem

    public Node removeNamedItem(String name)
                         throws DOMException

  Removes a node specified by name. If the removed node is an `Attr` with a default value it is immediately replaced.

  Specified by:
    `removeNamedItem` in interface `NamedNodeMap`
  Parameters:
    `name` - The name of a node to remove.
  Returns:
    The node removed from the map or `null` if no node with such a name exists.
  Throws:
    `DOMException` - NOT_FOUND_ERR: Raised if there is no node named `name` in the map.
    NO_MODIFICATION_ALLOWED_ERR: Raised if this `NamedNodeMap` is readonly.

### item

    public Node item(int index)

  Returns the `index`th item in the map. If `index` is greater than or equal to the number of nodes in the map, this returns `null`.

  Specified by:
    `item` in interface `NamedNodeMap`
  Parameters:
    `index` - Index into the map.
  Returns:
    The node at the `index`th position in the `NamedNodeMap`, or `null` if that is not a valid index.

### getLength

    public int getLength()

  The number of nodes in the map. The range of valid child node indices is 0 to `length-1` inclusive.

  Specified by:
    `getLength` in interface `NamedNodeMap`

### getNamedItemNS

    public Node getNamedItemNS(String namespaceURI,
                               String localName)

  Retrieves a node specified by local name and namespace URI. HTML-only DOM implementations do not need to implement this method.

  Specified by:
    `getNamedItemNS` in interface `NamedNodeMap`
  Parameters:
    `namespaceURI` - The namespace URI of the node to retrieve.
    `localName` - The local name of the node to retrieve.
  Returns:
    A `Node` (of any type) with the specified local name and namespace URI, or `null` if they do not identify any node in this map.
  Since:
    DOM Level 2

### setNamedItemNS

    public Node setNamedItemNS(Node arg)
                        throws DOMException

  Adds a node using its `namespaceURI` and `localName`. If a node with that namespace URI and that local name is already present in this map, it is replaced by the new one.
  HTML-only DOM implementations do not need to implement this method.

  Specified by:
    `setNamedItemNS` in interface `NamedNodeMap`
  Parameters:
    `arg` - A node to store in this map. The node will later be accessible using the value of its `namespaceURI` and `localName` attributes.
  Returns:
    If the new `Node` replaces an existing node the replaced `Node` is returned, otherwise `null` is returned.
  Throws:
    `DOMException` - WRONG_DOCUMENT_ERR: Raised if `arg` was created from a different document than the one that created this map.
    NO_MODIFICATION_ALLOWED_ERR: Raised if this map is readonly.
    INUSE_ATTRIBUTE_ERR: Raised if `arg` is an `Attr` that is already an attribute of another `Element` object. The DOM user must explicitly clone `Attr` nodes to re-use them in other elements.
  Since:
    DOM Level 2

### removeNamedItemNS

    public Node removeNamedItemNS(String namespaceURI,
                                  String localName)
                           throws DOMException

  Removes a node specified by local name and namespace URI. A removed attribute may be known to have a default value when this map contains the attributes attached to an element, as returned by the attributes attribute of the `Node` interface. If so, an attribute immediately appears containing the default value as well as the corresponding namespace URI, local name, and prefix when applicable.
  HTML-only DOM implementations do not need to implement this method.

  Specified by:
    `removeNamedItemNS` in interface `NamedNodeMap`
  Parameters:
    `namespaceURI` - The namespace URI of the node to remove.
    `localName` - The local name of the node to remove.
  Returns:
    The node removed from this map if a node with such a local name and namespace URI exists.
  Throws:
    `DOMException` - NOT_FOUND_ERR: Raised if there is no node with the specified `namespaceURI` and `localName` in this map.
    NO_MODIFICATION_ALLOWED_ERR: Raised if this map is readonly.
    NO_MODIFICATION_ALLOWED_ERR: Raised if this `NamedNodeMap` is readonly.
  Since:
    DOM Level 2

### cloneThis

    public NamedNodeMapImpl cloneThis(NodeImpl clonedOwner)

  Make a copy of this NamedNodeMapImpl for use with cloneNode()

  Parameters:
    `clonedOwner` - The Node that will own this NamedNodeMapImpl
  Returns:
    A deep copy of this NamedNodeMapImpl

### sort

    protected void sort()

### findItem

    protected int findItem(String name)

### findItemNS

    protected int findItemNS(String namespaceURI,
                             String localName)

### removeNode

    protected void removeNode(Node node)

  Remove the mapping for an ID if necessary, reset attribute in use flag

  Parameters:
    `node` - The node to check

### addNode

    protected void addNode(Node node)

  Add a mapping for an ID, if necessary, handle attributes and namespace nodes

  Parameters:
    `node` - The node to check

### checkNamespaceAttr

    protected void checkNamespaceAttr(AttrImpl attr)

  Check the passed node and if is a namespace declarations invalidate the namespace nodes of this and all descendant Elements

  Parameters:
    `attr` - The attribute to check.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD