Skip to content

Commit eace2ed

Browse files
committed
Fixes #476
1 parent b8e337d commit eace2ed

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

server/src/main/java/access/provision/ProvisioningServiceDefault.java

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -294,7 +294,7 @@ private void sendGroupPutRequest(Provisioning provisioning,
294294

295295
@Override
296296
public void updateGroupRequest(List<String> previousManageIdentifiers, Role newRole, boolean nameChanged) {
297-
//Immutable List can not be sorted
297+
//Immutable List cannot be sorted
298298
List<String> previousManageIdentifiersSorted = previousManageIdentifiers.stream().sorted().toList();
299299
List<String> newManageIdentifiers = this.getManageIdentifiers(newRole);
300300
if (!nameChanged && previousManageIdentifiers.equals(newManageIdentifiers)) {
@@ -314,7 +314,9 @@ public void updateGroupRequest(List<String> previousManageIdentifiers, Role newR
314314
List<String> deletedManageIdentifiers = previousManageIdentifiers.stream()
315315
.filter(id -> !newManageIdentifiers.contains(id)).toList();
316316

317-
manage.provisioning(addedManageIdentifiers).stream().map(Provisioning::new)
317+
manage.provisioning(addedManageIdentifiers).stream()
318+
.map(Provisioning::new)
319+
.filter(provisioning -> !provisioning.isScimUserProvisioningOnly())
318320
.forEach(provisioning -> {
319321
Optional<RemoteProvisionedGroup> provisionedGroupOptional = this.remoteProvisionedGroupRepository
320322
.findByManageProvisioningIdAndRole(provisioning.getId(), newRole);
@@ -353,7 +355,10 @@ public List<Provisioning> getProvisionings(List<UserRole> userRoles) {
353355

354356
private void deleteGroupRequest(Role role, List<Provisioning> provisionings) {
355357
//Delete the group to all provisionings in Manage where the group is known
356-
provisionings.forEach(provisioning ->
358+
provisionings
359+
.stream()
360+
.filter(provisioning -> !provisioning.isScimUserProvisioningOnly())
361+
.forEach(provisioning ->
357362
this.remoteProvisionedGroupRepository
358363
.findByManageProvisioningIdAndRole(provisioning.getId(), role)
359364
.ifPresent(remoteProvisionedGroup -> {

0 commit comments

Comments
 (0)