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

org.openqa.selenium.devtools.v88.systeminfo.model.GPUDevice Maven / Gradle / Ivy

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

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

/**
 * Describes a single graphics processor (GPU).
 */
public class GPUDevice {

    private final java.lang.Number vendorId;

    private final java.lang.Number deviceId;

    private final java.util.Optional subSysId;

    private final java.util.Optional revision;

    private final java.lang.String vendorString;

    private final java.lang.String deviceString;

    private final java.lang.String driverVendor;

    private final java.lang.String driverVersion;

    public GPUDevice(java.lang.Number vendorId, java.lang.Number deviceId, java.util.Optional subSysId, java.util.Optional revision, java.lang.String vendorString, java.lang.String deviceString, java.lang.String driverVendor, java.lang.String driverVersion) {
        this.vendorId = java.util.Objects.requireNonNull(vendorId, "vendorId is required");
        this.deviceId = java.util.Objects.requireNonNull(deviceId, "deviceId is required");
        this.subSysId = subSysId;
        this.revision = revision;
        this.vendorString = java.util.Objects.requireNonNull(vendorString, "vendorString is required");
        this.deviceString = java.util.Objects.requireNonNull(deviceString, "deviceString is required");
        this.driverVendor = java.util.Objects.requireNonNull(driverVendor, "driverVendor is required");
        this.driverVersion = java.util.Objects.requireNonNull(driverVersion, "driverVersion is required");
    }

    /**
     * PCI ID of the GPU vendor, if available; 0 otherwise.
     */
    public java.lang.Number getVendorId() {
        return vendorId;
    }

    /**
     * PCI ID of the GPU device, if available; 0 otherwise.
     */
    public java.lang.Number getDeviceId() {
        return deviceId;
    }

    /**
     * Sub sys ID of the GPU, only available on Windows.
     */
    public java.util.Optional getSubSysId() {
        return subSysId;
    }

    /**
     * Revision of the GPU, only available on Windows.
     */
    public java.util.Optional getRevision() {
        return revision;
    }

    /**
     * String description of the GPU vendor, if the PCI ID is not available.
     */
    public java.lang.String getVendorString() {
        return vendorString;
    }

    /**
     * String description of the GPU device, if the PCI ID is not available.
     */
    public java.lang.String getDeviceString() {
        return deviceString;
    }

    /**
     * String description of the GPU driver vendor.
     */
    public java.lang.String getDriverVendor() {
        return driverVendor;
    }

    /**
     * String description of the GPU driver version.
     */
    public java.lang.String getDriverVersion() {
        return driverVersion;
    }

    private static GPUDevice fromJson(JsonInput input) {
        java.lang.Number vendorId = 0;
        java.lang.Number deviceId = 0;
        java.util.Optional subSysId = java.util.Optional.empty();
        java.util.Optional revision = java.util.Optional.empty();
        java.lang.String vendorString = null;
        java.lang.String deviceString = null;
        java.lang.String driverVendor = null;
        java.lang.String driverVersion = null;
        input.beginObject();
        while (input.hasNext()) {
            switch(input.nextName()) {
                case "vendorId":
                    vendorId = input.nextNumber();
                    break;
                case "deviceId":
                    deviceId = input.nextNumber();
                    break;
                case "subSysId":
                    subSysId = java.util.Optional.ofNullable(input.nextNumber());
                    break;
                case "revision":
                    revision = java.util.Optional.ofNullable(input.nextNumber());
                    break;
                case "vendorString":
                    vendorString = input.nextString();
                    break;
                case "deviceString":
                    deviceString = input.nextString();
                    break;
                case "driverVendor":
                    driverVendor = input.nextString();
                    break;
                case "driverVersion":
                    driverVersion = input.nextString();
                    break;
                default:
                    input.skipValue();
                    break;
            }
        }
        input.endObject();
        return new GPUDevice(vendorId, deviceId, subSysId, revision, vendorString, deviceString, driverVendor, driverVersion);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy