com.hubspot.chrome.devtools.client.core.profiler.ScriptCoverage Maven / Gradle / Ivy
package com.hubspot.chrome.devtools.client.core.profiler;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.hubspot.chrome.devtools.client.core.runtime.ScriptId;
import java.util.List;
/**
* Coverage data for a JavaScript script.
*/
public final class ScriptCoverage {
private ScriptId scriptId;
private String url;
private List functions;
@JsonCreator
public ScriptCoverage(@JsonProperty("scriptId") ScriptId scriptId,
@JsonProperty("url") String url,
@JsonProperty("functions") List functions) {
this.scriptId = scriptId;
this.url = url;
this.functions = functions;
}
public ScriptId getScriptId() {
return scriptId;
}
public String getUrl() {
return url;
}
public List getFunctions() {
return functions;
}
public static ScriptCoverage.Builder builder() {
return new ScriptCoverage.Builder();
}
public static final class Builder {
private ScriptId scriptId;
private String url;
private List functions;
private Builder() {
}
public ScriptCoverage.Builder setScriptId(ScriptId scriptId) {
this.scriptId = scriptId;
return this;
}
public ScriptCoverage.Builder setUrl(String url) {
this.url = url;
return this;
}
public ScriptCoverage.Builder setFunctions(List functions) {
this.functions = functions;
return this;
}
public ScriptCoverage build() {
return new ScriptCoverage(scriptId, url, functions);
}
}
}