1 19 20 package com.sslexplorer.properties.actions; 21 22 import javax.servlet.http.HttpServletRequest ; 23 import javax.servlet.http.HttpServletResponse ; 24 25 import org.apache.commons.logging.Log; 26 import org.apache.commons.logging.LogFactory; 27 import org.apache.struts.action.ActionForm; 28 import org.apache.struts.action.ActionForward; 29 import org.apache.struts.action.ActionMapping; 30 31 import com.sslexplorer.boot.AbstractPropertyKey; 32 import com.sslexplorer.boot.PropertyDefinition; 33 import com.sslexplorer.core.CoreServlet; 34 import com.sslexplorer.policyframework.Permission; 35 import com.sslexplorer.policyframework.PolicyConstants; 36 import com.sslexplorer.policyframework.ResourceUtil; 37 import com.sslexplorer.properties.ProfilesFactory; 38 import com.sslexplorer.properties.PropertyProfile; 39 import com.sslexplorer.properties.forms.AbstractPropertiesForm; 40 import com.sslexplorer.properties.forms.ProfilePropertiesForm; 41 import com.sslexplorer.properties.impl.profile.ProfilePropertyKey; 42 import com.sslexplorer.security.Constants; 43 import com.sslexplorer.security.SessionInfo; 44 45 public class UserProfilePropertiesAction extends AbstractProfilePropertiesAction { 46 static Log log = LogFactory.getLog(UserProfilePropertiesAction.class); 47 48 public ActionForward unspecified(ActionMapping mapping, ActionForm form, HttpServletRequest request, 49 HttpServletResponse response) throws Exception { 50 ((ProfilePropertiesForm)form).setProfileScope(Constants.SCOPE_PERSONAL); 51 return super.unspecified(mapping, form, request, response); 52 } 53 54 @Override 55 public ActionForward commit(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { 56 ProfilePropertiesForm f = (ProfilePropertiesForm) form; 57 PropertyProfile profile = ProfilesFactory.getInstance().getPropertyProfile(f.getSelectedPropertyProfile()); 58 ResourceUtil.checkResourceManagementRights(profile, getSessionInfo(request), new Permission[] {PolicyConstants.PERM_CHANGE}); 59 return super.commit(mapping, form, request, response); 60 } 61 62 public int getNavigationContext(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { 63 return SessionInfo.USER_CONSOLE_CONTEXT; 64 } 65 66 public AbstractPropertyKey createKey(PropertyDefinition definition, AbstractPropertiesForm form, SessionInfo sessionInfo) { 67 ProfilePropertiesForm f = (ProfilePropertiesForm)form; 68 return new ProfilePropertyKey(f.getSelectedPropertyProfile(), sessionInfo.getUser().getPrincipalName(), definition.getName(), sessionInfo.getUser().getRealm().getResourceId()); 69 } 70 } | Popular Tags |