/* (c) 2014 Open Source Geospatial Foundation - all rights reserved * (c) 2001 - 2013 OpenPlans * This code is licensed under the GPL 2.0 license, available at the root * application directory. */ package org.geoserver.security.web.group; import java.util.List; import java.util.SortedSet; import org.apache.wicket.model.Model; import org.geoserver.ows.util.OwsUtils; import org.geoserver.security.impl.GeoServerRole; import org.geoserver.security.impl.GeoServerUserGroup; import org.geoserver.security.web.AbstractConfirmRemovalPanel; import org.geoserver.web.GeoServerApplication; public class ConfirmRemovalGroupPanel extends AbstractConfirmRemovalPanel<GeoServerUserGroup> { private static final long serialVersionUID = 1L; public ConfirmRemovalGroupPanel(String id, Model<Boolean> model,List<GeoServerUserGroup> roots) { super(id, model,roots); } public ConfirmRemovalGroupPanel(String id, Model<Boolean> model,GeoServerUserGroup... roots) { super(id, model,roots); } @Override protected String getConfirmationMessage(GeoServerUserGroup object) throws Exception{ StringBuffer buffer = new StringBuffer(OwsUtils.property(object, "groupname", String.class)); if ((Boolean) getDefaultModelObject()) { SortedSet<GeoServerRole> roles = GeoServerApplication.get().getSecurityManager() .getActiveRoleService().getRolesForGroup(object.getGroupname()); buffer.append(" ["); for (GeoServerRole role: roles) { buffer.append(role.getAuthority()).append(" "); } if (roles.size()>0) { // remove last delimiter buffer.setLength(buffer.length()-1); } buffer.append("]"); } return buffer.toString(); } }