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

edu.stanford.protege.webprotege.criteria.AutoValue_CompositeHierarchyPositionCriteria Maven / Gradle / Ivy

There is a newer version: 0.9.2
Show newest version
package edu.stanford.protege.webprotege.criteria;

import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;
import javax.annotation.Nonnull;
import javax.annotation.processing.Generated;

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

  private final MultiMatchType matchType;

  private final List criteria;

  AutoValue_CompositeHierarchyPositionCriteria(
      MultiMatchType matchType,
      List criteria) {
    if (matchType == null) {
      throw new NullPointerException("Null matchType");
    }
    this.matchType = matchType;
    if (criteria == null) {
      throw new NullPointerException("Null criteria");
    }
    this.criteria = criteria;
  }

  @JsonProperty("matchType")
  @Nonnull
  @Override
  public MultiMatchType getMatchType() {
    return matchType;
  }

  @JsonProperty("criteria")
  @Override
  public List getCriteria() {
    return criteria;
  }

  @Override
  public String toString() {
    return "CompositeHierarchyPositionCriteria{"
        + "matchType=" + matchType + ", "
        + "criteria=" + criteria
        + "}";
  }

  @Override
  public boolean equals(Object o) {
    if (o == this) {
      return true;
    }
    if (o instanceof CompositeHierarchyPositionCriteria) {
      CompositeHierarchyPositionCriteria that = (CompositeHierarchyPositionCriteria) o;
      return this.matchType.equals(that.getMatchType())
          && this.criteria.equals(that.getCriteria());
    }
    return false;
  }

  @Override
  public int hashCode() {
    int h$ = 1;
    h$ *= 1000003;
    h$ ^= matchType.hashCode();
    h$ *= 1000003;
    h$ ^= criteria.hashCode();
    return h$;
  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy