From 51d4837c19a4fff874e9eda4530dad40e7882cae Mon Sep 17 00:00:00 2001
From: Brendan Le Ny <bleny@codelutin.com>
Date: Mon, 24 Jun 2024 15:46:56 +0200
Subject: [PATCH] Close stream

---
 .../java/sh/libre/scim/core/GroupScimService.java    | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/main/java/sh/libre/scim/core/GroupScimService.java b/src/main/java/sh/libre/scim/core/GroupScimService.java
index 4245b24..e5b2315 100644
--- a/src/main/java/sh/libre/scim/core/GroupScimService.java
+++ b/src/main/java/sh/libre/scim/core/GroupScimService.java
@@ -41,10 +41,14 @@ public class GroupScimService extends AbstractScimService<GroupModel, Group> {
         Set<String> names = new TreeSet<>();
         resource.getId().ifPresent(names::add);
         resource.getDisplayName().ifPresent(names::add);
-        Optional<GroupModel> group = getKeycloakDao().getGroupsStream()
-                .filter(groupModel -> names.contains(groupModel.getName()))
-                .findFirst();
-        return group.map(GroupModel::getId).map(KeycloakId::new);
+        try (Stream<GroupModel> groupsStream = getKeycloakDao().getGroupsStream()) {
+            Optional<GroupModel> group = groupsStream
+                    .filter(groupModel -> names.contains(groupModel.getName()))
+                    .findFirst();
+            return group
+                    .map(GroupModel::getId)
+                    .map(KeycloakId::new);
+        }
     }
 
     @Override
-- 
GitLab