com.hubspot.chrome.devtools.client.core.network.Initiator Maven / Gradle / Ivy
package com.hubspot.chrome.devtools.client.core.network;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.hubspot.chrome.devtools.client.core.runtime.StackTrace;
/**
* Information about the request initiator.
*/
public final class Initiator {
private String type;
private StackTrace stack;
private String url;
private Number lineNumber;
@JsonCreator
public Initiator(@JsonProperty("type") String type, @JsonProperty("stack") StackTrace stack,
@JsonProperty("url") String url, @JsonProperty("lineNumber") Number lineNumber) {
this.type = type;
this.stack = stack;
this.url = url;
this.lineNumber = lineNumber;
}
public String getType() {
return type;
}
public StackTrace getStack() {
return stack;
}
public String getUrl() {
return url;
}
public Number getLineNumber() {
return lineNumber;
}
public static Initiator.Builder builder() {
return new Initiator.Builder();
}
public static final class Builder {
private String type;
private StackTrace stack;
private String url;
private Number lineNumber;
private Builder() {
}
public Initiator.Builder setType(String type) {
this.type = type;
return this;
}
public Initiator.Builder setStack(StackTrace stack) {
this.stack = stack;
return this;
}
public Initiator.Builder setUrl(String url) {
this.url = url;
return this;
}
public Initiator.Builder setLineNumber(Number lineNumber) {
this.lineNumber = lineNumber;
return this;
}
public Initiator build() {
return new Initiator(type, stack, url, lineNumber);
}
}
}