public class Attributes extends java.lang.Object implements java.lang.Iterable<Attribute>, java.lang.Cloneable
Attributes are treated as a map: there can be only one value associated with an attribute key/name.
Attribute name and value comparisons are generally case sensitive. By default for HTML, attribute names are normalized to lower-case on parsing. That means you should use lower-case strings when referring to attributes by name.
Modifier and Type | Field and Description |
---|---|
protected static java.lang.String |
dataPrefix |
Constructor and Description |
---|
Attributes() |
Modifier and Type | Method and Description |
---|---|
void |
addAll(Attributes incoming)
Add all the attributes from the incoming set to this set.
|
java.util.List<Attribute> |
asList()
Get the attributes as a List, for iteration.
|
Attributes |
clone() |
java.util.Map<java.lang.String,java.lang.String> |
dataset()
Retrieves a filtered view of attributes that are HTML5 custom data attributes; that is, attributes with keys
starting with
data- . |
boolean |
equals(java.lang.Object o)
Checks if these attributes are equal to another set of attributes, by comparing the two sets
|
java.lang.String |
get(java.lang.String key)
Get an attribute value by key.
|
java.lang.String |
getIgnoreCase(java.lang.String key)
Get an attribute's value by case-insensitive key
|
int |
hashCode()
Calculates the hashcode of these attributes, by iterating all attributes and summing their hashcodes.
|
boolean |
hasKey(java.lang.String key)
Tests if these attributes contain an attribute with this key.
|
boolean |
hasKeyIgnoreCase(java.lang.String key)
Tests if these attributes contain an attribute with this key.
|
java.lang.String |
html()
Get the HTML representation of these attributes.
|
java.util.Iterator<Attribute> |
iterator() |
void |
normalize()
Internal method.
|
Attributes |
put(Attribute attribute)
Set a new attribute, or replace an existing one by key.
|
Attributes |
put(java.lang.String key,
boolean value)
Set a new boolean attribute, remove attribute if value is false.
|
Attributes |
put(java.lang.String key,
java.lang.String value)
Set a new attribute, or replace an existing one by key.
|
void |
remove(java.lang.String key)
Remove an attribute by key.
|
void |
removeIgnoreCase(java.lang.String key)
Remove an attribute by key.
|
int |
size()
Get the number of attributes in this set.
|
java.lang.String |
toString() |
protected static final java.lang.String dataPrefix
public java.lang.String get(java.lang.String key)
key
- the (case-sensitive) attribute keyhasKey(String)
public java.lang.String getIgnoreCase(java.lang.String key)
key
- the attribute namepublic Attributes put(java.lang.String key, java.lang.String value)
key
- case sensitive attribute keyvalue
- attribute valuepublic Attributes put(java.lang.String key, boolean value)
key
- case insensitive attribute keyvalue
- attribute valuepublic Attributes put(Attribute attribute)
attribute
- attribute with case sensitive keypublic void remove(java.lang.String key)
key
- attribute key to removepublic void removeIgnoreCase(java.lang.String key)
key
- attribute key to removepublic boolean hasKey(java.lang.String key)
key
- case-sensitive key to check forpublic boolean hasKeyIgnoreCase(java.lang.String key)
key
- key to check forpublic int size()
public void addAll(Attributes incoming)
incoming
- attributes to add to these attributes.public java.util.Iterator<Attribute> iterator()
iterator
in interface java.lang.Iterable<Attribute>
public java.util.List<Attribute> asList()
public java.util.Map<java.lang.String,java.lang.String> dataset()
data-
.public java.lang.String html()
SerializationException
- if the HTML representation of the attributes cannot be constructed.public java.lang.String toString()
toString
in class java.lang.Object
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
o
- attributes to compare withpublic int hashCode()
hashCode
in class java.lang.Object
public Attributes clone()
clone
in class java.lang.Object
public void normalize()