Skip to content

Commit 9ff00d3

Browse files
authored
SecurityPolicy methods now return streams (#1098)
1 parent fdd7c98 commit 9ff00d3

1 file changed

Lines changed: 12 additions & 30 deletions

File tree

snd/src/org/labkey/snd/security/view/categorySecurity.jsp

Lines changed: 12 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@
3232
<%@ page import="java.util.HashMap" %>
3333
<%@ page import="java.util.List" %>
3434
<%@ page import="java.util.Map" %>
35-
<%@ page import="java.util.Objects" %>
3635
<%@ page extends="org.labkey.api.jsp.JspBase" %>
3736

3837
<%@ taglib prefix="labkey" uri="http://www.labkey.org/taglib" %>
@@ -68,38 +67,21 @@
6867
6968
Map<Integer, Category> categories = sndService.getAllCategories(getContainer(), getUser());
7069
Map<String, Role> roles = sndSecurityManager.getAllSecurityRoles();
71-
7270
Map<Integer, Map<Integer, String>> roleMapping = new IntHashMap<>();
73-
Map<Integer, String> roleNameMap;
74-
SecurityPolicy policy;
75-
List<Role> policyRoles;
76-
String currentRoleName;
71+
7772
for (Category category : categories.values())
7873
{
79-
roleNameMap = new HashMap<>();
80-
for (Group gr : validGroups)
81-
{
82-
policy = SecurityPolicyManager.getPolicy(category);
83-
policyRoles = policy.getAssignedRoles(gr);
84-
if (!policyRoles.isEmpty())
85-
{
86-
currentRoleName = null;
87-
for (Role policyRole : policyRoles)
88-
{
89-
if (roles.containsKey(policyRole.getName()))
90-
{
91-
currentRoleName = policyRole.getName();
92-
break;
93-
}
94-
}
95-
96-
roleNameMap.put(gr.getUserId(), Objects.requireNonNullElse(currentRoleName, "None"));
97-
}
98-
else
99-
{
100-
roleNameMap.put(gr.getUserId(), "None");
101-
}
102-
}
74+
SecurityPolicy policy = SecurityPolicyManager.getPolicy(category);
75+
Map<Integer, String> roleNameMap = new HashMap<>();
76+
validGroups.forEach(gr -> {
77+
String currentRoleName = policy.getAssignedRoles(gr)
78+
.filter(policyRole -> roles.containsKey(policyRole.getName()))
79+
.findFirst()
80+
.map(Role::getName)
81+
.orElse("None");
82+
83+
roleNameMap.put(gr.getUserId(), currentRoleName);
84+
});
10385
roleMapping.put(category.getCategoryId(), roleNameMap);
10486
}
10587
%>

0 commit comments

Comments
 (0)