Skip to content

Commit 6896386

Browse files
fix: Make role parameter of update collaboration optional (box/box-openapi#557) (#1479)
1 parent 120066e commit 6896386

File tree

5 files changed

+47
-25
lines changed

5 files changed

+47
-25
lines changed

.codegen.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{ "engineHash": "9334953", "specHash": "62fdfd1", "version": "10.0.0" }
1+
{ "engineHash": "9334953", "specHash": "c7acada", "version": "10.0.0" }

docs/usercollaborations.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ Returns a collaboration object.
4141

4242
Updates a collaboration.
4343
Can be used to change the owner of an item, or to
44-
accept collaboration invites.
44+
accept collaboration invites. In case of accepting collaboration invite, role is not required.
4545

4646
This operation is performed by calling function `updateCollaborationById`.
4747

@@ -50,7 +50,7 @@ See the endpoint docs at
5050

5151
<!-- sample put_collaborations_id -->
5252
```
53-
client.getUserCollaborations().updateCollaborationById(collaborationId, new UpdateCollaborationByIdRequestBody(UpdateCollaborationByIdRequestBodyRoleField.VIEWER))
53+
client.getUserCollaborations().updateCollaborationById(collaborationId, new UpdateCollaborationByIdRequestBody.Builder().role(UpdateCollaborationByIdRequestBodyRoleField.VIEWER).build())
5454
```
5555

5656
### Arguments

src/main/java/com/box/sdkgen/managers/usercollaborations/UpdateCollaborationByIdRequestBody.java

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ public class UpdateCollaborationByIdRequestBody extends SerializableObject {
2323
using =
2424
UpdateCollaborationByIdRequestBodyRoleField
2525
.UpdateCollaborationByIdRequestBodyRoleFieldSerializer.class)
26-
protected final EnumWrapper<UpdateCollaborationByIdRequestBodyRoleField> role;
26+
protected EnumWrapper<UpdateCollaborationByIdRequestBodyRoleField> role;
2727

2828
/**
2929
* Set the status of a `pending` collaboration invitation, effectively accepting, or rejecting the
@@ -72,15 +72,8 @@ public class UpdateCollaborationByIdRequestBody extends SerializableObject {
7272
@JsonProperty("can_view_path")
7373
protected Boolean canViewPath;
7474

75-
public UpdateCollaborationByIdRequestBody(UpdateCollaborationByIdRequestBodyRoleField role) {
75+
public UpdateCollaborationByIdRequestBody() {
7676
super();
77-
this.role = new EnumWrapper<UpdateCollaborationByIdRequestBodyRoleField>(role);
78-
}
79-
80-
public UpdateCollaborationByIdRequestBody(
81-
@JsonProperty("role") EnumWrapper<UpdateCollaborationByIdRequestBodyRoleField> role) {
82-
super();
83-
this.role = role;
8477
}
8578

8679
protected UpdateCollaborationByIdRequestBody(Builder builder) {
@@ -151,22 +144,22 @@ public String toString() {
151144

152145
public static class Builder extends NullableFieldTracker {
153146

154-
protected final EnumWrapper<UpdateCollaborationByIdRequestBodyRoleField> role;
147+
protected EnumWrapper<UpdateCollaborationByIdRequestBodyRoleField> role;
155148

156149
protected EnumWrapper<UpdateCollaborationByIdRequestBodyStatusField> status;
157150

158151
protected OffsetDateTime expiresAt;
159152

160153
protected Boolean canViewPath;
161154

162-
public Builder(UpdateCollaborationByIdRequestBodyRoleField role) {
163-
super();
155+
public Builder role(UpdateCollaborationByIdRequestBodyRoleField role) {
164156
this.role = new EnumWrapper<UpdateCollaborationByIdRequestBodyRoleField>(role);
157+
return this;
165158
}
166159

167-
public Builder(EnumWrapper<UpdateCollaborationByIdRequestBodyRoleField> role) {
168-
super();
160+
public Builder role(EnumWrapper<UpdateCollaborationByIdRequestBodyRoleField> role) {
169161
this.role = role;
162+
return this;
170163
}
171164

172165
public Builder status(UpdateCollaborationByIdRequestBodyStatusField status) {

src/main/java/com/box/sdkgen/managers/usercollaborations/UserCollaborationsManager.java

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,20 @@ public Collaboration getCollaborationById(
9898

9999
/**
100100
* Updates a collaboration. Can be used to change the owner of an item, or to accept collaboration
101-
* invites.
101+
* invites. In case of accepting collaboration invite, role is not required.
102+
*
103+
* @param collaborationId The ID of the collaboration. Example: "1234"
104+
*/
105+
public Collaboration updateCollaborationById(String collaborationId) {
106+
return updateCollaborationById(
107+
collaborationId,
108+
new UpdateCollaborationByIdRequestBody(),
109+
new UpdateCollaborationByIdHeaders());
110+
}
111+
112+
/**
113+
* Updates a collaboration. Can be used to change the owner of an item, or to accept collaboration
114+
* invites. In case of accepting collaboration invite, role is not required.
102115
*
103116
* @param collaborationId The ID of the collaboration. Example: "1234"
104117
* @param requestBody Request body of updateCollaborationById method
@@ -111,7 +124,20 @@ public Collaboration updateCollaborationById(
111124

112125
/**
113126
* Updates a collaboration. Can be used to change the owner of an item, or to accept collaboration
114-
* invites.
127+
* invites. In case of accepting collaboration invite, role is not required.
128+
*
129+
* @param collaborationId The ID of the collaboration. Example: "1234"
130+
* @param headers Headers of updateCollaborationById method
131+
*/
132+
public Collaboration updateCollaborationById(
133+
String collaborationId, UpdateCollaborationByIdHeaders headers) {
134+
return updateCollaborationById(
135+
collaborationId, new UpdateCollaborationByIdRequestBody(), headers);
136+
}
137+
138+
/**
139+
* Updates a collaboration. Can be used to change the owner of an item, or to accept collaboration
140+
* invites. In case of accepting collaboration invite, role is not required.
115141
*
116142
* @param collaborationId The ID of the collaboration. Example: "1234"
117143
* @param requestBody Request body of updateCollaborationById method

src/test/java/com/box/sdkgen/usercollaborations/UserCollaborationsITest.java

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,9 @@ public void testUserCollaborations() {
6666
.getUserCollaborations()
6767
.updateCollaborationById(
6868
collaborationId,
69-
new UpdateCollaborationByIdRequestBody(
70-
UpdateCollaborationByIdRequestBodyRoleField.VIEWER));
69+
new UpdateCollaborationByIdRequestBody.Builder()
70+
.role(UpdateCollaborationByIdRequestBodyRoleField.VIEWER)
71+
.build());
7172
assert convertToString(updatedCollaboration.getRole()).equals("viewer");
7273
client.getUserCollaborations().deleteCollaborationById(collaborationId);
7374
assertThrows(
@@ -110,8 +111,9 @@ public void testConvertingUserCollaborationToOwnership() {
110111
.getUserCollaborations()
111112
.updateCollaborationById(
112113
collaboration.getId(),
113-
new UpdateCollaborationByIdRequestBody(
114-
UpdateCollaborationByIdRequestBodyRoleField.OWNER));
114+
new UpdateCollaborationByIdRequestBody.Builder()
115+
.role(UpdateCollaborationByIdRequestBodyRoleField.OWNER)
116+
.build());
115117
assert ownerCollaboration == null;
116118
Collaborations folderCollaborations =
117119
client.getListCollaborations().getFolderCollaborations(folder.getId());
@@ -155,8 +157,9 @@ public void testExternalUserCollaborations() {
155157
.getUserCollaborations()
156158
.updateCollaborationById(
157159
collaborationId,
158-
new UpdateCollaborationByIdRequestBody(
159-
UpdateCollaborationByIdRequestBodyRoleField.VIEWER));
160+
new UpdateCollaborationByIdRequestBody.Builder()
161+
.role(UpdateCollaborationByIdRequestBodyRoleField.VIEWER)
162+
.build());
160163
assert convertToString(updatedCollaboration.getRole()).equals("viewer");
161164
client.getUserCollaborations().deleteCollaborationById(collaborationId);
162165
assertThrows(

0 commit comments

Comments
 (0)