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

box / box-java-sdk / #5076

07 Oct 2025 12:35PM UTC coverage: 37.132% (+0.007%) from 37.125%
#5076

push

github

web-flow
test: Change `Event.additionalDetails` field assertion in events test (box/box-codegen#858) (#1491)

18454 of 49699 relevant lines covered (37.13%)

0.37 hits per line

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

86.43
/src/main/java/com/box/sdkgen/managers/memberships/MembershipsManager.java
1
package com.box.sdkgen.managers.memberships;
2

3
import static com.box.sdkgen.internal.utils.UtilsManager.convertToString;
4
import static com.box.sdkgen.internal.utils.UtilsManager.entryOf;
5
import static com.box.sdkgen.internal.utils.UtilsManager.mapOf;
6
import static com.box.sdkgen.internal.utils.UtilsManager.mergeMaps;
7
import static com.box.sdkgen.internal.utils.UtilsManager.prepareParams;
8

9
import com.box.sdkgen.networking.auth.Authentication;
10
import com.box.sdkgen.networking.fetchoptions.FetchOptions;
11
import com.box.sdkgen.networking.fetchoptions.ResponseFormat;
12
import com.box.sdkgen.networking.fetchresponse.FetchResponse;
13
import com.box.sdkgen.networking.network.NetworkSession;
14
import com.box.sdkgen.schemas.groupmembership.GroupMembership;
15
import com.box.sdkgen.schemas.groupmemberships.GroupMemberships;
16
import com.box.sdkgen.serialization.json.JsonManager;
17
import java.util.Map;
18

19
public class MembershipsManager {
20

21
  public Authentication auth;
22

23
  public NetworkSession networkSession;
24

25
  public MembershipsManager() {
×
26
    this.networkSession = new NetworkSession();
×
27
  }
×
28

29
  protected MembershipsManager(Builder builder) {
1✔
30
    this.auth = builder.auth;
1✔
31
    this.networkSession = builder.networkSession;
1✔
32
  }
1✔
33

34
  /**
35
   * Retrieves all the groups for a user. Only members of this group or users with admin-level
36
   * permissions will be able to use this API.
37
   *
38
   * @param userId The ID of the user. Example: "12345"
39
   */
40
  public GroupMemberships getUserMemberships(String userId) {
41
    return getUserMemberships(
1✔
42
        userId, new GetUserMembershipsQueryParams(), new GetUserMembershipsHeaders());
43
  }
44

45
  /**
46
   * Retrieves all the groups for a user. Only members of this group or users with admin-level
47
   * permissions will be able to use this API.
48
   *
49
   * @param userId The ID of the user. Example: "12345"
50
   * @param queryParams Query parameters of getUserMemberships method
51
   */
52
  public GroupMemberships getUserMemberships(
53
      String userId, GetUserMembershipsQueryParams queryParams) {
54
    return getUserMemberships(userId, queryParams, new GetUserMembershipsHeaders());
×
55
  }
56

57
  /**
58
   * Retrieves all the groups for a user. Only members of this group or users with admin-level
59
   * permissions will be able to use this API.
60
   *
61
   * @param userId The ID of the user. Example: "12345"
62
   * @param headers Headers of getUserMemberships method
63
   */
64
  public GroupMemberships getUserMemberships(String userId, GetUserMembershipsHeaders headers) {
65
    return getUserMemberships(userId, new GetUserMembershipsQueryParams(), headers);
×
66
  }
67

68
  /**
69
   * Retrieves all the groups for a user. Only members of this group or users with admin-level
70
   * permissions will be able to use this API.
71
   *
72
   * @param userId The ID of the user. Example: "12345"
73
   * @param queryParams Query parameters of getUserMemberships method
74
   * @param headers Headers of getUserMemberships method
75
   */
76
  public GroupMemberships getUserMemberships(
77
      String userId, GetUserMembershipsQueryParams queryParams, GetUserMembershipsHeaders headers) {
78
    Map<String, String> queryParamsMap =
1✔
79
        prepareParams(
1✔
80
            mapOf(
1✔
81
                entryOf("limit", convertToString(queryParams.getLimit())),
1✔
82
                entryOf("offset", convertToString(queryParams.getOffset()))));
1✔
83
    Map<String, String> headersMap = prepareParams(mergeMaps(mapOf(), headers.getExtraHeaders()));
1✔
84
    FetchResponse response =
1✔
85
        this.networkSession
86
            .getNetworkClient()
1✔
87
            .fetch(
1✔
88
                new FetchOptions.Builder(
89
                        String.join(
1✔
90
                            "",
91
                            this.networkSession.getBaseUrls().getBaseUrl(),
1✔
92
                            "/2.0/users/",
93
                            convertToString(userId),
1✔
94
                            "/memberships"),
95
                        "GET")
96
                    .params(queryParamsMap)
1✔
97
                    .headers(headersMap)
1✔
98
                    .responseFormat(ResponseFormat.JSON)
1✔
99
                    .auth(this.auth)
1✔
100
                    .networkSession(this.networkSession)
1✔
101
                    .build());
1✔
102
    return JsonManager.deserialize(response.getData(), GroupMemberships.class);
1✔
103
  }
104

105
  /**
106
   * Retrieves all the members for a group. Only members of this group or users with admin-level
107
   * permissions will be able to use this API.
108
   *
109
   * @param groupId The ID of the group. Example: "57645"
110
   */
111
  public GroupMemberships getGroupMemberships(String groupId) {
112
    return getGroupMemberships(
1✔
113
        groupId, new GetGroupMembershipsQueryParams(), new GetGroupMembershipsHeaders());
114
  }
115

116
  /**
117
   * Retrieves all the members for a group. Only members of this group or users with admin-level
118
   * permissions will be able to use this API.
119
   *
120
   * @param groupId The ID of the group. Example: "57645"
121
   * @param queryParams Query parameters of getGroupMemberships method
122
   */
123
  public GroupMemberships getGroupMemberships(
124
      String groupId, GetGroupMembershipsQueryParams queryParams) {
125
    return getGroupMemberships(groupId, queryParams, new GetGroupMembershipsHeaders());
×
126
  }
127

128
  /**
129
   * Retrieves all the members for a group. Only members of this group or users with admin-level
130
   * permissions will be able to use this API.
131
   *
132
   * @param groupId The ID of the group. Example: "57645"
133
   * @param headers Headers of getGroupMemberships method
134
   */
135
  public GroupMemberships getGroupMemberships(String groupId, GetGroupMembershipsHeaders headers) {
136
    return getGroupMemberships(groupId, new GetGroupMembershipsQueryParams(), headers);
×
137
  }
138

139
  /**
140
   * Retrieves all the members for a group. Only members of this group or users with admin-level
141
   * permissions will be able to use this API.
142
   *
143
   * @param groupId The ID of the group. Example: "57645"
144
   * @param queryParams Query parameters of getGroupMemberships method
145
   * @param headers Headers of getGroupMemberships method
146
   */
147
  public GroupMemberships getGroupMemberships(
148
      String groupId,
149
      GetGroupMembershipsQueryParams queryParams,
150
      GetGroupMembershipsHeaders headers) {
151
    Map<String, String> queryParamsMap =
1✔
152
        prepareParams(
1✔
153
            mapOf(
1✔
154
                entryOf("limit", convertToString(queryParams.getLimit())),
1✔
155
                entryOf("offset", convertToString(queryParams.getOffset()))));
1✔
156
    Map<String, String> headersMap = prepareParams(mergeMaps(mapOf(), headers.getExtraHeaders()));
1✔
157
    FetchResponse response =
1✔
158
        this.networkSession
159
            .getNetworkClient()
1✔
160
            .fetch(
1✔
161
                new FetchOptions.Builder(
162
                        String.join(
1✔
163
                            "",
164
                            this.networkSession.getBaseUrls().getBaseUrl(),
1✔
165
                            "/2.0/groups/",
166
                            convertToString(groupId),
1✔
167
                            "/memberships"),
168
                        "GET")
169
                    .params(queryParamsMap)
1✔
170
                    .headers(headersMap)
1✔
171
                    .responseFormat(ResponseFormat.JSON)
1✔
172
                    .auth(this.auth)
1✔
173
                    .networkSession(this.networkSession)
1✔
174
                    .build());
1✔
175
    return JsonManager.deserialize(response.getData(), GroupMemberships.class);
1✔
176
  }
177

178
  /**
179
   * Creates a group membership. Only users with admin-level permissions will be able to use this
180
   * API.
181
   *
182
   * @param requestBody Request body of createGroupMembership method
183
   */
184
  public GroupMembership createGroupMembership(CreateGroupMembershipRequestBody requestBody) {
185
    return createGroupMembership(
1✔
186
        requestBody, new CreateGroupMembershipQueryParams(), new CreateGroupMembershipHeaders());
187
  }
188

189
  /**
190
   * Creates a group membership. Only users with admin-level permissions will be able to use this
191
   * API.
192
   *
193
   * @param requestBody Request body of createGroupMembership method
194
   * @param queryParams Query parameters of createGroupMembership method
195
   */
196
  public GroupMembership createGroupMembership(
197
      CreateGroupMembershipRequestBody requestBody, CreateGroupMembershipQueryParams queryParams) {
198
    return createGroupMembership(requestBody, queryParams, new CreateGroupMembershipHeaders());
×
199
  }
200

201
  /**
202
   * Creates a group membership. Only users with admin-level permissions will be able to use this
203
   * API.
204
   *
205
   * @param requestBody Request body of createGroupMembership method
206
   * @param headers Headers of createGroupMembership method
207
   */
208
  public GroupMembership createGroupMembership(
209
      CreateGroupMembershipRequestBody requestBody, CreateGroupMembershipHeaders headers) {
210
    return createGroupMembership(requestBody, new CreateGroupMembershipQueryParams(), headers);
×
211
  }
212

213
  /**
214
   * Creates a group membership. Only users with admin-level permissions will be able to use this
215
   * API.
216
   *
217
   * @param requestBody Request body of createGroupMembership method
218
   * @param queryParams Query parameters of createGroupMembership method
219
   * @param headers Headers of createGroupMembership method
220
   */
221
  public GroupMembership createGroupMembership(
222
      CreateGroupMembershipRequestBody requestBody,
223
      CreateGroupMembershipQueryParams queryParams,
224
      CreateGroupMembershipHeaders headers) {
225
    Map<String, String> queryParamsMap =
1✔
226
        prepareParams(mapOf(entryOf("fields", convertToString(queryParams.getFields()))));
1✔
227
    Map<String, String> headersMap = prepareParams(mergeMaps(mapOf(), headers.getExtraHeaders()));
1✔
228
    FetchResponse response =
1✔
229
        this.networkSession
230
            .getNetworkClient()
1✔
231
            .fetch(
1✔
232
                new FetchOptions.Builder(
233
                        String.join(
1✔
234
                            "",
235
                            this.networkSession.getBaseUrls().getBaseUrl(),
1✔
236
                            "/2.0/group_memberships"),
237
                        "POST")
238
                    .params(queryParamsMap)
1✔
239
                    .headers(headersMap)
1✔
240
                    .data(JsonManager.serialize(requestBody))
1✔
241
                    .contentType("application/json")
1✔
242
                    .responseFormat(ResponseFormat.JSON)
1✔
243
                    .auth(this.auth)
1✔
244
                    .networkSession(this.networkSession)
1✔
245
                    .build());
1✔
246
    return JsonManager.deserialize(response.getData(), GroupMembership.class);
1✔
247
  }
248

249
  /**
250
   * Retrieves a specific group membership. Only admins of this group or users with admin-level
251
   * permissions will be able to use this API.
252
   *
253
   * @param groupMembershipId The ID of the group membership. Example: "434534"
254
   */
255
  public GroupMembership getGroupMembershipById(String groupMembershipId) {
256
    return getGroupMembershipById(
1✔
257
        groupMembershipId,
258
        new GetGroupMembershipByIdQueryParams(),
259
        new GetGroupMembershipByIdHeaders());
260
  }
261

262
  /**
263
   * Retrieves a specific group membership. Only admins of this group or users with admin-level
264
   * permissions will be able to use this API.
265
   *
266
   * @param groupMembershipId The ID of the group membership. Example: "434534"
267
   * @param queryParams Query parameters of getGroupMembershipById method
268
   */
269
  public GroupMembership getGroupMembershipById(
270
      String groupMembershipId, GetGroupMembershipByIdQueryParams queryParams) {
271
    return getGroupMembershipById(
×
272
        groupMembershipId, queryParams, new GetGroupMembershipByIdHeaders());
273
  }
274

275
  /**
276
   * Retrieves a specific group membership. Only admins of this group or users with admin-level
277
   * permissions will be able to use this API.
278
   *
279
   * @param groupMembershipId The ID of the group membership. Example: "434534"
280
   * @param headers Headers of getGroupMembershipById method
281
   */
282
  public GroupMembership getGroupMembershipById(
283
      String groupMembershipId, GetGroupMembershipByIdHeaders headers) {
284
    return getGroupMembershipById(
×
285
        groupMembershipId, new GetGroupMembershipByIdQueryParams(), headers);
286
  }
287

288
  /**
289
   * Retrieves a specific group membership. Only admins of this group or users with admin-level
290
   * permissions will be able to use this API.
291
   *
292
   * @param groupMembershipId The ID of the group membership. Example: "434534"
293
   * @param queryParams Query parameters of getGroupMembershipById method
294
   * @param headers Headers of getGroupMembershipById method
295
   */
296
  public GroupMembership getGroupMembershipById(
297
      String groupMembershipId,
298
      GetGroupMembershipByIdQueryParams queryParams,
299
      GetGroupMembershipByIdHeaders headers) {
300
    Map<String, String> queryParamsMap =
1✔
301
        prepareParams(mapOf(entryOf("fields", convertToString(queryParams.getFields()))));
1✔
302
    Map<String, String> headersMap = prepareParams(mergeMaps(mapOf(), headers.getExtraHeaders()));
1✔
303
    FetchResponse response =
1✔
304
        this.networkSession
305
            .getNetworkClient()
1✔
306
            .fetch(
1✔
307
                new FetchOptions.Builder(
308
                        String.join(
1✔
309
                            "",
310
                            this.networkSession.getBaseUrls().getBaseUrl(),
1✔
311
                            "/2.0/group_memberships/",
312
                            convertToString(groupMembershipId)),
1✔
313
                        "GET")
314
                    .params(queryParamsMap)
1✔
315
                    .headers(headersMap)
1✔
316
                    .responseFormat(ResponseFormat.JSON)
1✔
317
                    .auth(this.auth)
1✔
318
                    .networkSession(this.networkSession)
1✔
319
                    .build());
1✔
320
    return JsonManager.deserialize(response.getData(), GroupMembership.class);
1✔
321
  }
322

323
  /**
324
   * Updates a user's group membership. Only admins of this group or users with admin-level
325
   * permissions will be able to use this API.
326
   *
327
   * @param groupMembershipId The ID of the group membership. Example: "434534"
328
   */
329
  public GroupMembership updateGroupMembershipById(String groupMembershipId) {
330
    return updateGroupMembershipById(
×
331
        groupMembershipId,
332
        new UpdateGroupMembershipByIdRequestBody(),
333
        new UpdateGroupMembershipByIdQueryParams(),
334
        new UpdateGroupMembershipByIdHeaders());
335
  }
336

337
  /**
338
   * Updates a user's group membership. Only admins of this group or users with admin-level
339
   * permissions will be able to use this API.
340
   *
341
   * @param groupMembershipId The ID of the group membership. Example: "434534"
342
   * @param requestBody Request body of updateGroupMembershipById method
343
   */
344
  public GroupMembership updateGroupMembershipById(
345
      String groupMembershipId, UpdateGroupMembershipByIdRequestBody requestBody) {
346
    return updateGroupMembershipById(
1✔
347
        groupMembershipId,
348
        requestBody,
349
        new UpdateGroupMembershipByIdQueryParams(),
350
        new UpdateGroupMembershipByIdHeaders());
351
  }
352

353
  /**
354
   * Updates a user's group membership. Only admins of this group or users with admin-level
355
   * permissions will be able to use this API.
356
   *
357
   * @param groupMembershipId The ID of the group membership. Example: "434534"
358
   * @param queryParams Query parameters of updateGroupMembershipById method
359
   */
360
  public GroupMembership updateGroupMembershipById(
361
      String groupMembershipId, UpdateGroupMembershipByIdQueryParams queryParams) {
362
    return updateGroupMembershipById(
×
363
        groupMembershipId,
364
        new UpdateGroupMembershipByIdRequestBody(),
365
        queryParams,
366
        new UpdateGroupMembershipByIdHeaders());
367
  }
368

369
  /**
370
   * Updates a user's group membership. Only admins of this group or users with admin-level
371
   * permissions will be able to use this API.
372
   *
373
   * @param groupMembershipId The ID of the group membership. Example: "434534"
374
   * @param requestBody Request body of updateGroupMembershipById method
375
   * @param queryParams Query parameters of updateGroupMembershipById method
376
   */
377
  public GroupMembership updateGroupMembershipById(
378
      String groupMembershipId,
379
      UpdateGroupMembershipByIdRequestBody requestBody,
380
      UpdateGroupMembershipByIdQueryParams queryParams) {
381
    return updateGroupMembershipById(
×
382
        groupMembershipId, requestBody, queryParams, new UpdateGroupMembershipByIdHeaders());
383
  }
384

385
  /**
386
   * Updates a user's group membership. Only admins of this group or users with admin-level
387
   * permissions will be able to use this API.
388
   *
389
   * @param groupMembershipId The ID of the group membership. Example: "434534"
390
   * @param headers Headers of updateGroupMembershipById method
391
   */
392
  public GroupMembership updateGroupMembershipById(
393
      String groupMembershipId, UpdateGroupMembershipByIdHeaders headers) {
394
    return updateGroupMembershipById(
×
395
        groupMembershipId,
396
        new UpdateGroupMembershipByIdRequestBody(),
397
        new UpdateGroupMembershipByIdQueryParams(),
398
        headers);
399
  }
400

401
  /**
402
   * Updates a user's group membership. Only admins of this group or users with admin-level
403
   * permissions will be able to use this API.
404
   *
405
   * @param groupMembershipId The ID of the group membership. Example: "434534"
406
   * @param requestBody Request body of updateGroupMembershipById method
407
   * @param headers Headers of updateGroupMembershipById method
408
   */
409
  public GroupMembership updateGroupMembershipById(
410
      String groupMembershipId,
411
      UpdateGroupMembershipByIdRequestBody requestBody,
412
      UpdateGroupMembershipByIdHeaders headers) {
413
    return updateGroupMembershipById(
×
414
        groupMembershipId, requestBody, new UpdateGroupMembershipByIdQueryParams(), headers);
415
  }
416

417
  /**
418
   * Updates a user's group membership. Only admins of this group or users with admin-level
419
   * permissions will be able to use this API.
420
   *
421
   * @param groupMembershipId The ID of the group membership. Example: "434534"
422
   * @param queryParams Query parameters of updateGroupMembershipById method
423
   * @param headers Headers of updateGroupMembershipById method
424
   */
425
  public GroupMembership updateGroupMembershipById(
426
      String groupMembershipId,
427
      UpdateGroupMembershipByIdQueryParams queryParams,
428
      UpdateGroupMembershipByIdHeaders headers) {
429
    return updateGroupMembershipById(
×
430
        groupMembershipId, new UpdateGroupMembershipByIdRequestBody(), queryParams, headers);
431
  }
432

433
  /**
434
   * Updates a user's group membership. Only admins of this group or users with admin-level
435
   * permissions will be able to use this API.
436
   *
437
   * @param groupMembershipId The ID of the group membership. Example: "434534"
438
   * @param requestBody Request body of updateGroupMembershipById method
439
   * @param queryParams Query parameters of updateGroupMembershipById method
440
   * @param headers Headers of updateGroupMembershipById method
441
   */
442
  public GroupMembership updateGroupMembershipById(
443
      String groupMembershipId,
444
      UpdateGroupMembershipByIdRequestBody requestBody,
445
      UpdateGroupMembershipByIdQueryParams queryParams,
446
      UpdateGroupMembershipByIdHeaders headers) {
447
    Map<String, String> queryParamsMap =
1✔
448
        prepareParams(mapOf(entryOf("fields", convertToString(queryParams.getFields()))));
1✔
449
    Map<String, String> headersMap = prepareParams(mergeMaps(mapOf(), headers.getExtraHeaders()));
1✔
450
    FetchResponse response =
1✔
451
        this.networkSession
452
            .getNetworkClient()
1✔
453
            .fetch(
1✔
454
                new FetchOptions.Builder(
455
                        String.join(
1✔
456
                            "",
457
                            this.networkSession.getBaseUrls().getBaseUrl(),
1✔
458
                            "/2.0/group_memberships/",
459
                            convertToString(groupMembershipId)),
1✔
460
                        "PUT")
461
                    .params(queryParamsMap)
1✔
462
                    .headers(headersMap)
1✔
463
                    .data(JsonManager.serialize(requestBody))
1✔
464
                    .contentType("application/json")
1✔
465
                    .responseFormat(ResponseFormat.JSON)
1✔
466
                    .auth(this.auth)
1✔
467
                    .networkSession(this.networkSession)
1✔
468
                    .build());
1✔
469
    return JsonManager.deserialize(response.getData(), GroupMembership.class);
1✔
470
  }
471

472
  /**
473
   * Deletes a specific group membership. Only admins of this group or users with admin-level
474
   * permissions will be able to use this API.
475
   *
476
   * @param groupMembershipId The ID of the group membership. Example: "434534"
477
   */
478
  public void deleteGroupMembershipById(String groupMembershipId) {
479
    deleteGroupMembershipById(groupMembershipId, new DeleteGroupMembershipByIdHeaders());
1✔
480
  }
1✔
481

482
  /**
483
   * Deletes a specific group membership. Only admins of this group or users with admin-level
484
   * permissions will be able to use this API.
485
   *
486
   * @param groupMembershipId The ID of the group membership. Example: "434534"
487
   * @param headers Headers of deleteGroupMembershipById method
488
   */
489
  public void deleteGroupMembershipById(
490
      String groupMembershipId, DeleteGroupMembershipByIdHeaders headers) {
491
    Map<String, String> headersMap = prepareParams(mergeMaps(mapOf(), headers.getExtraHeaders()));
1✔
492
    FetchResponse response =
1✔
493
        this.networkSession
494
            .getNetworkClient()
1✔
495
            .fetch(
1✔
496
                new FetchOptions.Builder(
497
                        String.join(
1✔
498
                            "",
499
                            this.networkSession.getBaseUrls().getBaseUrl(),
1✔
500
                            "/2.0/group_memberships/",
501
                            convertToString(groupMembershipId)),
1✔
502
                        "DELETE")
503
                    .headers(headersMap)
1✔
504
                    .responseFormat(ResponseFormat.NO_CONTENT)
1✔
505
                    .auth(this.auth)
1✔
506
                    .networkSession(this.networkSession)
1✔
507
                    .build());
1✔
508
  }
1✔
509

510
  public Authentication getAuth() {
511
    return auth;
×
512
  }
513

514
  public NetworkSession getNetworkSession() {
515
    return networkSession;
×
516
  }
517

518
  public static class Builder {
519

520
    protected Authentication auth;
521

522
    protected NetworkSession networkSession;
523

524
    public Builder() {
1✔
525
      this.networkSession = new NetworkSession();
1✔
526
    }
1✔
527

528
    public Builder auth(Authentication auth) {
529
      this.auth = auth;
1✔
530
      return this;
1✔
531
    }
532

533
    public Builder networkSession(NetworkSession networkSession) {
534
      this.networkSession = networkSession;
1✔
535
      return this;
1✔
536
    }
537

538
    public MembershipsManager build() {
539
      return new MembershipsManager(this);
1✔
540
    }
541
  }
542
}
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