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

📄 pagetaskmenutree.java

📁 这是linux下ssl vpn的实现程序
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/*
 *  SSL-Explorer
 *
 *  Copyright (C) 2003-2006 3SP LTD. All Rights Reserved
 *
 *  This program is free software; you can redistribute it and/or
 *  modify it under the terms of the GNU General Public License
 *  as published by the Free Software Foundation; either version 2 of
 *  the License, or (at your option) any later version.
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public
 *  License along with this program; if not, write to the Free Software
 *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 */
			
package com.sslexplorer.core;

import javax.servlet.http.HttpServletRequest;

import com.sslexplorer.navigation.MenuTree;
import com.sslexplorer.policyframework.Permission;
import com.sslexplorer.policyframework.PolicyConstants;
import com.sslexplorer.security.SessionInfo;

/**
 * @author Brett Smith <a href="mailto:brett@3sp.com">&lt;brett@3sp.com&gt;</a>
 *
 */
public class PageTaskMenuTree extends MenuTree {
    // Private instance variables
    public static final String PAGE_TASK_MENU_TREE = "pageTask";

    public PageTaskMenuTree() {
        super(PageTaskMenuTree.PAGE_TASK_MENU_TREE);

        // User Profiles Page Tasks
        addMenuItem(null, new MenuItem("showUserProfiles", null, null, 100, false, SessionInfo.ALL_CONTEXTS));
        addMenuItem("showUserProfiles", new MenuItem("createUserProfile", "properties",
            "javascript: setActionTarget('create'); document.forms[0].submit();", 100,  true, null,
            SessionInfo.USER_CONSOLE_CONTEXT, PolicyConstants.PERSONAL_PROFILE_RESOURCE_TYPE, new Permission[] {
                PolicyConstants.PERM_MAINTAIN
            }, null));

        // Globa Profiles Page Tasks
        addMenuItem(null, new MenuItem("showGlobalProfiles", null, null, 100, false, SessionInfo.ALL_CONTEXTS));
        addMenuItem("showGlobalProfiles", new MenuItem("createGlobalProfile", "properties",
            "javascript: setActionTarget('create'); document.forms[0].submit();", 100, true, PolicyConstants.PROFILE_RESOURCE_TYPE,
            new Permission[] {
                PolicyConstants.PERM_CREATE_EDIT_AND_ASSIGN
            }) {

            public boolean isAvailable(int checkNavigationContext, SessionInfo info, HttpServletRequest request) {
                boolean available = super.isAvailable(checkNavigationContext, info, request);
                return available;
            }
        });

        // Show Available Roles
        addMenuItem(null, new MenuItem("showAvailableRoles", null, null, 100, false, SessionInfo.ALL_CONTEXTS));
        addMenuItem("showAvailableRoles", new MenuItem("createRole", "security",
            "javascript: setActionTarget('create'); document.forms[0].submit();", 100, true, 
            PolicyConstants.ROLES_RESOURCE_TYPE, new Permission[] {
                    PolicyConstants.PERM_CREATE
            }) {
            public boolean isAvailable(int checkNavigationContext, SessionInfo info, HttpServletRequest request) {
                boolean available = super.isAvailable(checkNavigationContext, info, request);
                if (available) {
                    available = CoreServlet.getServlet().getUserDatabase().supportsAccountCreation();
                }
                return available;
            }
        });
        
        // Show Available IP Restrictions
        addMenuItem(null, new MenuItem("showAvailableIpRestrictions", null, null, 100, false, SessionInfo.ALL_CONTEXTS));
        addMenuItem("showAvailableIpRestrictions", new MenuItem("createIpRestriction", "security",
            "javascript: setActionTarget('create'); document.forms[0].submit();", 100, true, 
            PolicyConstants.IP_RESTRICTIONS_RESOURCE_TYPE, new Permission[] {
                    PolicyConstants.PERM_CREATE
            }));

        // Show Available Accounts
        addMenuItem(null, new MenuItem("showAvailableAccounts", null, null, 100, false, SessionInfo.ALL_CONTEXTS));
        addMenuItem("showAvailableAccounts", new MenuItem("createAccount", "security",
            "javascript: setActionTarget('create'); document.forms[0].submit();", 100, true,
            PolicyConstants.ACCOUNTS_RESOURCE_TYPE, new Permission[] {
                PolicyConstants.PERM_CREATE
            }) {
            public boolean isAvailable(int checkNavigationContext, SessionInfo info, HttpServletRequest request) {
                boolean available = super.isAvailable(checkNavigationContext, info, request);
                if (available) {
                    available = CoreServlet.getServlet().getUserDatabase().supportsAccountCreation();
                }
                return available;
            }
        });

        // Edit Account Page
        addMenuItem(null, new MenuItem("editAccount", null, null, 100, false, SessionInfo.ALL_CONTEXTS));
        addMenuItem("editAccount", new MenuItem("setPassword", "security",
            "javascript: setActionTarget('setPassword'); document.forms[0].submit();", 100, true, "_self",
            SessionInfo.MANAGEMENT_CONSOLE_CONTEXT, PolicyConstants.ACCOUNTS_RESOURCE_TYPE, new Permission[] {
                PolicyConstants.PERM_EDIT
            }) {
            public boolean isAvailable(int checkNavigationContext, SessionInfo info, HttpServletRequest request) {
                boolean available = super.isAvailable(checkNavigationContext, info, request);
                if (available) {
                    available = CoreServlet.getServlet().getUserDatabase().supportsPasswordChange();
                }
                return available;
            }
        });
        addMenuItem("editAccount", new MenuItem("resetUserAttributes", "security",
                        "javascript: setActionTarget('resetUserAttributes'); document.forms[0].submit();", 200, true, "_self",
                        SessionInfo.MANAGEMENT_CONSOLE_CONTEXT, PolicyConstants.ACCOUNTS_RESOURCE_TYPE, new Permission[] {
                            PolicyConstants.PERM_EDIT
                       }));
        addMenuItem("editAccount", new MenuItem("sendUserMessage", "security", "javascript: setActionTarget('sendMessage'); document.forms[0].submit();", 300, true,
            "_self", SessionInfo.MANAGEMENT_CONSOLE_CONTEXT));
        addMenuItem("editAccount", new MenuItem("resetPrivateKey", "security", "javascript: setActionTarget('confirmResetPrivateKey'); document.forms[0].submit();", 400, true,
            "_self", SessionInfo.MANAGEMENT_CONSOLE_CONTEXT));

        // Authentication Schemes Page
        addMenuItem(null, new MenuItem("showAuthenticationSchemes", null, null, 100, false, SessionInfo.ALL_CONTEXTS));
        addMenuItem("showAuthenticationSchemes", new MenuItem("createAuthenticationScheme", "security",
            "/athenticationSchemeDetails.do", 100, true, "_self",
            SessionInfo.MANAGEMENT_CONSOLE_CONTEXT, PolicyConstants.AUTHENTICATION_SCHEMES_RESOURCE_TYPE, new Permission[] {
                PolicyConstants.PERM_CREATE_EDIT_AND_ASSIGN
            }));
        
        // User attribute definitions
        addMenuItem(null, new MenuItem("showUserAttributeDefinitions", null, null, 100, false, SessionInfo.ALL_CONTEXTS));
        addMenuItem("showUserAttributeDefinitions", new MenuItem("createUserAttributeDefinition", "security",
            "javascript: setActionTarget('create'); document.forms[0].submit();", 100, true, 
            PolicyConstants.USER_ATTRIBUTE_DEFINITIONS_RESOURCE_TYPE, new Permission[] {
                    PolicyConstants.PERM_MAINTAIN
            }));


        // User attributes
        addMenuItem(null, new MenuItem("userAttributes", null, null, 100, false, SessionInfo.ALL_CONTEXTS));
        addMenuItem("userAttributes", new MenuItem("resetAttributes", "security",
                        "javascript: setActionTarget('resetAttributes'); document.forms[0].submit();", 100, true, "_self",
                        SessionInfo.USER_CONSOLE_CONTEXT, PolicyConstants.USER_ATTRIBUTES_RESOURCE_TYPE, new Permission[] {
                            PolicyConstants.PERM_MAINTAIN
                        }));

        // Policies
        addMenuItem(null, new MenuItem("policies", null, null, 100, false, SessionInfo.ALL_CONTEXTS));
        addMenuItem("policies", new MenuItem("createPolicy", "policyframework", "/policyDetails.do", 100, true, null,
            SessionInfo.MANAGEMENT_CONSOLE_CONTEXT, PolicyConstants.POLICY_RESOURCE_TYPE, new Permission[] {
                PolicyConstants.PERM_CREATE
            }, null));

        // Configure Policies (breaks out from resource creation wizard)
        addMenuItem(null, new MenuItem("configurePolicies", null, null, 100, false, SessionInfo.ALL_CONTEXTS));
        addMenuItem("configurePolicies", new MenuItem("createPolicy", "policyframework", "/policyDetails.do", 100, true,
            null, SessionInfo.MANAGEMENT_CONSOLE_CONTEXT, PolicyConstants.POLICY_RESOURCE_TYPE, new Permission[] {
                PolicyConstants.PERM_CREATE
            }, null));
        addMenuItem("configurePolicies", new MenuItem("cancelConfigurePolicies", "policyframework",
            "javascript: setActionTarget('cancel'); document.forms[0].submit()", 100, true, "_self",

⌨️ 快捷键说明

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