Module org.htmlunit

Class NamedNodeMap

java.lang.Object
org.htmlunit.corejs.javascript.SlotMapOwner<org.htmlunit.corejs.javascript.Scriptable>
org.htmlunit.corejs.javascript.ScriptableObject
org.htmlunit.javascript.HtmlUnitScriptable
org.htmlunit.javascript.host.NamedNodeMap
All Implemented Interfaces:
Serializable, Cloneable, org.htmlunit.corejs.javascript.ConstProperties<org.htmlunit.corejs.javascript.Scriptable>, org.htmlunit.corejs.javascript.debug.DebuggableObject, org.htmlunit.corejs.javascript.PropHolder<org.htmlunit.corejs.javascript.Scriptable>, org.htmlunit.corejs.javascript.Scriptable, org.htmlunit.corejs.javascript.SymbolScriptable

public class NamedNodeMap extends HtmlUnitScriptable
A collection of nodes that can be accessed by name. String comparisons in this class are case-insensitive when used with an HtmlElement, but case-sensitive when used with a DomElement.
Author:
Daniel Gredler, Ahmed Ashour, Marc Guillemot, Ronald Brill, Frank Danek
See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.htmlunit.corejs.javascript.ScriptableObject

    org.htmlunit.corejs.javascript.ScriptableObject.DescriptorInfo, org.htmlunit.corejs.javascript.ScriptableObject.KeyComparator, org.htmlunit.corejs.javascript.ScriptableObject.LambdaGetterFunction, org.htmlunit.corejs.javascript.ScriptableObject.LambdaSetterFunction
  • Field Summary

    Fields inherited from class org.htmlunit.corejs.javascript.ScriptableObject

    CONST, DONTENUM, EMPTY, PERMANENT, READONLY, UNINITIALIZED_CONST

    Fields inherited from class org.htmlunit.corejs.javascript.SlotMapOwner

    isSealed

    Fields inherited from interface org.htmlunit.corejs.javascript.Scriptable

    NOT_FOUND
  • Constructor Summary

    Constructors
    Constructor
    Description
    Default constructor for prototype instantiation.
    Creates a new named node map for the specified element.
  • Method Summary

    Modifier and Type
    Method
    Description
    final Object
    get(int index, org.htmlunit.corejs.javascript.Scriptable start)
    get(String name, org.htmlunit.corejs.javascript.Scriptable start)
    Gets a named property from the object.
    int
    Returns the number of attributes in this map.
    Returns the attribute node with the specified name.
    getNamedItemNS(String namespaceURI, String localName)
    Returns the attribute node with the given namespace URI and local name.
    INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
    Gets the specified attribute without handling the synthetic class attribute.
    boolean
    has(int index, org.htmlunit.corejs.javascript.Scriptable start)
    item(int index)
    Returns the attribute node at the specified index.
    org.htmlunit.corejs.javascript.Scriptable
    Returns an iterator over the values in this map.
    void
    Creates an instance of this object.
    void
    Removes the attribute with the specified name.
    removeNamedItemNS(String namespaceURI, String localName)
    Removes the attribute with the given namespace URI and local name.
    void
    Sets the specified attribute node.
    void
    Sets the specified attribute node using its namespace URI and local name.

    Methods inherited from class org.htmlunit.corejs.javascript.ScriptableObject

    applyDescriptorToAttributeBitset, avoidObjectDetection, buildDataDescriptor, callMethod, callMethod, checkNotSealed, checkPropertyChangeForSlot, checkPropertyChangeForSlot, checkPropertyDefinition, checkPropertyDefinition, checkSlotRemoval, defineBuiltinProperty, defineBuiltinProperty, defineBuiltInProperty, defineBuiltInProperty, defineBuiltInProperty, defineBuiltInProperty, defineClass, defineClass, defineClass, defineConst, defineConstProperty, defineFunctionProperties, defineOwnProperties, defineOwnProperty, defineOwnProperty, defineOwnProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, delete, delete, delete, deleteProperty, deleteProperty, deleteProperty, ensureScriptable, ensureScriptableObject, ensureScriptableObjectButNotSymbol, ensureSymbolScriptable, ensureType, get, getAllIds, getAncestor, getArrayPrototype, getClassPrototype, getClassPrototype, getDefaultValue, getExternalArrayData, getExternalArrayLength, getFunctionPrototype, getGeneratorFunctionPrototype, getGetterOrSetter, getGetterOrSetter, getObjectPrototype, getOwnPropertyDescriptor, getParentScope, getProperty, getProperty, getProperty, getProperty, getProperty, getPropertyIds, getPrototype, getSuperProperty, getSuperProperty, getSuperProperty, getThis, getTopLevelScope, getTopScopeValue, getTypedProperty, getTypedProperty, getTypeOf, hasProperty, hasProperty, hasProperty, hasProperty, isAccessorDescriptor, isAccessorDescriptor, isConst, isDataDescriptor, isEmpty, isExtensible, isFalse, isGenericDescriptor, isGenericDescriptor, isGetterOrSetter, isGetterOrSetter, isTrue, preventExtensions, put, put, putConst, putConstProperty, putConstProperty, putOwnProperty, putOwnProperty, putOwnProperty, putProperty, putProperty, putProperty, putProperty, putSuperProperty, putSuperProperty, putSuperProperty, querySlot, redefineProperty, redefineProperty, sameValue, sealObject, setCommonDescriptorProperties, setExternalArrayData, setGetterOrSetter, setParentScope, setPrototype, size

    Methods inherited from class org.htmlunit.corejs.javascript.SlotMapOwner

    associateValue, checkNotSealed, copyAssociatedValue, createSlotMap, defineProperty, defineProperty, get, getAssociatedValue, getAttributes, getAttributes, getAttributes, getAttributes, getAttributes, getIds, has, has, isSealed, readMaps, setAttributes, setAttributes, setAttributes, setAttributes, setAttributes, writeMaps

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.htmlunit.corejs.javascript.Scriptable

    get, getIds, has, has

    Methods inherited from interface org.htmlunit.corejs.javascript.SymbolScriptable

    get, has
  • Constructor Details

    • NamedNodeMap

      public NamedNodeMap()
      Default constructor for prototype instantiation.
    • NamedNodeMap

      public NamedNodeMap(DomElement element)
      Creates a new named node map for the specified element.
      Parameters:
      element - the owning element
  • Method Details

    • jsConstructor

      public void jsConstructor()
      Creates an instance of this object.
    • get

      public final Object get(int index, org.htmlunit.corejs.javascript.Scriptable start)
      Specified by:
      get in interface org.htmlunit.corejs.javascript.PropHolder<org.htmlunit.corejs.javascript.Scriptable>
      Specified by:
      get in interface org.htmlunit.corejs.javascript.Scriptable
      Overrides:
      get in class org.htmlunit.corejs.javascript.ScriptableObject
    • get

      public Object get(String name, org.htmlunit.corejs.javascript.Scriptable start)
      Gets a named property from the object. Normally HtmlUnit objects don't need to overwrite this method as properties are defined on the prototypes. In some cases where "content" of object has priority compared to the properties consider using utility HtmlUnitScriptable.getWithPreemption(String).
      Specified by:
      get in interface org.htmlunit.corejs.javascript.PropHolder<org.htmlunit.corejs.javascript.Scriptable>
      Specified by:
      get in interface org.htmlunit.corejs.javascript.Scriptable
      Overrides:
      get in class HtmlUnitScriptable
    • getNamedItemWithoutSytheticClassAttr

      public HtmlUnitScriptable getNamedItemWithoutSytheticClassAttr(String name)
      INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
      Gets the specified attribute without handling the synthetic class attribute.
      Parameters:
      name - the attribute name
      Returns:
      the attribute node, or null if not found
      See Also:
    • getNamedItem

      public HtmlUnitScriptable getNamedItem(String name)
      Returns the attribute node with the specified name.
      Parameters:
      name - the attribute name
      Returns:
      the attribute node, or null if not defined
    • getNamedItemNS

      public Node getNamedItemNS(String namespaceURI, String localName)
      Returns the attribute node with the given namespace URI and local name.
      Parameters:
      namespaceURI - the namespace URI of the node to retrieve
      localName - the local name of the node to retrieve
      Returns:
      the attribute node, or null if not found
    • setNamedItem

      public void setNamedItem(Node node)
      Sets the specified attribute node.
      Parameters:
      node - the attribute node to set
    • setNamedItemNS

      public void setNamedItemNS(Node node)
      Sets the specified attribute node using its namespace URI and local name.
      Parameters:
      node - the attribute node to set
    • removeNamedItem

      public void removeNamedItem(String name)
      Removes the attribute with the specified name.
      Parameters:
      name - the name of the attribute to remove
    • removeNamedItemNS

      public Attr removeNamedItemNS(String namespaceURI, String localName)
      Removes the attribute with the given namespace URI and local name.
      Parameters:
      namespaceURI - the namespace URI of the attribute to remove
      localName - the local name of the attribute to remove
      Returns:
      the removed attribute node, or null if not found
    • item

      public HtmlUnitScriptable item(int index)
      Returns the attribute node at the specified index.
      Parameters:
      index - the index
      Returns:
      the attribute node at the given index, or null if out of range
    • getLength

      public int getLength()
      Returns the number of attributes in this map.
      Returns:
      the number of attributes
    • has

      public boolean has(int index, org.htmlunit.corejs.javascript.Scriptable start)
      Specified by:
      has in interface org.htmlunit.corejs.javascript.PropHolder<org.htmlunit.corejs.javascript.Scriptable>
      Specified by:
      has in interface org.htmlunit.corejs.javascript.Scriptable
      Overrides:
      has in class HtmlUnitScriptable
    • iterator

      public org.htmlunit.corejs.javascript.Scriptable iterator()
      Returns an iterator over the values in this map.
      Returns:
      the iterator