abstract class LeafNode extends Node
Modifier and Type | Field and Description |
---|---|
(package private) Object |
value |
EmptyString, parentNode, siblingIndex
Constructor and Description |
---|
LeafNode() |
Modifier and Type | Method and Description |
---|---|
String |
absUrl(String key)
Get an absolute URL from a URL attribute that may be relative (i.e. an
<a href> or
<img src> ). |
String |
attr(String key)
Get an attribute's value by its key.
|
Node |
attr(String key,
String value)
Set an attribute (key=value).
|
Attributes |
attributes()
Get all of the element's attributes.
|
String |
baseUri()
Get the base URI of this node.
|
int |
childNodeSize()
Get the number of child nodes that this node holds.
|
(package private) String |
coreValue() |
(package private) void |
coreValue(String value) |
protected void |
doSetBaseUri(String baseUri)
Set the baseUri for just this node (not its descendants), if this Node tracks base URIs.
|
private void |
ensureAttributes() |
protected List<Node> |
ensureChildNodes() |
boolean |
hasAttr(String key)
Test if this element has an attribute.
|
protected boolean |
hasAttributes()
Check if this Node has an actual Attributes object.
|
Node |
removeAttr(String key)
Remove an attribute from this element.
|
addChildren, addChildren, after, after, before, before, childNode, childNodes, childNodesAsArray, childNodesCopy, clearAttributes, clone, doClone, equals, filter, getOutputSettings, hasParent, hasSameValue, html, indent, nextSibling, nodelistChanged, nodeName, outerHtml, outerHtml, outerHtmlHead, outerHtmlTail, ownerDocument, parent, parentNode, previousSibling, remove, removeChild, reparentChild, replaceChild, replaceWith, root, setBaseUri, setParentNode, setSiblingIndex, siblingIndex, siblingNodes, toString, traverse, unwrap, wrap
LeafNode()
protected final boolean hasAttributes()
Node
hasAttributes
in class Node
public final Attributes attributes()
Node
attributes
in class Node
private void ensureAttributes()
public String attr(String key)
Node
To get an absolute URL from an attribute that may be a relative URL, prefix the key with abs
,
which is a shortcut to the Node.absUrl(java.lang.String)
method.
String url = a.attr("abs:href");
attr
in class Node
key
- The attribute key.Node.attributes()
,
Node.hasAttr(String)
,
Node.absUrl(String)
public Node attr(String key, String value)
Node
public boolean hasAttr(String key)
Node
public Node removeAttr(String key)
Node
removeAttr
in class Node
key
- The attribute to remove.public String absUrl(String key)
Node
<a href>
or
<img src>
).
E.g.: String absUrl = linkEl.absUrl("href");
If the attribute value is already absolute (i.e. it starts with a protocol, like
http://
or https://
etc), and it successfully parses as a URL, the attribute is
returned directly. Otherwise, it is treated as a URL relative to the element's Node.baseUri()
, and made
absolute using that.
As an alternate, you can use the Node.attr(java.lang.String)
method with the abs:
prefix, e.g.:
String absUrl = linkEl.attr("abs:href");
absUrl
in class Node
key
- The attribute keyNode.attr(java.lang.String)
,
URL.URL(java.net.URL, String)
protected void doSetBaseUri(String baseUri)
Node
doSetBaseUri
in class Node
baseUri
- new URIpublic int childNodeSize()
Node
childNodeSize
in class Node
protected List<Node> ensureChildNodes()
ensureChildNodes
in class Node
WebARTS Library Licensed Under the GNU - General Public License. Other Libraries licensed under their respective Open Source Licenses