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

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

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

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

/**
 * Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) is about to
 * open.
 */
public class JavascriptDialogOpening {

    private final java.lang.String url;

    private final java.lang.String message;

    private final org.openqa.selenium.devtools.v88.page.model.DialogType type;

    private final java.lang.Boolean hasBrowserHandler;

    private final java.util.Optional defaultPrompt;

    public JavascriptDialogOpening(java.lang.String url, java.lang.String message, org.openqa.selenium.devtools.v88.page.model.DialogType type, java.lang.Boolean hasBrowserHandler, java.util.Optional defaultPrompt) {
        this.url = java.util.Objects.requireNonNull(url, "url is required");
        this.message = java.util.Objects.requireNonNull(message, "message is required");
        this.type = java.util.Objects.requireNonNull(type, "type is required");
        this.hasBrowserHandler = java.util.Objects.requireNonNull(hasBrowserHandler, "hasBrowserHandler is required");
        this.defaultPrompt = defaultPrompt;
    }

    /**
     * Frame url.
     */
    public java.lang.String getUrl() {
        return url;
    }

    /**
     * Message that will be displayed by the dialog.
     */
    public java.lang.String getMessage() {
        return message;
    }

    /**
     * Dialog type.
     */
    public org.openqa.selenium.devtools.v88.page.model.DialogType getType() {
        return type;
    }

    /**
     * True iff browser is capable showing or acting on the given dialog. When browser has no
     * dialog handler for given target, calling alert while Page domain is engaged will stall
     * the page execution. Execution can be resumed via calling Page.handleJavaScriptDialog.
     */
    public java.lang.Boolean getHasBrowserHandler() {
        return hasBrowserHandler;
    }

    /**
     * Default dialog prompt.
     */
    public java.util.Optional getDefaultPrompt() {
        return defaultPrompt;
    }

    private static JavascriptDialogOpening fromJson(JsonInput input) {
        java.lang.String url = null;
        java.lang.String message = null;
        org.openqa.selenium.devtools.v88.page.model.DialogType type = null;
        java.lang.Boolean hasBrowserHandler = false;
        java.util.Optional defaultPrompt = java.util.Optional.empty();
        input.beginObject();
        while (input.hasNext()) {
            switch(input.nextName()) {
                case "url":
                    url = input.nextString();
                    break;
                case "message":
                    message = input.nextString();
                    break;
                case "type":
                    type = input.read(org.openqa.selenium.devtools.v88.page.model.DialogType.class);
                    break;
                case "hasBrowserHandler":
                    hasBrowserHandler = input.nextBoolean();
                    break;
                case "defaultPrompt":
                    defaultPrompt = java.util.Optional.ofNullable(input.nextString());
                    break;
                default:
                    input.skipValue();
                    break;
            }
        }
        input.endObject();
        return new JavascriptDialogOpening(url, message, type, hasBrowserHandler, defaultPrompt);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy