Package org.jsoup.nodes
Class Attribute
- java.lang.Object
-
- org.jsoup.nodes.Attribute
-
- All Implemented Interfaces:
java.lang.Cloneable
,java.util.Map.Entry<java.lang.String,java.lang.String>
public class Attribute extends java.lang.Object implements java.util.Map.Entry<java.lang.String,java.lang.String>, java.lang.Cloneable
A single key + value attribute. (Only used for presentation.)
-
-
Constructor Summary
Constructors Constructor Description Attribute(java.lang.String key, java.lang.String value)
Create a new attribute from unencoded (raw) key and value.Attribute(java.lang.String key, java.lang.String val, Attributes parent)
Create a new attribute from unencoded (raw) key and value.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Attribute
clone()
static Attribute
createFromEncoded(java.lang.String unencodedKey, java.lang.String encodedValue)
Create a new Attribute from an unencoded key and a HTML attribute encoded value.boolean
equals(java.lang.Object o)
java.lang.String
getKey()
Get the attribute key.java.lang.String
getValue()
Get the attribute value.boolean
hasDeclaredValue()
Check if this Attribute has a value.int
hashCode()
java.lang.String
html()
Get the HTML representation of this attribute; e.g.protected void
html(java.lang.Appendable accum, Document.OutputSettings out)
protected static void
html(java.lang.String key, java.lang.String val, java.lang.Appendable accum, Document.OutputSettings out)
protected static boolean
isBooleanAttribute(java.lang.String key)
Checks if this attribute name is defined as a boolean attribute in HTML5protected boolean
isDataAttribute()
protected static boolean
isDataAttribute(java.lang.String key)
void
setKey(java.lang.String key)
Set the attribute key; case is preserved.java.lang.String
setValue(java.lang.String val)
Set the attribute value.protected static boolean
shouldCollapseAttribute(java.lang.String key, java.lang.String val, Document.OutputSettings out)
protected boolean
shouldCollapseAttribute(Document.OutputSettings out)
Collapsible if it's a boolean attribute and value is empty or same as namejava.lang.String
toString()
Get the string representation of this attribute, implemented ashtml()
.
-
-
-
Constructor Detail
-
Attribute
public Attribute(java.lang.String key, @Nullable java.lang.String value)
Create a new attribute from unencoded (raw) key and value.- Parameters:
key
- attribute key; case is preserved.value
- attribute value (may be null)- See Also:
createFromEncoded(java.lang.String, java.lang.String)
-
Attribute
public Attribute(java.lang.String key, @Nullable java.lang.String val, @Nullable Attributes parent)
Create a new attribute from unencoded (raw) key and value.- Parameters:
key
- attribute key; case is preserved.val
- attribute value (may be null)parent
- the containing Attributes (this Attribute is not automatically added to said Attributes)- See Also:
createFromEncoded(java.lang.String, java.lang.String)
-
-
Method Detail
-
getKey
public java.lang.String getKey()
Get the attribute key.- Specified by:
getKey
in interfacejava.util.Map.Entry<java.lang.String,java.lang.String>
- Returns:
- the attribute key
-
setKey
public void setKey(java.lang.String key)
Set the attribute key; case is preserved.- Parameters:
key
- the new key; must not be null
-
getValue
public java.lang.String getValue()
Get the attribute value. Will return an empty string if the value is not set.- Specified by:
getValue
in interfacejava.util.Map.Entry<java.lang.String,java.lang.String>
- Returns:
- the attribute value
-
hasDeclaredValue
public boolean hasDeclaredValue()
Check if this Attribute has a value. Set boolean attributes have no value.- Returns:
- if this is a boolean attribute / attribute without a value
-
setValue
public java.lang.String setValue(@Nullable java.lang.String val)
Set the attribute value.- Specified by:
setValue
in interfacejava.util.Map.Entry<java.lang.String,java.lang.String>
- Parameters:
val
- the new attribute value; may be null (to set an enabled boolean attribute)- Returns:
- the previous value (if was null; an empty string)
-
html
public java.lang.String html()
Get the HTML representation of this attribute; e.g.href="index.html"
.- Returns:
- HTML
-
html
protected static void html(java.lang.String key, @Nullable java.lang.String val, java.lang.Appendable accum, Document.OutputSettings out) throws java.io.IOException
- Throws:
java.io.IOException
-
html
protected void html(java.lang.Appendable accum, Document.OutputSettings out) throws java.io.IOException
- Throws:
java.io.IOException
-
toString
public java.lang.String toString()
Get the string representation of this attribute, implemented ashtml()
.- Overrides:
toString
in classjava.lang.Object
- Returns:
- string
-
createFromEncoded
public static Attribute createFromEncoded(java.lang.String unencodedKey, java.lang.String encodedValue)
Create a new Attribute from an unencoded key and a HTML attribute encoded value.- Parameters:
unencodedKey
- assumes the key is not encoded, as can be only run of simple \w chars.encodedValue
- HTML attribute encoded value- Returns:
- attribute
-
isDataAttribute
protected boolean isDataAttribute()
-
isDataAttribute
protected static boolean isDataAttribute(java.lang.String key)
-
shouldCollapseAttribute
protected final boolean shouldCollapseAttribute(Document.OutputSettings out)
Collapsible if it's a boolean attribute and value is empty or same as name- Parameters:
out
- output settings- Returns:
- Returns whether collapsible or not
-
shouldCollapseAttribute
protected static boolean shouldCollapseAttribute(java.lang.String key, @Nullable java.lang.String val, Document.OutputSettings out)
-
isBooleanAttribute
protected static boolean isBooleanAttribute(java.lang.String key)
Checks if this attribute name is defined as a boolean attribute in HTML5
-
equals
public boolean equals(java.lang.Object o)
- Specified by:
equals
in interfacejava.util.Map.Entry<java.lang.String,java.lang.String>
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Specified by:
hashCode
in interfacejava.util.Map.Entry<java.lang.String,java.lang.String>
- Overrides:
hashCode
in classjava.lang.Object
-
clone
public Attribute clone()
- Overrides:
clone
in classjava.lang.Object
-
-