1 19 20 package com.sslexplorer.applications.actions; 21 22 import java.util.HashMap ; 23 import java.util.Iterator ; 24 import java.util.Locale ; 25 import java.util.Map ; 26 27 import javax.servlet.http.HttpServletRequest ; 28 import javax.servlet.http.HttpServletResponse ; 29 30 import org.apache.commons.logging.Log; 31 import org.apache.commons.logging.LogFactory; 32 import org.apache.struts.Globals; 33 import org.apache.struts.action.ActionForm; 34 import org.apache.struts.action.ActionForward; 35 import org.apache.struts.action.ActionMapping; 36 import org.apache.struts.action.ActionMessage; 37 import org.apache.struts.action.ActionMessages; 38 39 import com.sslexplorer.applications.ApplicationShortcut; 40 import com.sslexplorer.applications.ApplicationShortcutDatabaseFactory; 41 import com.sslexplorer.applications.ApplicationsPlugin; 42 import com.sslexplorer.applications.forms.ApplicationShortcutForm; 43 import com.sslexplorer.extensions.ShortcutParameterItem; 44 import com.sslexplorer.policyframework.Resource; 45 import com.sslexplorer.policyframework.actions.AbstractResourceDispatchAction; 46 import com.sslexplorer.policyframework.forms.AbstractResourceForm; 47 import com.sslexplorer.security.SessionInfo; 48 49 59 public class EditApplicationShortcutDispatchAction extends AbstractResourceDispatchAction { 60 61 static Log log = LogFactory.getLog(EditApplicationShortcutDispatchAction.class); 62 63 66 public EditApplicationShortcutDispatchAction() { 67 super(ApplicationsPlugin.APPLICATION_SHORTCUT_RESOURCE_TYPE); 68 } 69 70 71 79 public int getNavigationContext(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { 80 return SessionInfo.MANAGEMENT_CONSOLE_CONTEXT | SessionInfo.USER_CONSOLE_CONTEXT; 81 } 82 83 84 87 public ActionForward edit(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { 88 ((ApplicationShortcutForm) form).setLocale((Locale )request.getSession().getAttribute(Globals.LOCALE_KEY)); 89 return super.edit(mapping, form, request, response); 90 } 91 92 93 101 public Resource createResource(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) 102 throws Exception { 103 return null; 106 } 107 108 111 public ActionForward commit(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) 112 throws Exception { 113 ActionMessages msgs = new ActionMessages(); 114 msgs.add(Globals.MESSAGE_KEY, new ActionMessage("editTunnel.message.saved")); 115 this.addMessages(request, msgs); 116 return super.commit(mapping, form, request, response); 117 } 118 119 122 protected Resource commitCreatedResource(ActionMapping mapping, AbstractResourceForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { 123 ApplicationShortcutForm asf = (ApplicationShortcutForm)form; 124 ApplicationShortcut as = (ApplicationShortcut)asf.getResource(); 125 Map <String , String > parameterMap = new HashMap <String , String >(); 126 for (Iterator i = asf.getParameterItems().iterator(); i.hasNext();) { 127 ShortcutParameterItem pi = (ShortcutParameterItem) i.next(); 128 parameterMap.put(pi.getName(), pi.getPropertyValue().toString()); 129 } 130 int resourceId = ApplicationShortcutDatabaseFactory.getInstance().createApplicationShortcut( 131 as.getApplication(), asf.getResourceName(), asf.getResourceDescription(), 132 parameterMap, getSessionInfo(request).getRealmId()); 133 return as.getResourceType().getResourceById(resourceId); 134 135 } 136 137 } | Popular Tags |