From 541ba5ddf34d00655be85fb042c67aee11a498e2 Mon Sep 17 00:00:00 2001 From: Bill Smith Date: Mon, 7 Jan 2019 09:57:24 -0700 Subject: [PATCH] [SHIBUI-1031] Added an endpoint to get supported roles. --- .../admin/ui/controller/ConfigurationController.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/controller/ConfigurationController.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/controller/ConfigurationController.java index f71e76cb5..3f85175e1 100644 --- a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/controller/ConfigurationController.java +++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/controller/ConfigurationController.java @@ -1,12 +1,16 @@ package edu.internet2.tier.shibboleth.admin.ui.controller; import edu.internet2.tier.shibboleth.admin.ui.configuration.CustomPropertiesConfiguration; +import edu.internet2.tier.shibboleth.admin.ui.security.model.Role; +import edu.internet2.tier.shibboleth.admin.ui.security.repository.RoleRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; +import java.util.stream.Collectors; + /** * @author Bill Smith (wsmith@unicon.net) */ @@ -17,8 +21,16 @@ public class ConfigurationController { @Autowired CustomPropertiesConfiguration customPropertiesConfiguration; + @Autowired + RoleRepository roleRepository; + @GetMapping(value = "/customAttributes") public ResponseEntity getCustomAttributes() { return ResponseEntity.ok(customPropertiesConfiguration.getAttributes()); } + + @GetMapping(value = "/supportedRoles") + public ResponseEntity getSupportedRoles() { + return ResponseEntity.ok(roleRepository.findAll().stream().map(Role::getName).collect(Collectors.toList())); + } }