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

org.openqa.selenium.devtools.v88.indexeddb.model.KeyRange Maven / Gradle / Ivy

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

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

/**
 * Key range.
 */
public class KeyRange {

    private final java.util.Optional lower;

    private final java.util.Optional upper;

    private final java.lang.Boolean lowerOpen;

    private final java.lang.Boolean upperOpen;

    public KeyRange(java.util.Optional lower, java.util.Optional upper, java.lang.Boolean lowerOpen, java.lang.Boolean upperOpen) {
        this.lower = lower;
        this.upper = upper;
        this.lowerOpen = java.util.Objects.requireNonNull(lowerOpen, "lowerOpen is required");
        this.upperOpen = java.util.Objects.requireNonNull(upperOpen, "upperOpen is required");
    }

    /**
     * Lower bound.
     */
    public java.util.Optional getLower() {
        return lower;
    }

    /**
     * Upper bound.
     */
    public java.util.Optional getUpper() {
        return upper;
    }

    /**
     * If true lower bound is open.
     */
    public java.lang.Boolean getLowerOpen() {
        return lowerOpen;
    }

    /**
     * If true upper bound is open.
     */
    public java.lang.Boolean getUpperOpen() {
        return upperOpen;
    }

    private static KeyRange fromJson(JsonInput input) {
        java.util.Optional lower = java.util.Optional.empty();
        java.util.Optional upper = java.util.Optional.empty();
        java.lang.Boolean lowerOpen = false;
        java.lang.Boolean upperOpen = false;
        input.beginObject();
        while (input.hasNext()) {
            switch(input.nextName()) {
                case "lower":
                    lower = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.v88.indexeddb.model.Key.class));
                    break;
                case "upper":
                    upper = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.v88.indexeddb.model.Key.class));
                    break;
                case "lowerOpen":
                    lowerOpen = input.nextBoolean();
                    break;
                case "upperOpen":
                    upperOpen = input.nextBoolean();
                    break;
                default:
                    input.skipValue();
                    break;
            }
        }
        input.endObject();
        return new KeyRange(lower, upper, lowerOpen, upperOpen);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy