001package com.box.sdkgen.managers.hubs;
002
003import com.box.sdkgen.serialization.json.EnumWrapper;
004
005public class GetHubsV2025R0QueryParams {
006
007  /** The query string to search for Box Hubs. */
008  public String query;
009
010  /**
011   * The scope of the Box Hubs to retrieve. Possible values include `editable`, `view_only`, and
012   * `all`. Default is `all`.
013   */
014  public String scope;
015
016  /**
017   * The field to sort results by. Possible values include `name`, `updated_at`, `last_accessed_at`,
018   * `view_count`, and `relevance`. Default is `relevance`.
019   */
020  public String sort;
021
022  /**
023   * The direction to sort results in. This can be either in alphabetical ascending (`ASC`) or
024   * descending (`DESC`) order.
025   */
026  public EnumWrapper<GetHubsV2025R0QueryParamsDirectionField> direction;
027
028  /**
029   * Defines the position marker at which to begin returning results. This is used when paginating
030   * using marker-based pagination.
031   */
032  public String marker;
033
034  /** The maximum number of items to return per page. */
035  public Long limit;
036
037  public GetHubsV2025R0QueryParams() {}
038
039  protected GetHubsV2025R0QueryParams(Builder builder) {
040    this.query = builder.query;
041    this.scope = builder.scope;
042    this.sort = builder.sort;
043    this.direction = builder.direction;
044    this.marker = builder.marker;
045    this.limit = builder.limit;
046  }
047
048  public String getQuery() {
049    return query;
050  }
051
052  public String getScope() {
053    return scope;
054  }
055
056  public String getSort() {
057    return sort;
058  }
059
060  public EnumWrapper<GetHubsV2025R0QueryParamsDirectionField> getDirection() {
061    return direction;
062  }
063
064  public String getMarker() {
065    return marker;
066  }
067
068  public Long getLimit() {
069    return limit;
070  }
071
072  public static class Builder {
073
074    protected String query;
075
076    protected String scope;
077
078    protected String sort;
079
080    protected EnumWrapper<GetHubsV2025R0QueryParamsDirectionField> direction;
081
082    protected String marker;
083
084    protected Long limit;
085
086    public Builder query(String query) {
087      this.query = query;
088      return this;
089    }
090
091    public Builder scope(String scope) {
092      this.scope = scope;
093      return this;
094    }
095
096    public Builder sort(String sort) {
097      this.sort = sort;
098      return this;
099    }
100
101    public Builder direction(GetHubsV2025R0QueryParamsDirectionField direction) {
102      this.direction = new EnumWrapper<GetHubsV2025R0QueryParamsDirectionField>(direction);
103      return this;
104    }
105
106    public Builder direction(EnumWrapper<GetHubsV2025R0QueryParamsDirectionField> direction) {
107      this.direction = direction;
108      return this;
109    }
110
111    public Builder marker(String marker) {
112      this.marker = marker;
113      return this;
114    }
115
116    public Builder limit(Long limit) {
117      this.limit = limit;
118      return this;
119    }
120
121    public GetHubsV2025R0QueryParams build() {
122      return new GetHubsV2025R0QueryParams(this);
123    }
124  }
125}