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

## org.xml.sax.helpers
Class AttributeListImpl

    java.lang.Object
      |
      +--org.xml.sax.helpers.AttributeListImpl

public class AttributeListImpl
extends java.lang.Object
implements AttributeList

Convenience implementation for AttributeList.

This class provides a convenience implementation of the SAX AttributeList class. This implementation is useful both for SAX parser writers, who can use it to provide attributes to the application, and for SAX application writers, who can use it to create a persistent copy of an element's attribute specifications:

     private AttributeList myatts;

     public void startElement (String name, AttributeList atts)
     {
                  // create a persistent copy of the attribute list
                  // for use outside this method
       myatts = new AttributeListImpl(atts);
       [...]
     }

Please note that SAX parsers are not required to use this class to provide an implementation of AttributeList; it is supplied only as an optional convenience. In particular, parser writers are encouraged to invent more efficient implementations.

See Also:
  `AttributeList`, `DocumentHandler.startElement(java.lang.String, org.xml.sax.AttributeList)`

Constructor Summary
`AttributeListImpl()` Create an empty attribute list.
`AttributeListImpl(AttributeList atts)` Construct a persistent copy of an existing attribute list.

Method Summary
`void` | `addAttribute(java.lang.String name, java.lang.String type, java.lang.String value)` Add an attribute to an attribute list.
`void` | `clear()` Clear the attribute list.
`int` | `getLength()` Return the number of attributes in the list.
`java.lang.String` | `getName(int i)` Get the name of an attribute (by position).
`java.lang.String` | `getType(int i)` Get the type of an attribute (by position).
`java.lang.String` | `getType(java.lang.String name)` Get the type of an attribute (by name).
`java.lang.String` | `getValue(int i)` Get the value of an attribute (by position).
`java.lang.String` | `getValue(java.lang.String name)` Get the value of an attribute (by name).
`void` | `removeAttribute(java.lang.String name)` Remove an attribute from the list.
`void` | `setAttributeList(AttributeList atts)` Set the attribute list, discarding previous contents.

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

Constructor Detail

### AttributeListImpl

    public AttributeListImpl()

  Create an empty attribute list.

  This constructor is most useful for parser writers, who will use it to create a single, reusable attribute list that can be reset with the clear method between elements.

  See Also:
    `addAttribute(java.lang.String, java.lang.String, java.lang.String)`, `clear()`

### AttributeListImpl

    public AttributeListImpl(AttributeList atts)

  Construct a persistent copy of an existing attribute list.

  This constructor is most useful for application writers, who will use it to create a persistent copy of an existing attribute list.

  Parameters:
    `atts` - The attribute list to copy
  See Also:
    `DocumentHandler.startElement(java.lang.String, org.xml.sax.AttributeList)`

Method Detail

### setAttributeList

    public void setAttributeList(AttributeList atts)

  Set the attribute list, discarding previous contents.

  This method allows an application writer to reuse an attribute list easily.

  Parameters:
    `atts` - The attribute list to copy.

### addAttribute

    public void addAttribute(java.lang.String name,
                             java.lang.String type,
                             java.lang.String value)

  Add an attribute to an attribute list.

  This method is provided for SAX parser writers, to allow them to build up an attribute list incrementally before delivering it to the application.

  Parameters:
    `name` - The attribute name.
    `type` - The attribute type ("NMTOKEN" for an enumeration).
    `value` - The attribute value (must not be null).
  See Also:
    `removeAttribute(java.lang.String)`, `DocumentHandler.startElement(java.lang.String, org.xml.sax.AttributeList)`

### removeAttribute

    public void removeAttribute(java.lang.String name)

  Remove an attribute from the list.

  SAX application writers can use this method to filter an attribute out of an AttributeList. Note that invoking this method will change the length of the attribute list and some of the attribute's indices.

  If the requested attribute is not in the list, this is a no-op.

  Parameters:
    `name` - The attribute name.
  See Also:
    `addAttribute(java.lang.String, java.lang.String, java.lang.String)`

### clear

    public void clear()

  Clear the attribute list.

  SAX parser writers can use this method to reset the attribute list between DocumentHandler.startElement events. Normally, it will make sense to reuse the same AttributeListImpl object rather than allocating a new one each time.

  See Also:
    `DocumentHandler.startElement(java.lang.String, org.xml.sax.AttributeList)`

### getLength

    public int getLength()

  Return the number of attributes in the list.
  Specified by:
    getLength in interface AttributeList
  Returns:
    The number of attributes in the list.
  See Also:
    `AttributeList.getLength()`

### getName

    public java.lang.String getName(int i)

  Get the name of an attribute (by position).
  Specified by:
    getName in interface AttributeList
  Parameters:
    `i` - The position of the attribute in the list.
  Returns:
    The attribute name as a string, or null if there is no attribute at that position.
  See Also:
    `AttributeList.getName(int)`

### getType

    public java.lang.String getType(int i)

  Get the type of an attribute (by position).
  Specified by:
    getType in interface AttributeList
  Parameters:
    `i` - The position of the attribute in the list.
  Returns:
    The attribute type as a string ("NMTOKEN" for an enumeration, and "CDATA" if no declaration was read), or null if there is no attribute at that position.
  See Also:
    `AttributeList.getType(int)`

### getValue

    public java.lang.String getValue(int i)

  Get the value of an attribute (by position).
  Specified by:
    getValue in interface AttributeList
  Parameters:
    `i` - The position of the attribute in the list.
  Returns:
    The attribute value as a string, or null if there is no attribute at that position.
  See Also:
    `AttributeList.getValue(int)`

### getType

    public java.lang.String getType(java.lang.String name)

  Get the type of an attribute (by name).
  Specified by:
    getType in interface AttributeList
  Parameters:
    `name` - The attribute name.
  Returns:
    The attribute type as a string ("NMTOKEN" for an enumeration, and "CDATA" if no declaration was read).
  See Also:
    `AttributeList.getType(java.lang.String)`

### getValue

    public java.lang.String getValue(java.lang.String name)

  Get the value of an attribute (by name).
  Specified by:
    getValue in interface AttributeList
  Parameters:
    `name` - The attribute name.
  See Also:
    `AttributeList.getValue(java.lang.String)`

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

Submit Feedback to xml-feedback@java.sun.com
Copyright © 1998-2000 Sun Microsystems, Inc. All Rights Reserved.
Sun Microsystems, Inc.
901 San Antonio Road
Palo Alto, California, 94303, U.S.A.