• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

box / box-java-sdk-gen / #358

11 Jul 2025 04:43PM UTC coverage: 38.091% (+2.5%) from 35.58%
#358

Pull #361

github

web-flow
Merge 112b63b24 into 426763c84
Pull Request #361: feat: Support common fields in Union in Java (box/box-codegen#758)

288 of 1203 new or added lines in 106 files covered. (23.94%)

167 existing lines in 45 files now uncovered.

18543 of 48681 relevant lines covered (38.09%)

0.38 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

40.22
/src/main/java/com/box/sdkgen/managers/retentionpolicies/CreateRetentionPolicyRequestBody.java
1
package com.box.sdkgen.managers.retentionpolicies;
2

3
import com.box.sdkgen.internal.NullableFieldTracker;
4
import com.box.sdkgen.internal.SerializableObject;
5
import com.box.sdkgen.schemas.usermini.UserMini;
6
import com.box.sdkgen.serialization.json.EnumWrapper;
7
import com.fasterxml.jackson.annotation.JsonFilter;
8
import com.fasterxml.jackson.annotation.JsonProperty;
9
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
10
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
11
import java.util.List;
12
import java.util.Objects;
13

14
@JsonFilter("nullablePropertyFilter")
15
public class CreateRetentionPolicyRequestBody extends SerializableObject {
16

17
  @JsonProperty("policy_name")
18
  protected final String policyName;
19

20
  protected String description;
21

22
  @JsonDeserialize(
23
      using =
24
          CreateRetentionPolicyRequestBodyPolicyTypeField
25
              .CreateRetentionPolicyRequestBodyPolicyTypeFieldDeserializer.class)
26
  @JsonSerialize(
27
      using =
28
          CreateRetentionPolicyRequestBodyPolicyTypeField
29
              .CreateRetentionPolicyRequestBodyPolicyTypeFieldSerializer.class)
30
  @JsonProperty("policy_type")
31
  protected final EnumWrapper<CreateRetentionPolicyRequestBodyPolicyTypeField> policyType;
32

33
  @JsonDeserialize(
34
      using =
35
          CreateRetentionPolicyRequestBodyDispositionActionField
36
              .CreateRetentionPolicyRequestBodyDispositionActionFieldDeserializer.class)
37
  @JsonSerialize(
38
      using =
39
          CreateRetentionPolicyRequestBodyDispositionActionField
40
              .CreateRetentionPolicyRequestBodyDispositionActionFieldSerializer.class)
41
  @JsonProperty("disposition_action")
42
  protected final EnumWrapper<CreateRetentionPolicyRequestBodyDispositionActionField>
43
      dispositionAction;
44

45
  @JsonProperty("retention_length")
46
  protected String retentionLength;
47

48
  @JsonDeserialize(
49
      using =
50
          CreateRetentionPolicyRequestBodyRetentionTypeField
51
              .CreateRetentionPolicyRequestBodyRetentionTypeFieldDeserializer.class)
52
  @JsonSerialize(
53
      using =
54
          CreateRetentionPolicyRequestBodyRetentionTypeField
55
              .CreateRetentionPolicyRequestBodyRetentionTypeFieldSerializer.class)
56
  @JsonProperty("retention_type")
57
  protected EnumWrapper<CreateRetentionPolicyRequestBodyRetentionTypeField> retentionType;
58

59
  @JsonProperty("can_owner_extend_retention")
60
  protected Boolean canOwnerExtendRetention;
61

62
  @JsonProperty("are_owners_notified")
63
  protected Boolean areOwnersNotified;
64

65
  @JsonProperty("custom_notification_recipients")
66
  protected List<UserMini> customNotificationRecipients;
67

68
  public CreateRetentionPolicyRequestBody(
69
      String policyName,
70
      CreateRetentionPolicyRequestBodyPolicyTypeField policyType,
71
      CreateRetentionPolicyRequestBodyDispositionActionField dispositionAction) {
72
    super();
×
73
    this.policyName = policyName;
×
NEW
74
    this.policyType = new EnumWrapper<CreateRetentionPolicyRequestBodyPolicyTypeField>(policyType);
×
NEW
75
    this.dispositionAction =
×
76
        new EnumWrapper<CreateRetentionPolicyRequestBodyDispositionActionField>(dispositionAction);
UNCOV
77
  }
×
78

79
  public CreateRetentionPolicyRequestBody(
80
      String policyName,
81
      CreateRetentionPolicyRequestBodyPolicyTypeField policyType,
82
      EnumWrapper<CreateRetentionPolicyRequestBodyDispositionActionField> dispositionAction) {
83
    super();
×
84
    this.policyName = policyName;
×
85
    this.policyType = new EnumWrapper<CreateRetentionPolicyRequestBodyPolicyTypeField>(policyType);
×
NEW
86
    this.dispositionAction = dispositionAction;
×
NEW
87
  }
×
88

89
  public CreateRetentionPolicyRequestBody(
90
      String policyName,
91
      EnumWrapper<CreateRetentionPolicyRequestBodyPolicyTypeField> policyType,
92
      CreateRetentionPolicyRequestBodyDispositionActionField dispositionAction) {
NEW
93
    super();
×
NEW
94
    this.policyName = policyName;
×
NEW
95
    this.policyType = policyType;
×
UNCOV
96
    this.dispositionAction =
×
97
        new EnumWrapper<CreateRetentionPolicyRequestBodyDispositionActionField>(dispositionAction);
98
  }
×
99

100
  public CreateRetentionPolicyRequestBody(
101
      @JsonProperty("policy_name") String policyName,
102
      @JsonProperty("policy_type")
103
          EnumWrapper<CreateRetentionPolicyRequestBodyPolicyTypeField> policyType,
104
      @JsonProperty("disposition_action")
105
          EnumWrapper<CreateRetentionPolicyRequestBodyDispositionActionField> dispositionAction) {
NEW
106
    super();
×
NEW
107
    this.policyName = policyName;
×
NEW
108
    this.policyType = policyType;
×
NEW
109
    this.dispositionAction = dispositionAction;
×
NEW
110
  }
×
111

112
  protected CreateRetentionPolicyRequestBody(Builder builder) {
113
    super();
1✔
114
    this.policyName = builder.policyName;
1✔
115
    this.description = builder.description;
1✔
116
    this.policyType = builder.policyType;
1✔
117
    this.dispositionAction = builder.dispositionAction;
1✔
118
    this.retentionLength = builder.retentionLength;
1✔
119
    this.retentionType = builder.retentionType;
1✔
120
    this.canOwnerExtendRetention = builder.canOwnerExtendRetention;
1✔
121
    this.areOwnersNotified = builder.areOwnersNotified;
1✔
122
    this.customNotificationRecipients = builder.customNotificationRecipients;
1✔
123
    markNullableFieldsAsSet(builder.getExplicitlySetNullableFields());
1✔
124
  }
1✔
125

126
  public String getPolicyName() {
127
    return policyName;
1✔
128
  }
129

130
  public String getDescription() {
131
    return description;
1✔
132
  }
133

134
  public EnumWrapper<CreateRetentionPolicyRequestBodyPolicyTypeField> getPolicyType() {
135
    return policyType;
1✔
136
  }
137

138
  public EnumWrapper<CreateRetentionPolicyRequestBodyDispositionActionField>
139
      getDispositionAction() {
140
    return dispositionAction;
1✔
141
  }
142

143
  public String getRetentionLength() {
144
    return retentionLength;
1✔
145
  }
146

147
  public EnumWrapper<CreateRetentionPolicyRequestBodyRetentionTypeField> getRetentionType() {
148
    return retentionType;
1✔
149
  }
150

151
  public Boolean getCanOwnerExtendRetention() {
152
    return canOwnerExtendRetention;
1✔
153
  }
154

155
  public Boolean getAreOwnersNotified() {
156
    return areOwnersNotified;
1✔
157
  }
158

159
  public List<UserMini> getCustomNotificationRecipients() {
160
    return customNotificationRecipients;
1✔
161
  }
162

163
  @Override
164
  public boolean equals(Object o) {
165
    if (this == o) {
×
166
      return true;
×
167
    }
168
    if (o == null || getClass() != o.getClass()) {
×
169
      return false;
×
170
    }
171
    CreateRetentionPolicyRequestBody casted = (CreateRetentionPolicyRequestBody) o;
×
172
    return Objects.equals(policyName, casted.policyName)
×
173
        && Objects.equals(description, casted.description)
×
174
        && Objects.equals(policyType, casted.policyType)
×
175
        && Objects.equals(dispositionAction, casted.dispositionAction)
×
176
        && Objects.equals(retentionLength, casted.retentionLength)
×
177
        && Objects.equals(retentionType, casted.retentionType)
×
178
        && Objects.equals(canOwnerExtendRetention, casted.canOwnerExtendRetention)
×
179
        && Objects.equals(areOwnersNotified, casted.areOwnersNotified)
×
180
        && Objects.equals(customNotificationRecipients, casted.customNotificationRecipients);
×
181
  }
182

183
  @Override
184
  public int hashCode() {
185
    return Objects.hash(
×
186
        policyName,
187
        description,
188
        policyType,
189
        dispositionAction,
190
        retentionLength,
191
        retentionType,
192
        canOwnerExtendRetention,
193
        areOwnersNotified,
194
        customNotificationRecipients);
195
  }
196

197
  @Override
198
  public String toString() {
199
    return "CreateRetentionPolicyRequestBody{"
×
200
        + "policyName='"
201
        + policyName
202
        + '\''
203
        + ", "
204
        + "description='"
205
        + description
206
        + '\''
207
        + ", "
208
        + "policyType='"
209
        + policyType
210
        + '\''
211
        + ", "
212
        + "dispositionAction='"
213
        + dispositionAction
214
        + '\''
215
        + ", "
216
        + "retentionLength='"
217
        + retentionLength
218
        + '\''
219
        + ", "
220
        + "retentionType='"
221
        + retentionType
222
        + '\''
223
        + ", "
224
        + "canOwnerExtendRetention='"
225
        + canOwnerExtendRetention
226
        + '\''
227
        + ", "
228
        + "areOwnersNotified='"
229
        + areOwnersNotified
230
        + '\''
231
        + ", "
232
        + "customNotificationRecipients='"
233
        + customNotificationRecipients
234
        + '\''
235
        + "}";
236
  }
237

238
  public static class Builder extends NullableFieldTracker {
239

240
    protected final String policyName;
241

242
    protected String description;
243

244
    protected final EnumWrapper<CreateRetentionPolicyRequestBodyPolicyTypeField> policyType;
245

246
    protected final EnumWrapper<CreateRetentionPolicyRequestBodyDispositionActionField>
247
        dispositionAction;
248

249
    protected String retentionLength;
250

251
    protected EnumWrapper<CreateRetentionPolicyRequestBodyRetentionTypeField> retentionType;
252

253
    protected Boolean canOwnerExtendRetention;
254

255
    protected Boolean areOwnersNotified;
256

257
    protected List<UserMini> customNotificationRecipients;
258

259
    public Builder(
260
        String policyName,
261
        CreateRetentionPolicyRequestBodyPolicyTypeField policyType,
262
        CreateRetentionPolicyRequestBodyDispositionActionField dispositionAction) {
263
      super();
1✔
264
      this.policyName = policyName;
1✔
265
      this.policyType =
1✔
266
          new EnumWrapper<CreateRetentionPolicyRequestBodyPolicyTypeField>(policyType);
267
      this.dispositionAction =
1✔
268
          new EnumWrapper<CreateRetentionPolicyRequestBodyDispositionActionField>(
269
              dispositionAction);
270
    }
1✔
271

272
    public Builder(
273
        String policyName,
274
        CreateRetentionPolicyRequestBodyPolicyTypeField policyType,
275
        EnumWrapper<CreateRetentionPolicyRequestBodyDispositionActionField> dispositionAction) {
UNCOV
276
      super();
×
UNCOV
277
      this.policyName = policyName;
×
UNCOV
278
      this.policyType =
×
279
          new EnumWrapper<CreateRetentionPolicyRequestBodyPolicyTypeField>(policyType);
NEW
280
      this.dispositionAction = dispositionAction;
×
NEW
281
    }
×
282

283
    public Builder(
284
        String policyName,
285
        EnumWrapper<CreateRetentionPolicyRequestBodyPolicyTypeField> policyType,
286
        CreateRetentionPolicyRequestBodyDispositionActionField dispositionAction) {
NEW
287
      super();
×
NEW
288
      this.policyName = policyName;
×
NEW
289
      this.policyType = policyType;
×
UNCOV
290
      this.dispositionAction =
×
291
          new EnumWrapper<CreateRetentionPolicyRequestBodyDispositionActionField>(
292
              dispositionAction);
UNCOV
293
    }
×
294

295
    public Builder(
296
        String policyName,
297
        EnumWrapper<CreateRetentionPolicyRequestBodyPolicyTypeField> policyType,
298
        EnumWrapper<CreateRetentionPolicyRequestBodyDispositionActionField> dispositionAction) {
NEW
299
      super();
×
NEW
300
      this.policyName = policyName;
×
NEW
301
      this.policyType = policyType;
×
NEW
302
      this.dispositionAction = dispositionAction;
×
NEW
303
    }
×
304

305
    public Builder description(String description) {
306
      this.description = description;
1✔
307
      return this;
1✔
308
    }
309

310
    public Builder retentionLength(String retentionLength) {
311
      this.retentionLength = retentionLength;
1✔
312
      return this;
1✔
313
    }
314

315
    public Builder retentionType(CreateRetentionPolicyRequestBodyRetentionTypeField retentionType) {
316
      this.retentionType =
1✔
317
          new EnumWrapper<CreateRetentionPolicyRequestBodyRetentionTypeField>(retentionType);
318
      return this;
1✔
319
    }
320

321
    public Builder retentionType(
322
        EnumWrapper<CreateRetentionPolicyRequestBodyRetentionTypeField> retentionType) {
323
      this.retentionType = retentionType;
×
324
      return this;
×
325
    }
326

327
    public Builder canOwnerExtendRetention(Boolean canOwnerExtendRetention) {
328
      this.canOwnerExtendRetention = canOwnerExtendRetention;
1✔
329
      return this;
1✔
330
    }
331

332
    public Builder areOwnersNotified(Boolean areOwnersNotified) {
333
      this.areOwnersNotified = areOwnersNotified;
1✔
334
      return this;
1✔
335
    }
336

337
    public Builder customNotificationRecipients(List<UserMini> customNotificationRecipients) {
338
      this.customNotificationRecipients = customNotificationRecipients;
×
339
      return this;
×
340
    }
341

342
    public CreateRetentionPolicyRequestBody build() {
343
      return new CreateRetentionPolicyRequestBody(this);
1✔
344
    }
345
  }
346
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc