001package com.box.sdkgen.managers.metadatataxonomies;
002
003import java.util.List;
004
005public class GetMetadataTemplateFieldOptionsQueryParams {
006
007  /**
008   * Filters results by taxonomy level. Multiple values can be provided. Results include nodes that
009   * match any of the specified values.
010   */
011  public List<Long> level;
012
013  /**
014   * Node identifier of a direct parent node. Multiple values can be provided. Results include nodes
015   * that match any of the specified values.
016   */
017  public List<String> parent;
018
019  /**
020   * Node identifier of any ancestor node. Multiple values can be provided. Results include nodes
021   * that match any of the specified values.
022   */
023  public List<String> ancestor;
024
025  /** Query text to search for the taxonomy nodes. */
026  public String query;
027
028  /**
029   * When set to `true` this provides the total number of nodes that matched the query. The response
030   * will compute counts of up to 10,000 elements. Defaults to `false`.
031   */
032  public Boolean includeTotalResultCount;
033
034  /**
035   * When set to `true`, this only returns valid selectable options for this template taxonomy
036   * field. Otherwise, it returns all taxonomy nodes, whether or not they are selectable. Defaults
037   * to `true`.
038   */
039  public Boolean onlySelectableOptions;
040
041  /**
042   * Defines the position marker at which to begin returning results. This is used when paginating
043   * using marker-based pagination.
044   *
045   * <p>This requires `usemarker` to be set to `true`.
046   */
047  public String marker;
048
049  /** The maximum number of items to return per page. */
050  public Long limit;
051
052  public GetMetadataTemplateFieldOptionsQueryParams() {}
053
054  protected GetMetadataTemplateFieldOptionsQueryParams(Builder builder) {
055    this.level = builder.level;
056    this.parent = builder.parent;
057    this.ancestor = builder.ancestor;
058    this.query = builder.query;
059    this.includeTotalResultCount = builder.includeTotalResultCount;
060    this.onlySelectableOptions = builder.onlySelectableOptions;
061    this.marker = builder.marker;
062    this.limit = builder.limit;
063  }
064
065  public List<Long> getLevel() {
066    return level;
067  }
068
069  public List<String> getParent() {
070    return parent;
071  }
072
073  public List<String> getAncestor() {
074    return ancestor;
075  }
076
077  public String getQuery() {
078    return query;
079  }
080
081  public Boolean getIncludeTotalResultCount() {
082    return includeTotalResultCount;
083  }
084
085  public Boolean getOnlySelectableOptions() {
086    return onlySelectableOptions;
087  }
088
089  public String getMarker() {
090    return marker;
091  }
092
093  public Long getLimit() {
094    return limit;
095  }
096
097  public static class Builder {
098
099    protected List<Long> level;
100
101    protected List<String> parent;
102
103    protected List<String> ancestor;
104
105    protected String query;
106
107    protected Boolean includeTotalResultCount;
108
109    protected Boolean onlySelectableOptions;
110
111    protected String marker;
112
113    protected Long limit;
114
115    public Builder level(List<Long> level) {
116      this.level = level;
117      return this;
118    }
119
120    public Builder parent(List<String> parent) {
121      this.parent = parent;
122      return this;
123    }
124
125    public Builder ancestor(List<String> ancestor) {
126      this.ancestor = ancestor;
127      return this;
128    }
129
130    public Builder query(String query) {
131      this.query = query;
132      return this;
133    }
134
135    public Builder includeTotalResultCount(Boolean includeTotalResultCount) {
136      this.includeTotalResultCount = includeTotalResultCount;
137      return this;
138    }
139
140    public Builder onlySelectableOptions(Boolean onlySelectableOptions) {
141      this.onlySelectableOptions = onlySelectableOptions;
142      return this;
143    }
144
145    public Builder marker(String marker) {
146      this.marker = marker;
147      return this;
148    }
149
150    public Builder limit(Long limit) {
151      this.limit = limit;
152      return this;
153    }
154
155    public GetMetadataTemplateFieldOptionsQueryParams build() {
156      return new GetMetadataTemplateFieldOptionsQueryParams(this);
157    }
158  }
159}