001package com.box.sdkgen.managers.fileversionretentions;
002
003import com.box.sdkgen.serialization.json.EnumWrapper;
004
005public class GetFileVersionRetentionsQueryParams {
006
007  /** Filters results by files with this ID. */
008  public String fileId;
009
010  /** Filters results by file versions with this ID. */
011  public String fileVersionId;
012
013  /** Filters results by the retention policy with this ID. */
014  public String policyId;
015
016  /** Filters results by the retention policy with this disposition action. */
017  public EnumWrapper<GetFileVersionRetentionsQueryParamsDispositionActionField> dispositionAction;
018
019  /**
020   * Filters results by files that will have their disposition come into effect before this date.
021   */
022  public String dispositionBefore;
023
024  /** Filters results by files that will have their disposition come into effect after this date. */
025  public String dispositionAfter;
026
027  /** The maximum number of items to return per page. */
028  public Long limit;
029
030  /**
031   * Defines the position marker at which to begin returning results. This is used when paginating
032   * using marker-based pagination.
033   *
034   * <p>This requires `usemarker` to be set to `true`.
035   */
036  public String marker;
037
038  public GetFileVersionRetentionsQueryParams() {}
039
040  protected GetFileVersionRetentionsQueryParams(Builder builder) {
041    this.fileId = builder.fileId;
042    this.fileVersionId = builder.fileVersionId;
043    this.policyId = builder.policyId;
044    this.dispositionAction = builder.dispositionAction;
045    this.dispositionBefore = builder.dispositionBefore;
046    this.dispositionAfter = builder.dispositionAfter;
047    this.limit = builder.limit;
048    this.marker = builder.marker;
049  }
050
051  public String getFileId() {
052    return fileId;
053  }
054
055  public String getFileVersionId() {
056    return fileVersionId;
057  }
058
059  public String getPolicyId() {
060    return policyId;
061  }
062
063  public EnumWrapper<GetFileVersionRetentionsQueryParamsDispositionActionField>
064      getDispositionAction() {
065    return dispositionAction;
066  }
067
068  public String getDispositionBefore() {
069    return dispositionBefore;
070  }
071
072  public String getDispositionAfter() {
073    return dispositionAfter;
074  }
075
076  public Long getLimit() {
077    return limit;
078  }
079
080  public String getMarker() {
081    return marker;
082  }
083
084  public static class Builder {
085
086    protected String fileId;
087
088    protected String fileVersionId;
089
090    protected String policyId;
091
092    protected EnumWrapper<GetFileVersionRetentionsQueryParamsDispositionActionField>
093        dispositionAction;
094
095    protected String dispositionBefore;
096
097    protected String dispositionAfter;
098
099    protected Long limit;
100
101    protected String marker;
102
103    public Builder fileId(String fileId) {
104      this.fileId = fileId;
105      return this;
106    }
107
108    public Builder fileVersionId(String fileVersionId) {
109      this.fileVersionId = fileVersionId;
110      return this;
111    }
112
113    public Builder policyId(String policyId) {
114      this.policyId = policyId;
115      return this;
116    }
117
118    public Builder dispositionAction(
119        GetFileVersionRetentionsQueryParamsDispositionActionField dispositionAction) {
120      this.dispositionAction =
121          new EnumWrapper<GetFileVersionRetentionsQueryParamsDispositionActionField>(
122              dispositionAction);
123      return this;
124    }
125
126    public Builder dispositionAction(
127        EnumWrapper<GetFileVersionRetentionsQueryParamsDispositionActionField> dispositionAction) {
128      this.dispositionAction = dispositionAction;
129      return this;
130    }
131
132    public Builder dispositionBefore(String dispositionBefore) {
133      this.dispositionBefore = dispositionBefore;
134      return this;
135    }
136
137    public Builder dispositionAfter(String dispositionAfter) {
138      this.dispositionAfter = dispositionAfter;
139      return this;
140    }
141
142    public Builder limit(Long limit) {
143      this.limit = limit;
144      return this;
145    }
146
147    public Builder marker(String marker) {
148      this.marker = marker;
149      return this;
150    }
151
152    public GetFileVersionRetentionsQueryParams build() {
153      return new GetFileVersionRetentionsQueryParams(this);
154    }
155  }
156}