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.ContextConfig; 33 import com.sslexplorer.boot.ContextKey; 34 import com.sslexplorer.boot.PropertyDefinition; 35 import com.sslexplorer.policyframework.PolicyConstants; 36 import com.sslexplorer.policyframework.PolicyUtil; 37 import com.sslexplorer.properties.forms.AbstractPropertiesForm; 38 import com.sslexplorer.properties.impl.realms.RealmKey; 39 import com.sslexplorer.properties.impl.realms.RealmProperties; 40 import com.sslexplorer.properties.impl.systemconfig.SystemConfigKey; 41 import com.sslexplorer.security.SessionInfo; 42 43 public class SystemConfigurationPropertiesAction extends AbstractPropertiesAction { 44 static Log log = LogFactory.getLog(SystemConfigurationPropertiesAction.class); 45 46 47 public ActionForward commit(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) 48 throws Exception { 49 PolicyUtil.checkPermission(PolicyConstants.SYSTEM_CONFIGURATION_RESOURCE_TYPE, 50 PolicyConstants.PERM_CHANGE, request); 51 return super.commit(mapping, form, request, response); 52 } 53 54 public ActionForward unspecified(ActionMapping mapping, ActionForm form, HttpServletRequest request, 55 HttpServletResponse response) throws Exception { 56 AbstractPropertiesForm pf = (AbstractPropertiesForm) form; 58 pf.setParentCategory(0); 59 pf.setSelectedCategory(0); 60 return super.unspecified(mapping, form, request, response); 61 } 62 63 public int getNavigationContext(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { 64 return SessionInfo.MANAGEMENT_CONSOLE_CONTEXT; 65 } 66 67 public AbstractPropertyKey createKey(PropertyDefinition definition, AbstractPropertiesForm form, SessionInfo sessionInfo) { 68 if(definition.getPropertyClass().getName().equals(ContextConfig.NAME)) { 69 return new ContextKey(definition.getName()); 70 } 71 else if(definition.getPropertyClass().getName().equals(RealmProperties.NAME)) { 72 return new RealmKey(definition.getName(), sessionInfo.getRealm()); 73 } 74 return new SystemConfigKey(definition.getName()); 75 } 76 } | Popular Tags |