org.xml.sax.helpers
Class AttributeListImpl
java.lang.Object
org.xml.sax.helpers.AttributeListImpl
- AttributeList
public class AttributeListImpl
extends java.lang.Object
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.
AttributeList
;
that interface has been replaced by
Attributes
,
which is implemented in the
AttributesImpl
helper class.
- SAX 1.0
AttributeList
, DocumentHandler.startElement(String,AttributeList)
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.
|
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.
addAttribute(String,String,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.
atts
- The attribute list to copy
DocumentHandler.startElement(String,AttributeList)
addAttribute
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.
name
- The attribute name.type
- The attribute type ("NMTOKEN" for an enumeration).value
- The attribute value (must not be null).
removeAttribute(String)
, DocumentHandler.startElement(String,AttributeList)
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.
DocumentHandler.startElement(String,AttributeList)
getName
public String getName(int i)
Get the name of an attribute (by position).
- getName in interface AttributeList
i
- The position of the attribute in the list.
- The attribute name as a string, or null if there
is no attribute at that position.
AttributeList.getName(int)
getType
public String getType(String name)
Get the type of an attribute (by name).
- getType in interface AttributeList
name
- The attribute name.
- The attribute type as a string ("NMTOKEN" for an
enumeration, and "CDATA" if no declaration was
read).
org.xml.sax.AttributeList.getType(java.lang.String)
getType
public String getType(int i)
Get the type of an attribute (by position).
- getType in interface AttributeList
i
- The position of the attribute in the list.
- 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.
AttributeList.getType(int)
getValue
public String getValue(String name)
Get the value of an attribute (by name).
- getValue in interface AttributeList
name
- The attribute name.
org.xml.sax.AttributeList.getValue(java.lang.String)
getValue
public String getValue(int i)
Get the value of an attribute (by position).
- getValue in interface AttributeList
i
- The position of the attribute in the list.
- The attribute value as a string, or null if
there is no attribute at that position.
AttributeList.getValue(int)
removeAttribute
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.
name
- The attribute name.
addAttribute(String,String,String)
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.
atts
- The attribute list to copy.