⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 defaultaction.java

📁 这是linux下ssl vpn的实现程序
💻 JAVA
字号:
/*
 */
package com.sslexplorer.core.actions;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.Globals;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessages;

import com.sslexplorer.boot.ContextHolder;
import com.sslexplorer.core.CoreUtil;
import com.sslexplorer.security.Constants;
import com.sslexplorer.security.SessionInfo;

/**
 * Default {@link com.sslexplorer.core.actions.CoreAction} implementation that
 * extends the default struts {@link org.apache.struts.action.Action}. All
 * visitors may use these actions (there is no logon requirement or restriction
 * testing).
 * 
 * @author Brett Smith <a href="mailto: brett@3sp.com">&lt;brett@3sp.com&gt;</a>
 * @version $Revision: 1.12 $
 */
public abstract class DefaultAction extends Action implements CoreAction {

    /*
     * (non-Javadoc)
     * 
     * @see org.apache.struts.action.Action#execute(org.apache.struts.action.ActionMapping,
     *      org.apache.struts.action.ActionForm,
     *      javax.servlet.http.HttpServletRequest,
     *      javax.servlet.http.HttpServletResponse)
     */
    public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
                    throws Exception {
        ActionForward fwd = checkIntercept(mapping, request, response);
        if (fwd == null) {
	        if (isInstallMode()) {
	            if ((getNavigationContext(mapping, form, request, response) & SessionInfo.SETUP_CONSOLE_CONTEXT) == 0) {
	                return mapping.findForward("setup");
	            }
	        }
	        checkForVPNMessages(request);
	        fwd = super.execute(mapping, form, request, response);
	        if(fwd == null) {
	            fwd = mapping.findForward("display");	  
	        }
        }
        return fwd;
    }

    /**
     * Get if the server is in install mode.
     * 
     * @return in install mode
     */
    public boolean isInstallMode() {
        return ContextHolder.getContext().isSetupMode();
    }

    /**
     * Check whether there are any page intercepts queue. The forward
     * will be returned if there are, otherwise <code>null</code>.
     * 
     * @param mapping mapping
     * @param request request
     * @param response response
     * @return forward forward
     * @throws Exception on any error
     */
    public ActionForward checkIntercept(ActionMapping mapping, HttpServletRequest request, HttpServletResponse response)
                    throws Exception {
        return CoreUtil.checkIntercept(this, mapping, request, response);
    }

    /**
     * Check whether there are any VPN client messages to add
     * 
     * @param request request
     */
    protected void checkForVPNMessages(HttpServletRequest request) {
        CoreUtil.addVPNClientErrors(request, CoreUtil.checkForVPNErrors(this, request));
        CoreUtil.addVPNClientMessages(request, CoreUtil.checkForVPNMessages(this, request));
        
    }

    /**
     * Add request warnings 
     * 
     * @param request request 
     * @param warnings warnings
     */
    protected void addWarnings(HttpServletRequest request, ActionMessages warnings) {
        CoreUtil.addWarnings(request, warnings);
    }

    /**
     * Get the current warnings, creating them if none exists
     *
     * @return the warnings that already exist in the request, or a new ActionMessages object if empty.
     * @param request The servlet request we are processing
     */
    protected ActionMessages getWarnings(HttpServletRequest request) {
        return CoreUtil.getWarnings(request);
    }

    /**
     * Save the specified warnings messages.
     *
     * @param request request
     * @param warnings warnings
     */
    protected void saveWarnings(HttpServletRequest request, ActionMessages warnings) {
        CoreUtil.saveWarnings(request, warnings);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -