AttributeListImpl

public class AttributeListImpl extends Object
implements AttributeList

This class is deprecated.
This class implements a deprecated interface, AttributeList; that interface has been replaced by Attributes, which is implemented in the AttributesImpl helper class.

Default implementation for AttributeList.

This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY. See http://www.saxproject.org for further information.

AttributeList implements the deprecated SAX1 AttributeList interface, and has been replaced by the new SAX2 AttributesImpl interface.

This class provides a convenience implementation of the SAX AttributeList interface. 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.

Public Constructor Summary

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

Public Method Summary

void
addAttribute(String name, String type, 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.
String
getName(int i)
Get the name of an attribute (by position).
String
getType(String name)
Get the type of an attribute (by name).
String
getType(int i)
Get the type of an attribute (by position).
String
getValue(String name)
Get the value of an attribute (by name).
String
getValue(int i)
Get the value of an attribute (by position).
void
removeAttribute(String name)
Remove an attribute from the list.
void
setAttributeList(AttributeList atts)
Set the attribute list, discarding previous contents.

Inherited Method Summary

Public Constructors

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.

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

Public Methods

public void addAttribute (String name, String type, 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).

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.

public int getLength ()

Return the number of attributes in the list.

Returns
  • The number of attributes in the list.

public String getName (int i)

Get the name of an attribute (by position).

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.

public String getType (String name)

Get the type of an attribute (by name).

Parameters
name The attribute name.
Returns
  • The attribute type as a string ("NMTOKEN" for an enumeration, and "CDATA" if no declaration was read).

public String getType (int i)

Get the type of an attribute (by position).

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.

public String getValue (String name)

Get the value of an attribute (by name).

Parameters
name The attribute name.
Returns
  • the named attribute's value or null, if the attribute does not exist.

public String getValue (int i)

Get the value of an attribute (by position).

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.

public void removeAttribute (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.

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.