com.hubspot.chrome.devtools.client.core.runtime.StackTrace Maven / Gradle / Ivy
package com.hubspot.chrome.devtools.client.core.runtime;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;
/**
* Call frames for assertions or error messages.
*/
public final class StackTrace {
private String description;
private List callFrames;
private StackTrace parent;
private StackTraceId parentId;
@JsonCreator
public StackTrace(@JsonProperty("description") String description,
@JsonProperty("callFrames") List callFrames,
@JsonProperty("parent") StackTrace parent, @JsonProperty("parentId") StackTraceId parentId) {
this.description = description;
this.callFrames = callFrames;
this.parent = parent;
this.parentId = parentId;
}
public String getDescription() {
return description;
}
public List getCallFrames() {
return callFrames;
}
public StackTrace getParent() {
return parent;
}
public StackTraceId getParentId() {
return parentId;
}
public static StackTrace.Builder builder() {
return new StackTrace.Builder();
}
public static final class Builder {
private String description;
private List callFrames;
private StackTrace parent;
private StackTraceId parentId;
private Builder() {
}
public StackTrace.Builder setDescription(String description) {
this.description = description;
return this;
}
public StackTrace.Builder setCallFrames(List callFrames) {
this.callFrames = callFrames;
return this;
}
public StackTrace.Builder setParent(StackTrace parent) {
this.parent = parent;
return this;
}
public StackTrace.Builder setParentId(StackTraceId parentId) {
this.parentId = parentId;
return this;
}
public StackTrace build() {
return new StackTrace(description, callFrames, parent, parentId);
}
}
}