001package com.box.sdkgen.schemas.v2026r0.queryancestorreferencev2026r0;
002
003import com.box.sdkgen.internal.SerializableObject;
004import com.fasterxml.jackson.annotation.JsonFilter;
005import com.fasterxml.jackson.annotation.JsonProperty;
006import java.util.Objects;
007
008/**
009 * A reference to an ancestor entity used to restrict query results to that entity and its recursive
010 * descendants.
011 */
012@JsonFilter("nullablePropertyFilter")
013public class QueryAncestorReferenceV2026R0 extends SerializableObject {
014
015  /** The unique identifier of the ancestor entity. */
016  protected final String id;
017
018  /** The type of the ancestor entity. Possible value: folder. */
019  protected final String type;
020
021  public QueryAncestorReferenceV2026R0(
022      @JsonProperty("id") String id, @JsonProperty("type") String type) {
023    super();
024    this.id = id;
025    this.type = type;
026  }
027
028  public String getId() {
029    return id;
030  }
031
032  public String getType() {
033    return type;
034  }
035
036  @Override
037  public boolean equals(Object o) {
038    if (this == o) {
039      return true;
040    }
041    if (o == null || getClass() != o.getClass()) {
042      return false;
043    }
044    QueryAncestorReferenceV2026R0 casted = (QueryAncestorReferenceV2026R0) o;
045    return Objects.equals(id, casted.id) && Objects.equals(type, casted.type);
046  }
047
048  @Override
049  public int hashCode() {
050    return Objects.hash(id, type);
051  }
052
053  @Override
054  public String toString() {
055    return "QueryAncestorReferenceV2026R0{"
056        + "id='"
057        + id
058        + '\''
059        + ", "
060        + "type='"
061        + type
062        + '\''
063        + "}";
064  }
065}