/** * Copyright (c) 2004-2011 Wang Jinbao(Julian Wong), http://www.ralasafe.com * Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php */ package org.ralasafe.servlet; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.ralasafe.Ralasafe; import org.ralasafe.WebRalasafe; import org.ralasafe.privilege.Privilege; import org.ralasafe.user.User; public class DesignerAction extends Action { protected void doGet( HttpServletRequest req, HttpServletResponse resp ) throws ServletException, IOException { Token token=new Token(); // Is ralasafe security enabled? boolean secured=RalasafeController.isSecured(); if( secured ) { User currentUser=WebRalasafe.getCurrentUser( req ); token.setCanAssignRoleToUser( Ralasafe.hasPrivilege( Privilege.ASSIGN_ROLE_TO_USER_ID, currentUser ) ); token.setCanAdminRole( Ralasafe.hasPrivilege( Privilege.ROLE_ADMIN_ID, currentUser ) ); token.setCanAdminPolicy( Ralasafe.hasPrivilege( Privilege.POLICY_ADMIN_ID, currentUser ) ); } req.setAttribute( "token", token ); WebUtil.forward( req, resp, "/ralasafe/main.jsp" ); } /** * Only used in designer.jsp. So there's no need extract it as a 'normal' class * @author Julian Wong * */ public class Token { private boolean canAssignRoleToUser=true; private boolean canAdminRole=true; private boolean canAdminPolicy=true; public boolean isCanAssignRoleToUser() { return canAssignRoleToUser; } public void setCanAssignRoleToUser( boolean canAssignRoleToUser ) { this.canAssignRoleToUser=canAssignRoleToUser; } public boolean isCanAdminRole() { return canAdminRole; } public void setCanAdminRole( boolean canAdminRole ) { this.canAdminRole=canAdminRole; } public boolean isCanAdminPolicy() { return canAdminPolicy; } public void setCanAdminPolicy( boolean canAdminPolicy ) { this.canAdminPolicy=canAdminPolicy; } } }