public GeoServerRole createRoleObject(String role) throws IOException { checkRoleName(role); return service.createRoleObject(role); }
protected void checkExistingRoleName(String roleName) throws IOException { checkRoleName(roleName); if (service.getRoleByName(roleName) == null) throw createSecurityException(NOT_FOUND, roleName); }
protected void checkNotExistingRoleName(String roleName) throws IOException { checkRoleName(roleName); if (service.getRoleByName(roleName) != null) throw createSecurityException(ALREADY_EXISTS, roleName); }
protected void checkNotExistingInOtherServices(String roleName) throws IOException { checkRoleName(roleName); for (String serviceName : service.getSecurityManager().listRoleServices()) { // dont check myself if (service.getName().equals(serviceName)) continue; GeoServerRole role = null; try { role = service.getSecurityManager() .loadRoleService(serviceName) .getRoleByName(roleName); } catch (IOException ex) { LOGGER.log(Level.WARNING, ex.getMessage(), ex); throw createSecurityException(CANNOT_CHECK_ROLE_IN_SERVICE, roleName, serviceName); } if (role != null) { throw createSecurityException(ALREADY_EXISTS_IN, roleName, serviceName); } } }