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

org.openqa.selenium.devtools.v88.serviceworker.model.ServiceWorkerVersion Maven / Gradle / Ivy

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

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

/**
 * ServiceWorker version.
 */
public class ServiceWorkerVersion {

    private final java.lang.String versionId;

    private final org.openqa.selenium.devtools.v88.serviceworker.model.RegistrationID registrationId;

    private final java.lang.String scriptURL;

    private final org.openqa.selenium.devtools.v88.serviceworker.model.ServiceWorkerVersionRunningStatus runningStatus;

    private final org.openqa.selenium.devtools.v88.serviceworker.model.ServiceWorkerVersionStatus status;

    private final java.util.Optional scriptLastModified;

    private final java.util.Optional scriptResponseTime;

    private final java.util.Optional> controlledClients;

    private final java.util.Optional targetId;

    public ServiceWorkerVersion(java.lang.String versionId, org.openqa.selenium.devtools.v88.serviceworker.model.RegistrationID registrationId, java.lang.String scriptURL, org.openqa.selenium.devtools.v88.serviceworker.model.ServiceWorkerVersionRunningStatus runningStatus, org.openqa.selenium.devtools.v88.serviceworker.model.ServiceWorkerVersionStatus status, java.util.Optional scriptLastModified, java.util.Optional scriptResponseTime, java.util.Optional> controlledClients, java.util.Optional targetId) {
        this.versionId = java.util.Objects.requireNonNull(versionId, "versionId is required");
        this.registrationId = java.util.Objects.requireNonNull(registrationId, "registrationId is required");
        this.scriptURL = java.util.Objects.requireNonNull(scriptURL, "scriptURL is required");
        this.runningStatus = java.util.Objects.requireNonNull(runningStatus, "runningStatus is required");
        this.status = java.util.Objects.requireNonNull(status, "status is required");
        this.scriptLastModified = scriptLastModified;
        this.scriptResponseTime = scriptResponseTime;
        this.controlledClients = controlledClients;
        this.targetId = targetId;
    }

    public java.lang.String getVersionId() {
        return versionId;
    }

    public org.openqa.selenium.devtools.v88.serviceworker.model.RegistrationID getRegistrationId() {
        return registrationId;
    }

    public java.lang.String getScriptURL() {
        return scriptURL;
    }

    public org.openqa.selenium.devtools.v88.serviceworker.model.ServiceWorkerVersionRunningStatus getRunningStatus() {
        return runningStatus;
    }

    public org.openqa.selenium.devtools.v88.serviceworker.model.ServiceWorkerVersionStatus getStatus() {
        return status;
    }

    /**
     * The Last-Modified header value of the main script.
     */
    public java.util.Optional getScriptLastModified() {
        return scriptLastModified;
    }

    /**
     * The time at which the response headers of the main script were received from the server.
     * For cached script it is the last time the cache entry was validated.
     */
    public java.util.Optional getScriptResponseTime() {
        return scriptResponseTime;
    }

    public java.util.Optional> getControlledClients() {
        return controlledClients;
    }

    public java.util.Optional getTargetId() {
        return targetId;
    }

    private static ServiceWorkerVersion fromJson(JsonInput input) {
        java.lang.String versionId = null;
        org.openqa.selenium.devtools.v88.serviceworker.model.RegistrationID registrationId = null;
        java.lang.String scriptURL = null;
        org.openqa.selenium.devtools.v88.serviceworker.model.ServiceWorkerVersionRunningStatus runningStatus = null;
        org.openqa.selenium.devtools.v88.serviceworker.model.ServiceWorkerVersionStatus status = null;
        java.util.Optional scriptLastModified = java.util.Optional.empty();
        java.util.Optional scriptResponseTime = java.util.Optional.empty();
        java.util.Optional> controlledClients = java.util.Optional.empty();
        java.util.Optional targetId = java.util.Optional.empty();
        input.beginObject();
        while (input.hasNext()) {
            switch(input.nextName()) {
                case "versionId":
                    versionId = input.nextString();
                    break;
                case "registrationId":
                    registrationId = input.read(org.openqa.selenium.devtools.v88.serviceworker.model.RegistrationID.class);
                    break;
                case "scriptURL":
                    scriptURL = input.nextString();
                    break;
                case "runningStatus":
                    runningStatus = input.read(org.openqa.selenium.devtools.v88.serviceworker.model.ServiceWorkerVersionRunningStatus.class);
                    break;
                case "status":
                    status = input.read(org.openqa.selenium.devtools.v88.serviceworker.model.ServiceWorkerVersionStatus.class);
                    break;
                case "scriptLastModified":
                    scriptLastModified = java.util.Optional.ofNullable(input.nextNumber());
                    break;
                case "scriptResponseTime":
                    scriptResponseTime = java.util.Optional.ofNullable(input.nextNumber());
                    break;
                case "controlledClients":
                    controlledClients = java.util.Optional.ofNullable(input.read(new com.google.common.reflect.TypeToken>() {
                    }.getType()));
                    break;
                case "targetId":
                    targetId = java.util.Optional.ofNullable(input.read(org.openqa.selenium.devtools.v88.target.model.TargetID.class));
                    break;
                default:
                    input.skipValue();
                    break;
            }
        }
        input.endObject();
        return new ServiceWorkerVersion(versionId, registrationId, scriptURL, runningStatus, status, scriptLastModified, scriptResponseTime, controlledClients, targetId);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy