org.apache.xerces.dom
Class AttributeMap

java.lang.Object
  |
  +--org.apache.xerces.dom.NamedNodeMapImpl
        |
        +--org.apache.xerces.dom.AttributeMap
All Implemented Interfaces:
NamedNodeMap, java.io.Serializable

public class AttributeMap
extends NamedNodeMapImpl

AttributeMap inherits from NamedNodeMapImpl and extends it to deal with the specifics of storing attributes. These are:

This class doesn't directly support mutation events, however, it notifies the document when mutations are performed so that the document class do so.

See Also:
Serialized Form

Fields inherited from class org.apache.xerces.dom.NamedNodeMapImpl
CHANGED, flags, HASDEFAULTS, nodes, ownerNode, READONLY
 
Constructor Summary
protected AttributeMap(ElementImpl ownerNode, NamedNodeMapImpl defaults)
          Constructs a named node map.
 
Method Summary
protected  void cloneContent(NamedNodeMapImpl srcmap)
          Override parent's method to set the ownerNode correctly
 NamedNodeMapImpl cloneMap(NodeImpl ownerNode)
          Cloning a NamedNodeMap is a DEEP OPERATION; it always clones all the nodes contained in the map.
protected  Node internalRemoveNamedItem(java.lang.String name, boolean raiseEx)
          Internal removeNamedItem method allowing to specify whether an exception must be thrown if the specified name is not found.
protected  Node internalRemoveNamedItemNS(java.lang.String namespaceURI, java.lang.String name, boolean raiseEx)
          Internal removeNamedItemNS method allowing to specify whether an exception must be thrown if the specified local name and namespace URI is not found.
protected  void reconcileDefaults(NamedNodeMapImpl defaults)
          Get this AttributeMap in sync with the given "defaults" map.
 Node removeNamedItem(java.lang.String name)
          Removes a node specified by name.
 Node removeNamedItemNS(java.lang.String namespaceURI, java.lang.String name)
          Introduced in DOM Level 2.
 Node setNamedItem(Node arg)
          Adds an attribute using its nodeName attribute.
 Node setNamedItemNS(Node arg)
          Adds an attribute using its namespaceURI and localName.
 
Methods inherited from class org.apache.xerces.dom.NamedNodeMapImpl
findNamePoint, findNamePoint, getLength, getNamedItem, getNamedItemNS, item
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AttributeMap

protected AttributeMap(ElementImpl ownerNode,
                       NamedNodeMapImpl defaults)
Constructs a named node map.
Method Detail

setNamedItem

public Node setNamedItem(Node arg)
                  throws DOMException
Adds an attribute using its nodeName attribute.
Overrides:
setNamedItem in class NamedNodeMapImpl
Parameters:
arg - An Attr node to store in this map.
Returns:
If the new Node replaces an existing node the replaced Node is returned, otherwise null is returned.
Throws:
DOMException - The exception description.
See Also:
NamedNodeMap.setNamedItem(org.w3c.dom.Node)

setNamedItemNS

public Node setNamedItemNS(Node arg)
                    throws DOMException
Adds an attribute using its namespaceURI and localName.
Overrides:
setNamedItemNS in class NamedNodeMapImpl
Parameters:
arg - A node to store in a named node map.
Returns:
If the new Node replaces an existing node the replaced Node is returned, otherwise null is returned.
See Also:
NamedNodeMap.setNamedItem(org.w3c.dom.Node)

removeNamedItem

public Node removeNamedItem(java.lang.String name)
                     throws DOMException
Description copied from interface: NamedNodeMap
Removes a node specified by name. When this map contains the attributes attached to an element, if the removed attribute is known to have a default value, an attribute immediately appears containing the default value as well as the corresponding namespace URI, local name, and prefix when applicable.
Overrides:
removeNamedItem in class NamedNodeMapImpl
Following copied from interface: org.w3c.dom.NamedNodeMap
Parameters:
nameThe - nodeName of the node to remove.
Returns:
The node removed from this map if a node with such a name exists.
Throws:
DOMException - NOT_FOUND_ERR: Raised if there is no node named name in this map.
NO_MODIFICATION_ALLOWED_ERR: Raised if this map is readonly.

internalRemoveNamedItem

protected final Node internalRemoveNamedItem(java.lang.String name,
                                             boolean raiseEx)
Internal removeNamedItem method allowing to specify whether an exception must be thrown if the specified name is not found.

removeNamedItemNS

public Node removeNamedItemNS(java.lang.String namespaceURI,
                              java.lang.String name)
                       throws DOMException
Introduced in DOM Level 2.

Removes an attribute specified by local name and namespace URI.

Overrides:
removeNamedItemNS in class NamedNodeMapImpl
Parameters:
namespaceURI - The namespace URI of the node to remove. When it is null or an empty string, this method behaves like removeNamedItem.
The - local name of the node to remove. If the removed attribute is known to have a default value, an attribute immediately appears containing the default value.
Returns:
Node The node removed from the map if a node with such a local name and namespace URI exists.
Throws:
NOT_FOUND_ERR: - Raised if there is no node named name in the map.

internalRemoveNamedItemNS

protected final Node internalRemoveNamedItemNS(java.lang.String namespaceURI,
                                               java.lang.String name,
                                               boolean raiseEx)
Internal removeNamedItemNS method allowing to specify whether an exception must be thrown if the specified local name and namespace URI is not found.

cloneMap

public NamedNodeMapImpl cloneMap(NodeImpl ownerNode)
Cloning a NamedNodeMap is a DEEP OPERATION; it always clones all the nodes contained in the map.
Overrides:
cloneMap in class NamedNodeMapImpl

cloneContent

protected void cloneContent(NamedNodeMapImpl srcmap)
Override parent's method to set the ownerNode correctly
Overrides:
cloneContent in class NamedNodeMapImpl

reconcileDefaults

protected void reconcileDefaults(NamedNodeMapImpl defaults)
Get this AttributeMap in sync with the given "defaults" map.
Parameters:
defaults - The default attributes map to sync with.


Copyright 1999-2001 Apache XML Project. All Rights Reserved.