org.openqa.selenium.devtools.v90.performancetimeline.model.LargestContentfulPaint Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of selenium-devtools-v90 Show documentation
Show all versions of selenium-devtools-v90 Show documentation
Selenium automates browsers. That's it! What you do with that power is entirely up to you.
package org.openqa.selenium.devtools.v90.performancetimeline.model;
import org.openqa.selenium.Beta;
import org.openqa.selenium.json.JsonInput;
/**
* See https://github.com/WICG/LargestContentfulPaint and largest_contentful_paint.idl
*/
public class LargestContentfulPaint {
private final org.openqa.selenium.devtools.v90.network.model.TimeSinceEpoch renderTime;
private final org.openqa.selenium.devtools.v90.network.model.TimeSinceEpoch loadTime;
private final java.lang.Number size;
private final java.util.Optional elementId;
private final java.util.Optional url;
private final java.util.Optional nodeId;
public LargestContentfulPaint(org.openqa.selenium.devtools.v90.network.model.TimeSinceEpoch renderTime, org.openqa.selenium.devtools.v90.network.model.TimeSinceEpoch loadTime, java.lang.Number size, java.util.Optional elementId, java.util.Optional url, java.util.Optional nodeId) {
this.renderTime = java.util.Objects.requireNonNull(renderTime, "renderTime is required");
this.loadTime = java.util.Objects.requireNonNull(loadTime, "loadTime is required");
this.size = java.util.Objects.requireNonNull(size, "size is required");
this.elementId = elementId;
this.url = url;
this.nodeId = nodeId;
}
public org.openqa.selenium.devtools.v90.network.model.TimeSinceEpoch getRenderTime() {
return renderTime;
}
public org.openqa.selenium.devtools.v90.network.model.TimeSinceEpoch getLoadTime() {
return loadTime;
}
/**
* The number of pixels being painted.
*/
public java.lang.Number getSize() {
return size;
}
/**
* The id attribute of the element, if available.
*/
public java.util.Optional getElementId() {
return elementId;
}
/**
* The URL of the image (may be trimmed).
*/
public java.util.Optional getUrl() {
return url;
}
public java.util.Optional getNodeId() {
return nodeId;
}
private static LargestContentfulPaint fromJson(JsonInput input) {
org.openqa.selenium.devtools.v90.network.model.TimeSinceEpoch renderTime = null;
org.openqa.selenium.devtools.v90.network.model.TimeSinceEpoch loadTime = null;
java.lang.Number size = 0;
java.util.Optional elementId = java.util.Optional.empty();
java.util.Optional url = java.util.Optional.empty();
java.util.Optional nodeId = java.util.Optional.empty();
input.beginObject();
while (input.hasNext()) {
switch(input.nextName()) {
case "renderTime":
renderTime = input.read(org.openqa.selenium.devtools.v90.network.model.TimeSinceEpoch.class);
break;
case "loadTime":
loadTime = input.read(org.openqa.selenium.devtools.v90.network.model.TimeSinceEpoch.class);
break;
case "size":
size = input.nextNumber();
break;
case "elementId":
elementId = java.util.Optional.ofNullable(input.nextString());
break;
case "url":
url = java.util.Optional.ofNullable(input.nextString());
break;
case "nodeId":
nodeId = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.v90.dom.model.BackendNodeId.class));
break;
default:
input.skipValue();
break;
}
}
input.endObject();
return new LargestContentfulPaint(renderTime, loadTime, size, elementId, url, nodeId);
}
}