From bbac3de1d706ad1e2d73c698484d40d23b3fd524 Mon Sep 17 00:00:00 2001
From: srosse <stephane.rosse@frentix.com>
Date: Wed, 16 Oct 2019 19:07:01 +0200
Subject: [PATCH] OO-4304: fix filter short cuts only tools for not configured
 instances

---
 .../java/org/olat/user/ToolsPrefsController.java  | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/src/main/java/org/olat/user/ToolsPrefsController.java b/src/main/java/org/olat/user/ToolsPrefsController.java
index 3002301b02f..47ca6973308 100644
--- a/src/main/java/org/olat/user/ToolsPrefsController.java
+++ b/src/main/java/org/olat/user/ToolsPrefsController.java
@@ -20,9 +20,9 @@
 package org.olat.user;
 
 import java.util.Collections;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
+import java.util.stream.Collectors;
 
 import org.olat.admin.user.tools.UserToolExtension;
 import org.olat.admin.user.tools.UserToolsModule;
@@ -71,15 +71,10 @@ public class ToolsPrefsController extends FormBasicController {
 		
 		if(enabled) {
 			Set<String> aToolSet = userToolsModule.getAvailableUserToolSet();
-			userTools = userToolsModule.getAllUserToolExtensions(ureq);
-			if(!aToolSet.isEmpty()) {
-				for(Iterator<UserToolExtension> it=userTools.iterator(); it.hasNext(); ) {
-					UserToolExtension userToolExt = it.next();
-					if(!aToolSet.contains(userToolExt.getUniqueExtensionID()) || userToolExt.isShortCutOnly()) {
-						it.remove();
-					}
-				}
-			}
+			List<UserToolExtension> userToolList = userToolsModule.getAllUserToolExtensions(ureq);
+			userTools = userToolList.stream()
+					.filter(tool -> (!tool.isShortCutOnly() && (aToolSet.isEmpty() || aToolSet.contains(tool.getUniqueExtensionID()))))
+					.collect(Collectors.toList());
 		} else {
 			userTools = Collections.emptyList();
 		}
-- 
GitLab