com.hubspot.chrome.devtools.client.core.profiler.Profile Maven / Gradle / Ivy
package com.hubspot.chrome.devtools.client.core.profiler;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;
/**
* Profile.
*/
public final class Profile {
private List nodes;
private Number startTime;
private Number endTime;
private List samples;
private List timeDeltas;
@JsonCreator
public Profile(@JsonProperty("nodes") List nodes,
@JsonProperty("startTime") Number startTime, @JsonProperty("endTime") Number endTime,
@JsonProperty("samples") List samples,
@JsonProperty("timeDeltas") List timeDeltas) {
this.nodes = nodes;
this.startTime = startTime;
this.endTime = endTime;
this.samples = samples;
this.timeDeltas = timeDeltas;
}
public List getNodes() {
return nodes;
}
public Number getStartTime() {
return startTime;
}
public Number getEndTime() {
return endTime;
}
public List getSamples() {
return samples;
}
public List getTimeDeltas() {
return timeDeltas;
}
public static Profile.Builder builder() {
return new Profile.Builder();
}
public static final class Builder {
private List nodes;
private Number startTime;
private Number endTime;
private List samples;
private List timeDeltas;
private Builder() {
}
public Profile.Builder setNodes(List nodes) {
this.nodes = nodes;
return this;
}
public Profile.Builder setStartTime(Number startTime) {
this.startTime = startTime;
return this;
}
public Profile.Builder setEndTime(Number endTime) {
this.endTime = endTime;
return this;
}
public Profile.Builder setSamples(List samples) {
this.samples = samples;
return this;
}
public Profile.Builder setTimeDeltas(List timeDeltas) {
this.timeDeltas = timeDeltas;
return this;
}
public Profile build() {
return new Profile(nodes, startTime, endTime, samples, timeDeltas);
}
}
}