001package com.box.sdkgen.managers.listcollaborations;
002
003import com.box.sdkgen.serialization.json.EnumWrapper;
004import java.util.List;
005
006public class GetCollaborationsQueryParams {
007
008  /** The status of the collaborations to retrieve. */
009  public final EnumWrapper<GetCollaborationsQueryParamsStatusField> status;
010
011  /**
012   * A comma-separated list of attributes to include in the response. This can be used to request
013   * fields that are not normally returned in a standard response.
014   *
015   * <p>Be aware that specifying this parameter will have the effect that none of the standard
016   * fields are returned in the response unless explicitly specified, instead only fields for the
017   * mini representation are returned, additional to the fields requested.
018   */
019  public List<String> fields;
020
021  /**
022   * The offset of the item at which to begin the response.
023   *
024   * <p>Queries with offset parameter value exceeding 10000 will be rejected with a 400 response.
025   */
026  public Long offset;
027
028  /** The maximum number of items to return per page. */
029  public Long limit;
030
031  public GetCollaborationsQueryParams(GetCollaborationsQueryParamsStatusField status) {
032    this.status = new EnumWrapper<GetCollaborationsQueryParamsStatusField>(status);
033  }
034
035  public GetCollaborationsQueryParams(EnumWrapper<GetCollaborationsQueryParamsStatusField> status) {
036    this.status = status;
037  }
038
039  protected GetCollaborationsQueryParams(Builder builder) {
040    this.status = builder.status;
041    this.fields = builder.fields;
042    this.offset = builder.offset;
043    this.limit = builder.limit;
044  }
045
046  public EnumWrapper<GetCollaborationsQueryParamsStatusField> getStatus() {
047    return status;
048  }
049
050  public List<String> getFields() {
051    return fields;
052  }
053
054  public Long getOffset() {
055    return offset;
056  }
057
058  public Long getLimit() {
059    return limit;
060  }
061
062  public static class Builder {
063
064    protected final EnumWrapper<GetCollaborationsQueryParamsStatusField> status;
065
066    protected List<String> fields;
067
068    protected Long offset;
069
070    protected Long limit;
071
072    public Builder(GetCollaborationsQueryParamsStatusField status) {
073      this.status = new EnumWrapper<GetCollaborationsQueryParamsStatusField>(status);
074    }
075
076    public Builder(EnumWrapper<GetCollaborationsQueryParamsStatusField> status) {
077      this.status = status;
078    }
079
080    public Builder fields(List<String> fields) {
081      this.fields = fields;
082      return this;
083    }
084
085    public Builder offset(Long offset) {
086      this.offset = offset;
087      return this;
088    }
089
090    public Builder limit(Long limit) {
091      this.limit = limit;
092      return this;
093    }
094
095    public GetCollaborationsQueryParams build() {
096      return new GetCollaborationsQueryParams(this);
097    }
098  }
099}