@Test public void removeAttributeForUser() { this.setAttributeForUser(); given() .header("Content-Type", "application/json") .delete("/api/attributes/" + NEW_ATTRIBUTE + "/hacker") .then() .statusCode(SC_OK); assertFalse(idpConfiguration.getUsers().stream() .filter(userAuthenticationToken -> userAuthenticationToken.getPrincipal().equals("hacker")).findFirst().get() .getAttributes().containsKey(NEW_ATTRIBUTE)); }
@DeleteMapping("/attributes/{name:.+}/{userName:.+}") public void removeAttributeForUser(@PathVariable String name, @PathVariable String userName) { LOG.info("Request to remove attribute {} for user {}", name, userName); configuration().getUsers().stream().filter(userAuthenticationToken -> userAuthenticationToken.getName().equals (userName)).findFirst().orElseThrow(() -> new IllegalArgumentException(String.format("User %s first " + "must be created", userName))).getAttributes().remove(name); }
IdpController extends SharedController { @DeleteMapping("/attributes/{name:.+}/{userName:.+}") public void removeAttributeForUser(@PathVariable String name, @PathVariable String userName) { LOG.info("Request to remove attribute {} for user {}", name, userName); configuration().getUsers().stream().filter(userAuthenticationToken -> userAuthenticationToken.getName().equals (userName)).findFirst().orElseThrow(() -> new IllegalArgumentException(String.format("User %s first " + "must be created", userName))).getAttributes().remove(name); } }
IdpController extends SharedController { @DeleteMapping("/attributes/{name:.+}/{userName:.+}") public void removeAttributeForUser(@PathVariable String name, @PathVariable String userName) { LOG.info("Request to remove attribute {} for user {}", name, userName); configuration().getUsers().stream().filter(userAuthenticationToken -> userAuthenticationToken.getName().equals (userName)).findFirst().orElseThrow(() -> new IllegalArgumentException(String.format("User %s first " + "must be created", userName))).getAttributes().remove(name); } @Autowired  IdpController(IdpConfiguration configuration); }
IdpController extends SharedController { @DeleteMapping("/attributes/{name:.+}/{userName:.+}") public void removeAttributeForUser(@PathVariable String name, @PathVariable String userName) { LOG.info("Request to remove attribute {} for user {}", name, userName); configuration().getUsers().stream().filter(userAuthenticationToken -> userAuthenticationToken.getName().equals (userName)).findFirst().orElseThrow(() -> new IllegalArgumentException(String.format("User %s first " + "must be created", userName))).getAttributes().remove(name); } @Autowired  IdpController(IdpConfiguration configuration); @PutMapping("/attributes") void setAttributes(@RequestBody Map<String, List<String>> attributes); @PutMapping("/attributes/{name:.+}") void setAttribute(@PathVariable String name, @RequestBody List<String> values); @PutMapping("/attributes/{name:.+}/{userName:.+}") void setAttributeForUser(@PathVariable String name, @PathVariable String userName,
                                  @RequestBody List<String> values); @DeleteMapping("/attributes/{name:.+}") void removeAttribute(@PathVariable String name); @DeleteMapping("/attributes/{name:.+}/{userName:.+}") void removeAttributeForUser(@PathVariable String name, @PathVariable String userName); @PutMapping("/users") void addUser(@RequestBody User user); @PutMapping("authmethod") void setAuthenticationMethod(@RequestBody String authenticationMethod); @PutMapping("/acsendpoint") void setAcsEndpoint(@RequestBody String acsEndpoint); }
IdpController extends SharedController { @DeleteMapping("/attributes/{name:.+}/{userName:.+}") public void removeAttributeForUser(@PathVariable String name, @PathVariable String userName) { LOG.info("Request to remove attribute {} for user {}", name, userName); configuration().getUsers().stream().filter(userAuthenticationToken -> userAuthenticationToken.getName().equals (userName)).findFirst().orElseThrow(() -> new IllegalArgumentException(String.format("User %s first " + "must be created", userName))).getAttributes().remove(name); } @Autowired  IdpController(IdpConfiguration configuration); @PutMapping("/attributes") void setAttributes(@RequestBody Map<String, List<String>> attributes); @PutMapping("/attributes/{name:.+}") void setAttribute(@PathVariable String name, @RequestBody List<String> values); @PutMapping("/attributes/{name:.+}/{userName:.+}") void setAttributeForUser(@PathVariable String name, @PathVariable String userName,
                                  @RequestBody List<String> values); @DeleteMapping("/attributes/{name:.+}") void removeAttribute(@PathVariable String name); @DeleteMapping("/attributes/{name:.+}/{userName:.+}") void removeAttributeForUser(@PathVariable String name, @PathVariable String userName); @PutMapping("/users") void addUser(@RequestBody User user); @PutMapping("authmethod") void setAuthenticationMethod(@RequestBody String authenticationMethod); @PutMapping("/acsendpoint") void setAcsEndpoint(@RequestBody String acsEndpoint);  }