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

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

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

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

/**
 * Fired when frame has been attached to its parent.
 */
public class FrameAttached {

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

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

    private final java.util.Optional stack;

    public FrameAttached(org.openqa.selenium.devtools.v88.page.model.FrameId frameId, org.openqa.selenium.devtools.v88.page.model.FrameId parentFrameId, java.util.Optional stack) {
        this.frameId = java.util.Objects.requireNonNull(frameId, "frameId is required");
        this.parentFrameId = java.util.Objects.requireNonNull(parentFrameId, "parentFrameId is required");
        this.stack = stack;
    }

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

    /**
     * Parent frame identifier.
     */
    public org.openqa.selenium.devtools.v88.page.model.FrameId getParentFrameId() {
        return parentFrameId;
    }

    /**
     * JavaScript stack trace of when frame was attached, only set if frame initiated from script.
     */
    public java.util.Optional getStack() {
        return stack;
    }

    private static FrameAttached fromJson(JsonInput input) {
        org.openqa.selenium.devtools.v88.page.model.FrameId frameId = null;
        org.openqa.selenium.devtools.v88.page.model.FrameId parentFrameId = null;
        java.util.Optional stack = java.util.Optional.empty();
        input.beginObject();
        while (input.hasNext()) {
            switch(input.nextName()) {
                case "frameId":
                    frameId = input.read(org.openqa.selenium.devtools.v88.page.model.FrameId.class);
                    break;
                case "parentFrameId":
                    parentFrameId = input.read(org.openqa.selenium.devtools.v88.page.model.FrameId.class);
                    break;
                case "stack":
                    stack = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.v88.runtime.model.StackTrace.class));
                    break;
                default:
                    input.skipValue();
                    break;
            }
        }
        input.endObject();
        return new FrameAttached(frameId, parentFrameId, stack);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy