protected void addSecurityGroups(final T project) { //Copy in Security Roles required to access this resource final ConfigGroup projectConfiguration = findProjectConfig(project.getRootPath()); if (projectConfiguration != null) { ConfigItem<List<String>> groups = backward.compat(projectConfiguration).getConfigItem("security:groups"); if (groups != null) { for (String group : groups.getValue()) { project.getGroups().add(group); } } } }
@SuppressWarnings({"unchecked", "rawtypes"}) @Override public void removeGroup(final Project project, final String group) { final ConfigGroup thisProjectConfig = resourceResolver.findProjectConfig(project.getRootPath()); if (thisProjectConfig != null) { final ConfigItem<List> groups = backward.compat(thisProjectConfig).getConfigItem("security:groups"); groups.getValue().remove(group); configurationService.updateConfiguration(thisProjectConfig); } else { throw new IllegalArgumentException("Project " + project.getProjectName() + " not found"); } }
@SuppressWarnings({"rawtypes"}) @Override public void addGroup(final Project project, final String group) { ConfigGroup thisProjectConfig = resourceResolver.findProjectConfig(project.getRootPath()); if (thisProjectConfig == null) { thisProjectConfig = configurationFactory.newConfigGroup(ConfigType.PROJECT, project.getRootPath().toURI(), "Project '" + project.getProjectName() + "' configuration"); thisProjectConfig.addConfigItem(configurationFactory.newConfigItem("security:groups", new ArrayList<String>())); configurationService.addConfiguration(thisProjectConfig); } if (thisProjectConfig != null) { final ConfigItem<List> groups = backward.compat(thisProjectConfig).getConfigItem("security:groups"); groups.getValue().add(group); configurationService.updateConfiguration(thisProjectConfig); } else { throw new IllegalArgumentException("Project " + project.getProjectName() + " not found"); } }