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

org.openqa.selenium.devtools.v88.css.model.PlatformFontUsage Maven / Gradle / Ivy

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

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

/**
 * Information about amount of glyphs that were rendered with given font.
 */
public class PlatformFontUsage {

    private final java.lang.String familyName;

    private final java.lang.Boolean isCustomFont;

    private final java.lang.Number glyphCount;

    public PlatformFontUsage(java.lang.String familyName, java.lang.Boolean isCustomFont, java.lang.Number glyphCount) {
        this.familyName = java.util.Objects.requireNonNull(familyName, "familyName is required");
        this.isCustomFont = java.util.Objects.requireNonNull(isCustomFont, "isCustomFont is required");
        this.glyphCount = java.util.Objects.requireNonNull(glyphCount, "glyphCount is required");
    }

    /**
     * Font's family name reported by platform.
     */
    public java.lang.String getFamilyName() {
        return familyName;
    }

    /**
     * Indicates if the font was downloaded or resolved locally.
     */
    public java.lang.Boolean getIsCustomFont() {
        return isCustomFont;
    }

    /**
     * Amount of glyphs that were rendered with this font.
     */
    public java.lang.Number getGlyphCount() {
        return glyphCount;
    }

    private static PlatformFontUsage fromJson(JsonInput input) {
        java.lang.String familyName = null;
        java.lang.Boolean isCustomFont = false;
        java.lang.Number glyphCount = 0;
        input.beginObject();
        while (input.hasNext()) {
            switch(input.nextName()) {
                case "familyName":
                    familyName = input.nextString();
                    break;
                case "isCustomFont":
                    isCustomFont = input.nextBoolean();
                    break;
                case "glyphCount":
                    glyphCount = input.nextNumber();
                    break;
                default:
                    input.skipValue();
                    break;
            }
        }
        input.endObject();
        return new PlatformFontUsage(familyName, isCustomFont, glyphCount);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy