|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.apache.xerces.dom.NamedNodeMapImpl
NamedNodeMaps represent collections of Nodes that can be accessed by name. Entity and Notation nodes are stored in NamedNodeMaps attached to the DocumentType. Attributes are placed in a NamedNodeMap attached to the elem they're related too. However, because attributes require more work, such as firing mutation events, they are stored in a subclass of NamedNodeMapImpl.
Only one Node may be stored per name; attempting to store another will replace the previous value.
NOTE: The "primary" storage key is taken from the NodeName attribute of the node. The "secondary" storage key is the namespaceURI and localName, when accessed by DOM level 2 nodes. All nodes, even DOM Level 2 nodes are stored in a single Vector sorted by the primary "nodename" key.
NOTE: item()'s integer index does _not_ imply that the named nodes must be stored in an array; that's only an access method. Note too that these indices are "live"; if someone changes the map's contents, the indices associated with nodes may change.
Field Summary | |
protected static short |
CHANGED
|
protected short |
flags
|
protected static short |
HASDEFAULTS
|
protected java.util.Vector |
nodes
Nodes. |
protected NodeImpl |
ownerNode
|
protected static short |
READONLY
|
Constructor Summary | |
protected |
NamedNodeMapImpl(NodeImpl ownerNode)
Constructs a named node map. |
Method Summary | |
protected void |
cloneContent(NamedNodeMapImpl srcmap)
|
NamedNodeMapImpl |
cloneMap(NodeImpl ownerNode)
Cloning a NamedNodeMap is a DEEP OPERATION; it always clones all the nodes contained in the map. |
protected int |
findNamePoint(java.lang.String name,
int start)
Subroutine: Locate the named item, or the point at which said item should be added. |
protected int |
findNamePoint(java.lang.String namespaceURI,
java.lang.String name)
This findNamePoint is for DOM Level 2 Namespaces. |
int |
getLength()
Report how many nodes are currently stored in this NamedNodeMap. |
Node |
getNamedItem(java.lang.String name)
Retrieve a node by name. |
Node |
getNamedItemNS(java.lang.String namespaceURI,
java.lang.String localName)
Introduced in DOM Level 2. |
Node |
item(int index)
Retrieve an item from the map by 0-based index. |
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 a node using its nodeName attribute. |
Node |
setNamedItemNS(Node arg)
Adds a node using its namespaceURI and localName. |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
Field Detail |
protected short flags
protected static final short READONLY
protected static final short CHANGED
protected static final short HASDEFAULTS
protected java.util.Vector nodes
protected NodeImpl ownerNode
Constructor Detail |
protected NamedNodeMapImpl(NodeImpl ownerNode)
Method Detail |
public int getLength()
public Node item(int index)
index
- Which item to retrieve. Note that indices are just an
enumeration of the current contents; they aren't guaranteed to be
stable, nor do they imply any promises about the order of the
NamedNodeMap's contents. In other words, DO NOT assume either that
index(i) will always refer to the same entry, or that there is any
stable ordering of entries... and be prepared for double-reporting
or skips as insertion and deletion occur.public Node getNamedItem(java.lang.String name)
name
- Name of a node to look up.public Node getNamedItemNS(java.lang.String namespaceURI, java.lang.String localName)
Retrieves a node specified by local name and namespace URI.
namespaceURI
- The namespace URI of the node to retrieve.
When it is null or an empty string, this
method behaves like getNamedItem.localName
- The local name of the node to retrieve.public Node setNamedItem(Node arg) throws DOMException
arg
- A node to store in a named node map. The node will later be
accessible using the value of the namespaceURI and localName
attribute of the node. If a node with those namespace URI and
local name is already present in the map, it is replaced by the new
one.NamedNodeMap.setNamedItem(org.w3c.dom.Node)
public Node setNamedItemNS(Node arg) throws DOMException
arg
- A node to store in a named node map. The node will later be
accessible using the value of the namespaceURI and localName
attribute of the node. If a node with those namespace URI and
local name is already present in the map, it is replaced by the new
one.NamedNodeMap.setNamedItem(org.w3c.dom.Node)
public Node removeNamedItem(java.lang.String name) throws DOMException
nameThe
- nodeName
of the node to remove.name
in
this map.
public Node removeNamedItemNS(java.lang.String namespaceURI, java.lang.String name) throws DOMException
Removes a node specified by local name and namespace URI.
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.public NamedNodeMapImpl cloneMap(NodeImpl ownerNode)
protected void cloneContent(NamedNodeMapImpl srcmap)
protected int findNamePoint(java.lang.String name, int start)
name
- Name of a node to look up.protected int findNamePoint(java.lang.String namespaceURI, java.lang.String name)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |