All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.openqa.selenium.devtools.v88.page.model.LifecycleEvent Maven / Gradle / Ivy

package org.openqa.selenium.devtools.v88.page.model;

import org.openqa.selenium.Beta;
import org.openqa.selenium.json.JsonInput;

/**
 * Fired for top level page lifecycle events such as navigation, load, paint, etc.
 */
public class LifecycleEvent {

    private final org.openqa.selenium.devtools.v88.page.model.FrameId frameId;

    private final org.openqa.selenium.devtools.v88.network.model.LoaderId loaderId;

    private final java.lang.String name;

    private final org.openqa.selenium.devtools.v88.network.model.MonotonicTime timestamp;

    public LifecycleEvent(org.openqa.selenium.devtools.v88.page.model.FrameId frameId, org.openqa.selenium.devtools.v88.network.model.LoaderId loaderId, java.lang.String name, org.openqa.selenium.devtools.v88.network.model.MonotonicTime timestamp) {
        this.frameId = java.util.Objects.requireNonNull(frameId, "frameId is required");
        this.loaderId = java.util.Objects.requireNonNull(loaderId, "loaderId is required");
        this.name = java.util.Objects.requireNonNull(name, "name is required");
        this.timestamp = java.util.Objects.requireNonNull(timestamp, "timestamp is required");
    }

    /**
     * Id of the frame.
     */
    public org.openqa.selenium.devtools.v88.page.model.FrameId getFrameId() {
        return frameId;
    }

    /**
     * Loader identifier. Empty string if the request is fetched from worker.
     */
    public org.openqa.selenium.devtools.v88.network.model.LoaderId getLoaderId() {
        return loaderId;
    }

    public java.lang.String getName() {
        return name;
    }

    public org.openqa.selenium.devtools.v88.network.model.MonotonicTime getTimestamp() {
        return timestamp;
    }

    private static LifecycleEvent fromJson(JsonInput input) {
        org.openqa.selenium.devtools.v88.page.model.FrameId frameId = null;
        org.openqa.selenium.devtools.v88.network.model.LoaderId loaderId = null;
        java.lang.String name = null;
        org.openqa.selenium.devtools.v88.network.model.MonotonicTime timestamp = null;
        input.beginObject();
        while (input.hasNext()) {
            switch(input.nextName()) {
                case "frameId":
                    frameId = input.read(org.openqa.selenium.devtools.v88.page.model.FrameId.class);
                    break;
                case "loaderId":
                    loaderId = input.read(org.openqa.selenium.devtools.v88.network.model.LoaderId.class);
                    break;
                case "name":
                    name = input.nextString();
                    break;
                case "timestamp":
                    timestamp = input.read(org.openqa.selenium.devtools.v88.network.model.MonotonicTime.class);
                    break;
                default:
                    input.skipValue();
                    break;
            }
        }
        input.endObject();
        return new LifecycleEvent(frameId, loaderId, name, timestamp);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy