Skip to content

Commit 515f277

Browse files
committed
revokeDestinationDefinitionFromWorkspace
1 parent 4d9e69c commit 515f277

File tree

3 files changed

+22
-1
lines changed

3 files changed

+22
-1
lines changed

airbyte-server/src/main/java/io/airbyte/server/apis/ConfigurationApi.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -576,7 +576,10 @@ public PrivateDestinationDefinitionRead grantDestinationDefinitionToWorkspace(
576576

577577
@Override
578578
public void revokeDestinationDefinitionFromWorkspace(final DestinationDefinitionIdWithWorkspaceId destinationDefinitionIdWithWorkspaceId) {
579-
579+
execute(() -> {
580+
destinationDefinitionsHandler.revokeDestinationDefinitionFromWorkspace(destinationDefinitionIdWithWorkspaceId);
581+
return null;
582+
});
580583
}
581584

582585
// DESTINATION SPECIFICATION

airbyte-server/src/main/java/io/airbyte/server/handlers/DestinationDefinitionsHandler.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -234,4 +234,11 @@ public PrivateDestinationDefinitionRead grantDestinationDefinitionToWorkspace(
234234
.granted(true);
235235
}
236236

237+
public void revokeDestinationDefinitionFromWorkspace(final DestinationDefinitionIdWithWorkspaceId destinationDefinitionIdWithWorkspaceId)
238+
throws IOException {
239+
configRepository.deleteActorDefinitionWorkspaceGrant(
240+
destinationDefinitionIdWithWorkspaceId.getDestinationDefinitionId(),
241+
destinationDefinitionIdWithWorkspaceId.getWorkspaceId());
242+
}
243+
237244
}

airbyte-server/src/test/java/io/airbyte/server/handlers/DestinationDefinitionsHandlerTest.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,17 @@ void testGrantDestinationDefinitionToWorkspace() throws JsonValidationException,
296296
workspaceId);
297297
}
298298

299+
@Test
300+
@DisplayName("revokeDestinationDefinitionFromWorkspace should correctly delete a workspace grant")
301+
void testRevokeDestinationDefinitionFromWorkspace() throws IOException {
302+
destinationDefinitionsHandler.revokeDestinationDefinitionFromWorkspace(new DestinationDefinitionIdWithWorkspaceId()
303+
.destinationDefinitionId(destinationDefinition.getDestinationDefinitionId())
304+
.workspaceId(workspaceId));
305+
verify(configRepository).deleteActorDefinitionWorkspaceGrant(
306+
destinationDefinition.getDestinationDefinitionId(),
307+
workspaceId);
308+
}
309+
299310
@Nested
300311
@DisplayName("listLatest")
301312
class listLatest {

0 commit comments

Comments
 (0)