categorypropertiesaction.java

来自「这是linux下ssl vpn的实现程序」· Java 代码 · 共 49 行

JAVA
49
字号
package com.sslexplorer.properties.actions;

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

import javax.servlet.http.HttpServletRequest;

import com.sslexplorer.boot.PropertyDefinition;
import com.sslexplorer.core.CoreServlet;
import com.sslexplorer.properties.PropertyDefinitionCategory;
import com.sslexplorer.properties.PropertyItem;
import com.sslexplorer.properties.forms.DefaultPropertiesForm;
import com.sslexplorer.security.Constants;
import com.sslexplorer.security.User;


public class CategoryPropertiesAction 
    extends PropertiesAction {

    protected void rebuildItems(int parentCategory, DefaultPropertiesForm pf, HttpServletRequest request, User user) throws Exception {
        List categoryDefinitions = new ArrayList();
        PropertyDefinitionCategory category = CoreServlet.getServlet().getPropertyDatabase().getPropertyDefinitionCategory(
            parentCategory);
        if(category == null) {
            throw new Exception("No category with ID of " + parentCategory);
        }
        categoryDefinitions.add(category);
        pf.setSelectedCategory(category.getId());
        pf.setParentCategory(parentCategory);
        List propertyItems = new ArrayList();
        List propertyDefinitions = CoreServlet.getServlet().getPropertyDatabase().getPropertyDefinitions(pf.getProfileScope());
        for (Iterator i = propertyDefinitions.iterator(); i.hasNext();) {
            PropertyDefinition def = (PropertyDefinition) i.next();
            if ((pf.getSelectedPropertyProfile() == 0 || (pf.getSelectedPropertyProfile() > 0 && def.getVisibility() == PropertyDefinition.PROFILE))
                            && def.getCategory() == pf.getSelectedCategory()) {
                String propertyUser = pf.getProfileScope().equals(Constants.SCOPE_PERSONAL) ? user.getPrincipalName() : "";
                String val = CoreServlet.getServlet().getPropertyDatabase().getProperty(pf.getSelectedPropertyProfile(),
                    propertyUser, def.getName());
                propertyItems.add(pf.retrieveItem(def.getName(), new PropertyItem(this, request, def, val)));
            }
        }
        PropertyItem[] items = new PropertyItem[propertyItems.size()];
        propertyItems.toArray(items);
        pf.setPropertyItems(items);
        pf.setCategoryDefinitions(categoryDefinitions);
    }
}

⌨️ 快捷键说明

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