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

org.openqa.selenium.devtools.v88.browser.model.Bounds Maven / Gradle / Ivy

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

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

/**
 * Browser window bounds information
 */
@org.openqa.selenium.Beta()
public class Bounds {

    private final java.util.Optional left;

    private final java.util.Optional top;

    private final java.util.Optional width;

    private final java.util.Optional height;

    private final java.util.Optional windowState;

    public Bounds(java.util.Optional left, java.util.Optional top, java.util.Optional width, java.util.Optional height, java.util.Optional windowState) {
        this.left = left;
        this.top = top;
        this.width = width;
        this.height = height;
        this.windowState = windowState;
    }

    /**
     * The offset from the left edge of the screen to the window in pixels.
     */
    public java.util.Optional getLeft() {
        return left;
    }

    /**
     * The offset from the top edge of the screen to the window in pixels.
     */
    public java.util.Optional getTop() {
        return top;
    }

    /**
     * The window width in pixels.
     */
    public java.util.Optional getWidth() {
        return width;
    }

    /**
     * The window height in pixels.
     */
    public java.util.Optional getHeight() {
        return height;
    }

    /**
     * The window state. Default to normal.
     */
    public java.util.Optional getWindowState() {
        return windowState;
    }

    private static Bounds fromJson(JsonInput input) {
        java.util.Optional left = java.util.Optional.empty();
        java.util.Optional top = java.util.Optional.empty();
        java.util.Optional width = java.util.Optional.empty();
        java.util.Optional height = java.util.Optional.empty();
        java.util.Optional windowState = java.util.Optional.empty();
        input.beginObject();
        while (input.hasNext()) {
            switch(input.nextName()) {
                case "left":
                    left = java.util.Optional.ofNullable(input.nextNumber().intValue());
                    break;
                case "top":
                    top = java.util.Optional.ofNullable(input.nextNumber().intValue());
                    break;
                case "width":
                    width = java.util.Optional.ofNullable(input.nextNumber().intValue());
                    break;
                case "height":
                    height = java.util.Optional.ofNullable(input.nextNumber().intValue());
                    break;
                case "windowState":
                    windowState = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.v88.browser.model.WindowState.class));
                    break;
                default:
                    input.skipValue();
                    break;
            }
        }
        input.endObject();
        return new Bounds(left, top, width, height, windowState);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy