com.hubspot.chrome.devtools.client.core.runtime.StackTraceId Maven / Gradle / Ivy
package com.hubspot.chrome.devtools.client.core.runtime;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
* If `debuggerId` is set stack trace comes from another debugger and can be resolved there. This
* allows to track cross-debugger calls. See `Runtime.StackTrace` and `Debugger.paused` for usages.
*/
public final class StackTraceId {
private String id;
private UniqueDebuggerId debuggerId;
@JsonCreator
public StackTraceId(@JsonProperty("id") String id,
@JsonProperty("debuggerId") UniqueDebuggerId debuggerId) {
this.id = id;
this.debuggerId = debuggerId;
}
public String getId() {
return id;
}
public UniqueDebuggerId getDebuggerId() {
return debuggerId;
}
public static StackTraceId.Builder builder() {
return new StackTraceId.Builder();
}
public static final class Builder {
private String id;
private UniqueDebuggerId debuggerId;
private Builder() {
}
public StackTraceId.Builder setId(String id) {
this.id = id;
return this;
}
public StackTraceId.Builder setDebuggerId(UniqueDebuggerId debuggerId) {
this.debuggerId = debuggerId;
return this;
}
public StackTraceId build() {
return new StackTraceId(id, debuggerId);
}
}
}