org.openqa.selenium.devtools.domsnapshot.model.NodeTreeSnapshot Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of selenium-devtools Show documentation
Show all versions of selenium-devtools Show documentation
Selenium automates browsers. That's it! What you do with that power is entirely up to you.
package org.openqa.selenium.devtools.domsnapshot.model;
import org.openqa.selenium.Beta;
import org.openqa.selenium.json.JsonInput;
/**
* Table containing nodes.
*/
public class NodeTreeSnapshot {
private final java.util.Optional> parentIndex;
private final java.util.Optional> nodeType;
private final java.util.Optional> nodeName;
private final java.util.Optional> nodeValue;
private final java.util.Optional> backendNodeId;
private final java.util.Optional> attributes;
private final java.util.Optional textValue;
private final java.util.Optional inputValue;
private final java.util.Optional inputChecked;
private final java.util.Optional optionSelected;
private final java.util.Optional contentDocumentIndex;
private final java.util.Optional pseudoType;
private final java.util.Optional isClickable;
private final java.util.Optional currentSourceURL;
private final java.util.Optional originURL;
public NodeTreeSnapshot(java.util.Optional> parentIndex, java.util.Optional> nodeType, java.util.Optional> nodeName, java.util.Optional> nodeValue, java.util.Optional> backendNodeId, java.util.Optional> attributes, java.util.Optional textValue, java.util.Optional inputValue, java.util.Optional inputChecked, java.util.Optional optionSelected, java.util.Optional contentDocumentIndex, java.util.Optional pseudoType, java.util.Optional isClickable, java.util.Optional currentSourceURL, java.util.Optional originURL) {
this.parentIndex = parentIndex;
this.nodeType = nodeType;
this.nodeName = nodeName;
this.nodeValue = nodeValue;
this.backendNodeId = backendNodeId;
this.attributes = attributes;
this.textValue = textValue;
this.inputValue = inputValue;
this.inputChecked = inputChecked;
this.optionSelected = optionSelected;
this.contentDocumentIndex = contentDocumentIndex;
this.pseudoType = pseudoType;
this.isClickable = isClickable;
this.currentSourceURL = currentSourceURL;
this.originURL = originURL;
}
/**
* Parent node index.
*/
public java.util.Optional> getParentIndex() {
return parentIndex;
}
/**
* `Node`'s nodeType.
*/
public java.util.Optional> getNodeType() {
return nodeType;
}
/**
* `Node`'s nodeName.
*/
public java.util.Optional> getNodeName() {
return nodeName;
}
/**
* `Node`'s nodeValue.
*/
public java.util.Optional> getNodeValue() {
return nodeValue;
}
/**
* `Node`'s id, corresponds to DOM.Node.backendNodeId.
*/
public java.util.Optional> getBackendNodeId() {
return backendNodeId;
}
/**
* Attributes of an `Element` node. Flatten name, value pairs.
*/
public java.util.Optional> getAttributes() {
return attributes;
}
/**
* Only set for textarea elements, contains the text value.
*/
public java.util.Optional getTextValue() {
return textValue;
}
/**
* Only set for input elements, contains the input's associated text value.
*/
public java.util.Optional getInputValue() {
return inputValue;
}
/**
* Only set for radio and checkbox input elements, indicates if the element has been checked
*/
public java.util.Optional getInputChecked() {
return inputChecked;
}
/**
* Only set for option elements, indicates if the element has been selected
*/
public java.util.Optional getOptionSelected() {
return optionSelected;
}
/**
* The index of the document in the list of the snapshot documents.
*/
public java.util.Optional getContentDocumentIndex() {
return contentDocumentIndex;
}
/**
* Type of a pseudo element node.
*/
public java.util.Optional getPseudoType() {
return pseudoType;
}
/**
* Whether this DOM node responds to mouse clicks. This includes nodes that have had click
* event listeners attached via JavaScript as well as anchor tags that naturally navigate when
* clicked.
*/
public java.util.Optional getIsClickable() {
return isClickable;
}
/**
* The selected url for nodes with a srcset attribute.
*/
public java.util.Optional getCurrentSourceURL() {
return currentSourceURL;
}
/**
* The url of the script (if any) that generates this node.
*/
public java.util.Optional getOriginURL() {
return originURL;
}
private static NodeTreeSnapshot fromJson(JsonInput input) {
java.util.Optional> parentIndex = java.util.Optional.empty();
java.util.Optional> nodeType = java.util.Optional.empty();
java.util.Optional> nodeName = java.util.Optional.empty();
java.util.Optional> nodeValue = java.util.Optional.empty();
java.util.Optional> backendNodeId = java.util.Optional.empty();
java.util.Optional> attributes = java.util.Optional.empty();
java.util.Optional textValue = java.util.Optional.empty();
java.util.Optional inputValue = java.util.Optional.empty();
java.util.Optional inputChecked = java.util.Optional.empty();
java.util.Optional optionSelected = java.util.Optional.empty();
java.util.Optional contentDocumentIndex = java.util.Optional.empty();
java.util.Optional pseudoType = java.util.Optional.empty();
java.util.Optional isClickable = java.util.Optional.empty();
java.util.Optional currentSourceURL = java.util.Optional.empty();
java.util.Optional originURL = java.util.Optional.empty();
input.beginObject();
while (input.hasNext()) {
switch(input.nextName()) {
case "parentIndex":
parentIndex = java.util.Optional.ofNullable(input.read(new com.google.common.reflect.TypeToken>() {
}.getType()));
break;
case "nodeType":
nodeType = java.util.Optional.ofNullable(input.read(new com.google.common.reflect.TypeToken>() {
}.getType()));
break;
case "nodeName":
nodeName = java.util.Optional.ofNullable(input.read(new com.google.common.reflect.TypeToken>() {
}.getType()));
break;
case "nodeValue":
nodeValue = java.util.Optional.ofNullable(input.read(new com.google.common.reflect.TypeToken>() {
}.getType()));
break;
case "backendNodeId":
backendNodeId = java.util.Optional.ofNullable(input.read(new com.google.common.reflect.TypeToken>() {
}.getType()));
break;
case "attributes":
attributes = java.util.Optional.ofNullable(input.read(new com.google.common.reflect.TypeToken>() {
}.getType()));
break;
case "textValue":
textValue = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.domsnapshot.model.RareStringData.class));
break;
case "inputValue":
inputValue = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.domsnapshot.model.RareStringData.class));
break;
case "inputChecked":
inputChecked = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.domsnapshot.model.RareBooleanData.class));
break;
case "optionSelected":
optionSelected = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.domsnapshot.model.RareBooleanData.class));
break;
case "contentDocumentIndex":
contentDocumentIndex = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.domsnapshot.model.RareIntegerData.class));
break;
case "pseudoType":
pseudoType = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.domsnapshot.model.RareStringData.class));
break;
case "isClickable":
isClickable = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.domsnapshot.model.RareBooleanData.class));
break;
case "currentSourceURL":
currentSourceURL = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.domsnapshot.model.RareStringData.class));
break;
case "originURL":
originURL = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.domsnapshot.model.RareStringData.class));
break;
default:
input.skipValue();
break;
}
}
input.endObject();
return new NodeTreeSnapshot(parentIndex, nodeType, nodeName, nodeValue, backendNodeId, attributes, textValue, inputValue, inputChecked, optionSelected, contentDocumentIndex, pseudoType, isClickable, currentSourceURL, originURL);
}
}