All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.graylog.plugins.views.search.searchtypes.pivot.AutoValue_Pivot Maven / Gradle / Ivy

There is a newer version: 6.0.1
Show newest version
package org.graylog.plugins.views.search.searchtypes.pivot;

import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;
import java.util.Optional;
import java.util.Set;
import javax.annotation.Generated;
import javax.annotation.Nullable;
import org.graylog.plugins.views.search.Filter;
import org.graylog.plugins.views.search.engine.BackendQuery;
import org.graylog.plugins.views.search.timeranges.DerivedTimeRange;

@Generated("com.google.auto.value.processor.AutoValueProcessor")
final class AutoValue_Pivot extends Pivot {

  private final Optional timerange;

  private final Optional query;

  private final Set streams;

  private final String type;

  private final String id;

  private final Optional name;

  private final List rowGroups;

  private final List columnGroups;

  private final List series;

  private final List sort;

  private final boolean rollup;

  private final Filter filter;

  private AutoValue_Pivot(
      Optional timerange,
      Optional query,
      Set streams,
      String type,
      @Nullable String id,
      Optional name,
      List rowGroups,
      List columnGroups,
      List series,
      List sort,
      boolean rollup,
      @Nullable Filter filter) {
    this.timerange = timerange;
    this.query = query;
    this.streams = streams;
    this.type = type;
    this.id = id;
    this.name = name;
    this.rowGroups = rowGroups;
    this.columnGroups = columnGroups;
    this.series = series;
    this.sort = sort;
    this.rollup = rollup;
    this.filter = filter;
  }

  @JsonProperty
  @Override
  public Optional timerange() {
    return timerange;
  }

  @JsonProperty
  @Override
  public Optional query() {
    return query;
  }

  @JsonProperty
  @Override
  public Set streams() {
    return streams;
  }

  @Override
  public String type() {
    return type;
  }

  @Nullable
  @JsonProperty
  @Override
  public String id() {
    return id;
  }

  @JsonProperty
  @Override
  public Optional name() {
    return name;
  }

  @JsonProperty("row_groups")
  @Override
  public List rowGroups() {
    return rowGroups;
  }

  @JsonProperty("column_groups")
  @Override
  public List columnGroups() {
    return columnGroups;
  }

  @JsonProperty
  @Override
  public List series() {
    return series;
  }

  @JsonProperty
  @Override
  public List sort() {
    return sort;
  }

  @JsonProperty
  @Override
  public boolean rollup() {
    return rollup;
  }

  @Nullable
  @Override
  public Filter filter() {
    return filter;
  }

  @Override
  public String toString() {
    return "Pivot{"
        + "timerange=" + timerange + ", "
        + "query=" + query + ", "
        + "streams=" + streams + ", "
        + "type=" + type + ", "
        + "id=" + id + ", "
        + "name=" + name + ", "
        + "rowGroups=" + rowGroups + ", "
        + "columnGroups=" + columnGroups + ", "
        + "series=" + series + ", "
        + "sort=" + sort + ", "
        + "rollup=" + rollup + ", "
        + "filter=" + filter
        + "}";
  }

  @Override
  public boolean equals(Object o) {
    if (o == this) {
      return true;
    }
    if (o instanceof Pivot) {
      Pivot that = (Pivot) o;
      return this.timerange.equals(that.timerange())
          && this.query.equals(that.query())
          && this.streams.equals(that.streams())
          && this.type.equals(that.type())
          && (this.id == null ? that.id() == null : this.id.equals(that.id()))
          && this.name.equals(that.name())
          && this.rowGroups.equals(that.rowGroups())
          && this.columnGroups.equals(that.columnGroups())
          && this.series.equals(that.series())
          && this.sort.equals(that.sort())
          && this.rollup == that.rollup()
          && (this.filter == null ? that.filter() == null : this.filter.equals(that.filter()));
    }
    return false;
  }

  @Override
  public int hashCode() {
    int h$ = 1;
    h$ *= 1000003;
    h$ ^= timerange.hashCode();
    h$ *= 1000003;
    h$ ^= query.hashCode();
    h$ *= 1000003;
    h$ ^= streams.hashCode();
    h$ *= 1000003;
    h$ ^= type.hashCode();
    h$ *= 1000003;
    h$ ^= (id == null) ? 0 : id.hashCode();
    h$ *= 1000003;
    h$ ^= name.hashCode();
    h$ *= 1000003;
    h$ ^= rowGroups.hashCode();
    h$ *= 1000003;
    h$ ^= columnGroups.hashCode();
    h$ *= 1000003;
    h$ ^= series.hashCode();
    h$ *= 1000003;
    h$ ^= sort.hashCode();
    h$ *= 1000003;
    h$ ^= rollup ? 1231 : 1237;
    h$ *= 1000003;
    h$ ^= (filter == null) ? 0 : filter.hashCode();
    return h$;
  }

  @Override
  public Pivot.Builder toBuilder() {
    return new Builder(this);
  }

  static final class Builder extends Pivot.Builder {
    private Optional timerange = Optional.empty();
    private Optional query = Optional.empty();
    private Set streams;
    private String type;
    private String id;
    private Optional name = Optional.empty();
    private List rowGroups;
    private List columnGroups;
    private List series;
    private List sort;
    private Boolean rollup;
    private Filter filter;
    Builder() {
    }
    private Builder(Pivot source) {
      this.timerange = source.timerange();
      this.query = source.query();
      this.streams = source.streams();
      this.type = source.type();
      this.id = source.id();
      this.name = source.name();
      this.rowGroups = source.rowGroups();
      this.columnGroups = source.columnGroups();
      this.series = source.series();
      this.sort = source.sort();
      this.rollup = source.rollup();
      this.filter = source.filter();
    }
    @Override
    public Pivot.Builder timerange(@Nullable DerivedTimeRange timerange) {
      this.timerange = Optional.ofNullable(timerange);
      return this;
    }
    @Override
    public Pivot.Builder query(@Nullable BackendQuery query) {
      this.query = Optional.ofNullable(query);
      return this;
    }
    @Override
    public Pivot.Builder streams(Set streams) {
      if (streams == null) {
        throw new NullPointerException("Null streams");
      }
      this.streams = streams;
      return this;
    }
    @Override
    public Pivot.Builder type(String type) {
      if (type == null) {
        throw new NullPointerException("Null type");
      }
      this.type = type;
      return this;
    }
    @Override
    public Pivot.Builder id(@Nullable String id) {
      this.id = id;
      return this;
    }
    @Override
    @Nullable String id() {
      return id;
    }
    @Override
    public Pivot.Builder name(@Nullable String name) {
      this.name = Optional.ofNullable(name);
      return this;
    }
    @Override
    public Pivot.Builder rowGroups(List rowGroups) {
      if (rowGroups == null) {
        throw new NullPointerException("Null rowGroups");
      }
      this.rowGroups = rowGroups;
      return this;
    }
    @Override
    public Pivot.Builder columnGroups(List columnGroups) {
      if (columnGroups == null) {
        throw new NullPointerException("Null columnGroups");
      }
      this.columnGroups = columnGroups;
      return this;
    }
    @Override
    public Pivot.Builder series(List series) {
      if (series == null) {
        throw new NullPointerException("Null series");
      }
      this.series = series;
      return this;
    }
    @Override
    public Pivot.Builder sort(List sort) {
      if (sort == null) {
        throw new NullPointerException("Null sort");
      }
      this.sort = sort;
      return this;
    }
    @Override
    public Pivot.Builder rollup(boolean rollup) {
      this.rollup = rollup;
      return this;
    }
    @Override
    public Pivot.Builder filter(@Nullable Filter filter) {
      this.filter = filter;
      return this;
    }
    @Override
    Pivot autoBuild() {
      String missing = "";
      if (this.streams == null) {
        missing += " streams";
      }
      if (this.type == null) {
        missing += " type";
      }
      if (this.rowGroups == null) {
        missing += " rowGroups";
      }
      if (this.columnGroups == null) {
        missing += " columnGroups";
      }
      if (this.series == null) {
        missing += " series";
      }
      if (this.sort == null) {
        missing += " sort";
      }
      if (this.rollup == null) {
        missing += " rollup";
      }
      if (!missing.isEmpty()) {
        throw new IllegalStateException("Missing required properties:" + missing);
      }
      return new AutoValue_Pivot(
          this.timerange,
          this.query,
          this.streams,
          this.type,
          this.id,
          this.name,
          this.rowGroups,
          this.columnGroups,
          this.series,
          this.sort,
          this.rollup,
          this.filter);
    }
  }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy