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

📄 messageform.java

📁 这是linux下ssl vpn的实现程序
💻 JAVA
字号:
package com.sslexplorer.setup.forms;

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

import javax.servlet.http.HttpServletRequest;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.Globals;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.util.LabelValueBean;

import com.sslexplorer.boot.PropertyList;
import com.sslexplorer.core.CoreServlet;
import com.sslexplorer.core.forms.CoreForm;
import com.sslexplorer.input.MultiSelectDataSource;
import com.sslexplorer.input.MultiSelectSelectionModel;
import com.sslexplorer.notification.MessageSink;
import com.sslexplorer.policyframework.PolicyNestingDataSource;
import com.sslexplorer.policyframework.Resource;
import com.sslexplorer.security.User;
import com.sslexplorer.tabs.TabModel;

public class MessageForm extends CoreForm implements TabModel {
    final static Log log = LogFactory.getLog(MessageForm.class);
    private PropertyList selectedAccounts;
    private PropertyList selectedRoles;
    private PropertyList selectedPolicies;
    private MultiSelectDataSource selectedPolicyDataSource;
    private MultiSelectSelectionModel selectedPolicySelection;
    private String subject;
    private String content;
    private boolean urgent;
    private User sender;
    private String selectedTab = "message";
    private List availableSinks;
    private String selectedSink;

    public MessageForm() {
        super();
        selectedAccounts = new PropertyList();
        selectedRoles = new PropertyList();
        selectedPolicies = new PropertyList();
        selectedPolicyDataSource = new PolicyNestingDataSource(null);
        selectedPolicySelection = new MultiSelectSelectionModel(selectedPolicyDataSource, selectedPolicies);
    }
    
    public String getSelectedSink() {
        return selectedSink;
    }
    
    public void setSelectedSink(String selectedSink) {
        this.selectedSink = selectedSink;
    }
    
    public List getAvailableSinks() {
        return availableSinks;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getSubject() {
        return subject;
    }

    public void setSubject(String subject) {
        this.subject = subject;
    }

    public boolean getUrgent() {
        return urgent;
    }

    public void setUrgent(boolean urgent) {
        this.urgent = urgent;
    }

    public String getSelectedPolicies() {
        return selectedPolicies.getAsTextFieldText();
    }

    public void setNestedPolicies(String nestedPolicies) {
        this.selectedPolicies.setAsTextFieldText(nestedPolicies);
    }

    public String getSelectedAccounts() {
        return selectedAccounts.getAsTextFieldText();
    }

    public void setSelectedAccounts(String selectedAccounts) {
        this.selectedAccounts.setAsTextFieldText(selectedAccounts);
    }

    public String getSelectedRoles() {
        return selectedRoles.getAsTextFieldText();
    }

    public void setSelectedRoles(String selectedRoles) {
        this.selectedRoles.setAsTextFieldText(selectedRoles);
    }

    public void setSelectedPolicies(String selectedPolicies) {
        this.selectedPolicies.setAsTextFieldText(selectedPolicies);
    }

    public MultiSelectSelectionModel getSelectedPolicySelectionModel() {
        return selectedPolicySelection;
    }

    public void setSelectedAccounts(PropertyList selectedAccounts) {
        this.selectedAccounts = selectedAccounts;
    }

    public void setSelectedRoles(PropertyList selectedRoles) {
        this.selectedRoles = selectedRoles;
    }

    public PropertyList getSelectedPoliciesList() {
        return selectedPolicies;
    }

    public PropertyList getSelectedAccountsList() {
        return selectedAccounts;
    }

    public PropertyList getSelectedRolesList() {
        return selectedRoles;
    }

    public Resource getResourceByName(String name) throws Exception {
        return CoreServlet.getServlet().getPolicyDatabase().getPolicyByName(name);
    }
    
    public User getSender() {
        return sender;
    }

    public void initialise(MultiSelectSelectionModel selectedPolicySelection,
                    PropertyList selectedPolicies, User send) throws Exception {
        this.selectedPolicySelection = selectedPolicySelection;
        this.selectedPolicies = selectedPolicies;
        availableSinks = new ArrayList();
        availableSinks.add(new LabelValueBean("First", "^"));
        availableSinks.add(new LabelValueBean("All", "*"));
        List l = CoreServlet.getServlet().getNotifier().getSinks();
        for(Iterator i = l.iterator(); i.hasNext(); ) {
            MessageSink sink = (MessageSink)i.next();
            availableSinks.add(new LabelValueBean(sink.getName(), sink.getName()));
        }
        selectedAccounts = new PropertyList();
        selectedRoles = new PropertyList();
        selectedPolicySelection.rebuild();
    }

    public void reset(ActionMapping mapping, HttpServletRequest request) {
        super.reset(mapping, request);
        urgent = false;
    }

    public int getTabCount() {
        return 2;
    }

    public String getTabName(int idx) {
        switch(idx) {
            case 0:
                return "message";
            default:
                return "recipients";
        }
    }

    public String getTabTitle(int idx) {
        
        // Get from resources
        return null;
    }

    public String getSelectedTab() {
        return selectedTab;
    }

    public void setSelectedTab(String selectedTab) {
        this.selectedTab = selectedTab;
    }

    public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {
        ActionErrors errs = null;
        if(isCommiting()) {
            if(getSubject().equals("")) {
                errs = new ActionErrors();
                errs.add(Globals.ERROR_KEY, new ActionMessage("sendMessage.error.noSubject"));
            }
            if(getSelectedAccountsList().size() == 0 &&
                            getSelectedRolesList().size() == 0 &&
                            getSelectedPoliciesList().size() == 0) {
                errs = errs == null ? new ActionErrors() : errs;
                errs.add(Globals.ERROR_KEY, new ActionMessage("sendMessage.error.noRecipients"));            
            }
        }
        return errs;
        
    }

    /* (non-Javadoc)
     * @see com.sslexplorer.tabs.TabModel#getTabBundle(int)
     */
    public String getTabBundle(int idx) {
        return null;
    }
}

⌨️ 快捷键说明

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