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

📄 resourcepermissionsform.java

📁 这是linux下ssl vpn的实现程序
💻 JAVA
字号:
/*
 *  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.policyframework.forms;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import javax.servlet.http.HttpSession;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import com.sslexplorer.core.CoreServlet;
import com.sslexplorer.policyframework.ResourceItemModel;
import com.sslexplorer.policyframework.ResourcePermission;
import com.sslexplorer.policyframework.ResourcePermissionResourceItem;
import com.sslexplorer.policyframework.ResourceUtil;
import com.sslexplorer.table.Pager;

public class ResourcePermissionsForm extends AbstractResourcesForm {

    final static Log log = LogFactory.getLog(ResourcePermissionsForm.class);

    private PermittingResourcePermissionPager permittingResourcePermissionPager;

    public ResourcePermissionsForm() {
        super(new ResourcePermissionsModel());
        permittingResourcePermissionPager = new PermittingResourcePermissionPager();
    }

    public void initialize(List resources, Class resourceItemClass, HttpSession session, List permittingResourcePermissions) {
        super.initialize(resources, resourceItemClass, session,  "name");
        try {
            permittingResourcePermissionPager.rebuild(permittingResourcePermissions);
        } catch (Exception e) {
            log.error("Failed to get permitting resource permissions.", e);
        }
    }

    public PermittingResourcePermissionPager getPermittingResourcePermissionPager() {
        return permittingResourcePermissionPager;
    }

    static class ResourcePermissionsModel extends ResourceItemModel {
        public ResourcePermissionsModel() {
            super("resourcePermissions");
        }

        public int getColumnCount() {
            return 4;
        }

        public String getColumnName(int col) {
            if (col == 2) {
                return "permissionClass";
            }
            else if (col == 3) {
                return "onwardDelegatable";
            }
            return super.getColumnName(col);
        }

        public int getColumnWidth(int col) {
            return 0;
        }
    }

    public class PermittingResourcePermissionPager extends Pager {
        
        private List resourcePermissions;

        PermittingResourcePermissionPager() {
            super(new PermittingResourcePermissionsModel());
        }
        
        public List getResourcePermissions() {
            return resourcePermissions;
        }

        public void rebuild(List permittingResourcePermissions) throws Exception {
            getModel().clear();
            resourcePermissions = new ArrayList();
            for (Iterator i = permittingResourcePermissions.iterator(); i.hasNext();) {
                ResourcePermission rp = (ResourcePermission) i.next();
                if (!ResourceUtil.resourceItemListContainsResource(ResourcePermissionsForm.this.getModel().getItems(), rp)) {
                    resourcePermissions.add(rp);
                    ResourcePermissionResourceItem rpri = new ResourcePermissionResourceItem(rp, CoreServlet.getServlet()
                        .getPolicyDatabase().getPoliciesAttachedToResource(rp));
                    getModel().addItem(rpri);
                }
            }
        }
    }

    static class PermittingResourcePermissionsModel extends ResourceItemModel {
        public PermittingResourcePermissionsModel() {
            super("permittingResourcePermissions");
        }

        public int getColumnCount() {
            return 4;
        }

        public String getColumnName(int col) {
            if (col == 2) {
                return "permissionClass";
            } else if (col == 3) {
                return "onwardDelegtable";
            }
            return super.getColumnName(col);
        }

        public int getColumnWidth(int col) {
            return 0;
        }
    }
}

⌨️ 快捷键说明

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