Method from org.xml.sax.helpers.AttributesImpl Detail: |
public void addAttribute(String uri,
String localName,
String qName,
String type,
String value) {
ensureCapacity(length+1);
data[length*5] = uri;
data[length*5+1] = localName;
data[length*5+2] = qName;
data[length*5+3] = type;
data[length*5+4] = value;
length++;
}
Add an attribute to the end of the list.
For the sake of speed, this method does no checking
to see if the attribute is already in the list: that is
the responsibility of the application. |
public void clear() {
if (data != null) {
for (int i = 0; i < (length * 5); i++)
data [i] = null;
}
length = 0;
}
|
public int getIndex(String qName) {
int max = length * 5;
for (int i = 0; i < max; i += 5) {
if (data[i+2].equals(qName)) {
return i / 5;
}
}
return -1;
}
Look up an attribute's index by qualified (prefixed) name. |
public int getIndex(String uri,
String localName) {
int max = length * 5;
for (int i = 0; i < max; i += 5) {
if (data[i].equals(uri) && data[i+1].equals(localName)) {
return i / 5;
}
}
return -1;
}
Look up an attribute's index by Namespace name.
In many cases, it will be more efficient to look up the name once and
use the index query methods rather than using the name query methods
repeatedly. |
public int getLength() {
return length;
}
Return the number of attributes in the list. |
public String getLocalName(int index) {
if (index >= 0 && index < length) {
return data[index*5+1];
} else {
return null;
}
}
Return an attribute's local name. |
public String getQName(int index) {
if (index >= 0 && index < length) {
return data[index*5+2];
} else {
return null;
}
}
Return an attribute's qualified (prefixed) name. |
public String getType(int index) {
if (index >= 0 && index < length) {
return data[index*5+3];
} else {
return null;
}
}
Return an attribute's type by index. |
public String getType(String qName) {
int max = length * 5;
for (int i = 0; i < max; i += 5) {
if (data[i+2].equals(qName)) {
return data[i+3];
}
}
return null;
}
Look up an attribute's type by qualified (prefixed) name. |
public String getType(String uri,
String localName) {
int max = length * 5;
for (int i = 0; i < max; i += 5) {
if (data[i].equals(uri) && data[i+1].equals(localName)) {
return data[i+3];
}
}
return null;
}
Look up an attribute's type by Namespace-qualified name. |
public String getURI(int index) {
if (index >= 0 && index < length) {
return data[index*5];
} else {
return null;
}
}
Return an attribute's Namespace URI. |
public String getValue(int index) {
if (index >= 0 && index < length) {
return data[index*5+4];
} else {
return null;
}
}
Return an attribute's value by index. |
public String getValue(String qName) {
int max = length * 5;
for (int i = 0; i < max; i += 5) {
if (data[i+2].equals(qName)) {
return data[i+4];
}
}
return null;
}
Look up an attribute's value by qualified (prefixed) name. |
public String getValue(String uri,
String localName) {
int max = length * 5;
for (int i = 0; i < max; i += 5) {
if (data[i].equals(uri) && data[i+1].equals(localName)) {
return data[i+4];
}
}
return null;
}
Look up an attribute's value by Namespace-qualified name. |
public void removeAttribute(int index) {
if (index >= 0 && index < length) {
if (index < length - 1) {
System.arraycopy(data, (index+1)*5, data, index*5,
(length-index-1)*5);
}
index = (length - 1) * 5;
data [index++] = null;
data [index++] = null;
data [index++] = null;
data [index++] = null;
data [index] = null;
length--;
} else {
badIndex(index);
}
}
Remove an attribute from the list. |
public void setAttribute(int index,
String uri,
String localName,
String qName,
String type,
String value) {
if (index >= 0 && index < length) {
data[index*5] = uri;
data[index*5+1] = localName;
data[index*5+2] = qName;
data[index*5+3] = type;
data[index*5+4] = value;
} else {
badIndex(index);
}
}
Set an attribute in the list.
For the sake of speed, this method does no checking
for name conflicts or well-formedness: such checks are the
responsibility of the application. |
public void setAttributes(Attributes atts) {
clear();
length = atts.getLength();
if (length > 0) {
data = new String[length*5];
for (int i = 0; i < length; i++) {
data[i*5] = atts.getURI(i);
data[i*5+1] = atts.getLocalName(i);
data[i*5+2] = atts.getQName(i);
data[i*5+3] = atts.getType(i);
data[i*5+4] = atts.getValue(i);
}
}
}
|
public void setLocalName(int index,
String localName) {
if (index >= 0 && index < length) {
data[index*5+1] = localName;
} else {
badIndex(index);
}
}
Set the local name of a specific attribute. |
public void setQName(int index,
String qName) {
if (index >= 0 && index < length) {
data[index*5+2] = qName;
} else {
badIndex(index);
}
}
Set the qualified name of a specific attribute. |
public void setType(int index,
String type) {
if (index >= 0 && index < length) {
data[index*5+3] = type;
} else {
badIndex(index);
}
}
Set the type of a specific attribute. |
public void setURI(int index,
String uri) {
if (index >= 0 && index < length) {
data[index*5] = uri;
} else {
badIndex(index);
}
}
Set the Namespace URI of a specific attribute. |
public void setValue(int index,
String value) {
if (index >= 0 && index < length) {
data[index*5+4] = value;
} else {
badIndex(index);
}
}
Set the value of a specific attribute. |