com.grafana.foundation.dashboard.AnnotationTarget Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of grafana-foundation-sdk Show documentation
Show all versions of grafana-foundation-sdk Show documentation
A set of tools, types and libraries for building and manipulating Grafana objects.
// Code generated - EDITING IS FUTILE. DO NOT EDIT.
package com.grafana.foundation.dashboard;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.ObjectWriter;
import com.fasterxml.jackson.annotation.JsonSetter;
import com.fasterxml.jackson.annotation.Nulls;
import java.util.List;
// TODO: this should be a regular DataQuery that depends on the selected dashboard
// these match the properties of the "grafana" datasouce that is default in most dashboards
public class AnnotationTarget {
// Only required/valid for the grafana datasource...
// but code+tests is already depending on it so hard to change
@JsonProperty("limit")
public Long limit;
// Only required/valid for the grafana datasource...
// but code+tests is already depending on it so hard to change
@JsonProperty("matchAny")
public Boolean matchAny;
// Only required/valid for the grafana datasource...
// but code+tests is already depending on it so hard to change
@JsonSetter(nulls = Nulls.AS_EMPTY)
@JsonProperty("tags")
public List tags;
// Only required/valid for the grafana datasource...
// but code+tests is already depending on it so hard to change
@JsonProperty("type")
public String type;
public String toJSON() throws JsonProcessingException {
ObjectWriter ow = new ObjectMapper().writer().withDefaultPrettyPrinter();
return ow.writeValueAsString(this);
}
public static class Builder implements com.grafana.foundation.cog.Builder {
protected final AnnotationTarget internal;
public Builder() {
this.internal = new AnnotationTarget();
}
public Builder limit(Long limit) {
this.internal.limit = limit;
return this;
}
public Builder matchAny(Boolean matchAny) {
this.internal.matchAny = matchAny;
return this;
}
public Builder tags(List tags) {
this.internal.tags = tags;
return this;
}
public Builder type(String type) {
this.internal.type = type;
return this;
}
public AnnotationTarget build() {
return this.internal;
}
}
}