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

📄 permisroleassignmentpolicy.java

📁 一个完整的XACML工程,学习XACML技术的好例子!
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
        roleAssignmentIDPanel.setLayout(new AbsoluteLayout());
        roleAssignmentIDPanel.setBorder(new TitledBorder(
                         null, 
                         ResourceBundle.getBundle("issrg/editor/gui/Editor_GUI_i18n").
                         getString("rol_ass_brd_role_assign"), 
                         TitledBorder.CENTER, 
                         TitledBorder.DEFAULT_POSITION));
        roleAssignIDTextField.setToolTipText(
                         ResourceBundle.getBundle("issrg/editor/gui/Editor_GUI_i18n").
                         getString("rol_ass_tt_tf_role_assign"));
        highLighter(roleAssignIDTextField);
        roleAssignIDTextField.addFocusListener(this);
        roleAssignmentIDPanel.add(roleAssignIDTextField, 
                                     new AbsoluteConstraints(160, 20, 170, -1));
        roleAssignmentPanel.add(roleAssignmentIDPanel, 
                                       new AbsoluteConstraints(10, 0, 500, 50));
        roleAssignmentTabbedPane.addTab(
                         ResourceBundle.getBundle("issrg/editor/gui/Editor_GUI_i18n").
                         getString("sub_pol_tab_cm"), 
                         roleAssignmentPanel);
        roleAssignmentInternalFrame.getContentPane().add(
                                       roleAssignmentTabbedPane, 
                                       new AbsoluteConstraints(0, 0, 530, 510));
        add(roleAssignmentInternalFrame, BorderLayout.CENTER);
        add(roleAssignmentInternalFrame, BorderLayout.CENTER);
        roleAssignmentInternalFrame.show();
        setSize(530, 679);
        roleAssignmentInternalFrame.setBounds(255, 50, 530, 540);
        add(roleAssignmentInternalFrame);
        setBackground(new Color(153, 153, 204));
        setLocation(150, 45);
        
        return roleAssignmentInternalFrame;
    }

    
    /**
     * Closes the Role Assignment Policy window.
     *
     * @param evt   Close button operated.
     */
        
    private void roleAssignmentCloseButtonActionPerformed() 
    {
        roleAssignmentInternalFrame.setVisible(false);
    }

    
    /**
     * Clears the data entered by the user from all data entry points
     *
     * @param evt   Cancel button operated.
     */
        
    private void roleAssignmentCancelButtonActionPerformed() 
    {
         if(editPressed){
            roleAssignmentEditActionPerformed();
        }
        else{
        String answer = PermisPolicyEditorMenu.dialog.confirmDialog(                                          
                         ResourceBundle.getBundle("issrg/editor/gui/Editor_GUI_i18n").
                         getString("sub_pol_warn_msg_a") + 
                         "\n" +                         
                         ResourceBundle.getBundle("issrg/editor/gui/Editor_GUI_i18n").
                         getString("sub_pol_warn_msg_b"),  
                         "Warning");
        if (answer.equals("No")){
            return;
        }
        else{
            clearBoxes();
        }
     }
    }

    
    /**
     * Collects the data entered by the use and writes it to the Document 
     * Object Model (DOM), the PERMIS Policy, in memory. Informs the user of the
     * outcome of the operation.
     *
     * @param evt   OK button operated.
     */
        
    private void roleAssignmentOkButtonActionPerformed() 
    {
        Character ch = null;
        String s = getIDInitialization();
         //checks if the ID already exists in the policy
        if (parent.getIdHashtable(roleAssignIDTextField.getText())){
            PermisPolicyEditorMenu.dialog.showOkDialog(
            ResourceBundle.getBundle("issrg/editor/gui/Editor_GUI_i18n").
                   getString("pol_err_msg_id") +" "+
                   getString(roleAssignIDTextField.getText())+" "+
                   ResourceBundle.getBundle("issrg/editor/gui/Editor_GUI_i18n").
                   getString("pol_err_msg_id_exist"));
           return;
        }
        else if (roleAssignIDTextField.getText().equals(s)){
            PermisPolicyEditorMenu.dialog.showOkDialog(
                  ResourceBundle.getBundle("issrg/editor/gui/Editor_GUI_i18n").
                   getString("sub_pol_err_msg_c") + " "+
                   ResourceBundle.getBundle("issrg/editor/gui/Editor_GUI_i18n").
                   getString("pol_id_text_err_msg") );
             roleAssignIDTextField.requestFocus();
             roleAssignIDTextField.selectAll();
            return;
        }
        else if (roleAssignIDTextField.getText().equals("")){
            PermisPolicyEditorMenu.dialog.showOkDialog(
            ResourceBundle.getBundle("issrg/editor/gui/Editor_GUI_i18n").
                   getString("rol_ass_brd_role_assign") + " " +
                   ResourceBundle.getBundle("issrg/editor/gui/Editor_GUI_i18n").
                   getString("sub_pol_err_msg_a"));                          
            roleAssignIDTextField.requestFocus();
            roleAssignIDTextField.selectAll();
            return;
            }
        
         else if(ch.isDigit(roleAssignIDTextField.getText().charAt(0))){
               PermisPolicyEditorMenu.dialog.showOkDialog(
                         ResourceBundle.getBundle("issrg/editor/gui/Editor_GUI_i18n").
                   getString("rol_ass_brd_role_assign") + 
                         "\n" +                          
                         ResourceBundle.getBundle("issrg/editor/gui/Editor_GUI_i18n").
                         getString("sub_pol_err_msg_b"));
             roleAssignIDTextField.requestFocus();
             roleAssignIDTextField.selectAll();
             return;
        }
         else if(!validateID(roleAssignIDTextField.getText().trim())){
           roleAssignIDTextField.requestFocus();
            return ;
        }
        else {
            
            if(loader.isID("RoleAssignment",roleAssignIDTextField.getText())){
              PermisPolicyEditorMenu.permisXmlDom.deleteNode(
                                                  "RoleAssignment", 
                                                  roleAssignIDTextField.getText());
            }
            PermisPolicyEditorMenu.permisXmlDom.addDomAttr(
                                               "RoleAssignmentPolicy" ,
                                               "RoleAssignment", 
                                               ID, 
                                               roleAssignIDTextField.getText());
            String selected = roleSubjectComboBox.getSelectedItem().toString();
            PermisPolicyEditorMenu.permisXmlDom.setDomElementAttr(
                                               "RoleAssignment", 
                                               "SubjectDomain", 
                                                ID, 
                                                               selected, 
                                               roleAssignIDTextField.getText());
            PermisPolicyEditorMenu.permisXmlDom.addRoleListDom(
                                               roleAssignmentListModel, 
                                               "RoleAssignment", 
                                               "RoleList", 
                                               roleAssignIDTextField.getText());
            String selectedItem = roleAssignSoaComboBox.getSelectedItem().
                                                                     toString();
            if (!check.isSelected()) {
                PermisPolicyEditorMenu.permisXmlDom.setDomElementAttr(
                                               "RoleAssignment", 
                                               "Delegate", 
                                               "Depth", 
                                               "0",
                                               roleAssignIDTextField.getText());
            } else {
                if (unlimited.isSelected()) {
                    PermisPolicyEditorMenu.permisXmlDom.setDomElementAttr(
                                               "RoleAssignment", 
                                               "Delegate",
                                               "",
                                               "", 
                                               roleAssignIDTextField.getText());
                } else {
                    PermisPolicyEditorMenu.permisXmlDom.setDomElementAttr(
                                               "RoleAssignment", 
                                               "Delegate", 
                                               "Depth", 
                                               depth.getText(),
                                               roleAssignIDTextField.getText());
                }
            }

            PermisPolicyEditorMenu.permisXmlDom.setDomElementAttr(
                                               "RoleAssignment", 
                                               "SOA", 
                                               ID, 
                                               selectedItem,
                                               roleAssignIDTextField.getText());
           
            PermisPolicyEditorMenu.permisXmlDom.createDomElement(
                                               "RoleAssignment", 
                                               "Validity", 
                                               roleAssignIDTextField.getText());
            
            //refresh the ReadablePolicy view
            if(parent.getPermisParent().getMenuItems().
                                                   getReadablePolicy() != null){
                    parent.getPermisParent().getMenuItems().getReadablePolicy().
                                                   comboBoxSetSelectedIndex( 5);
            }
            // Refresh the viewComboBox
            performRefresh();
            highLighter(roleAssignIDTextField);
            roleAssignIDTextField.requestFocus();
            roleAssignIDTextField.selectAll();
            parent.putIdHashtable(roleAssignIDTextField.getText());
            PermisPolicyEditorMenu.permisXmlDom.showMessage();
            clearBoxes();
            roleAssignmentInternalFrame.setVisible(false);
        } 
    }

    
    /**
     * Removes the selected Role from the List of Role(s)
     *
     * @param   evt     Remove button operated
     */
        
    private void roleAssignmentRemoveSubjectButtonActionPerformed()
    {
      RemoveFromList deleteItem = new RemoveFromList();
      deleteItem.removeFromList( roleAssignmentListModel, 
                                 roleAssignmentList);
      roleAssignmentRemoveSubjectButton.setEnabled(roleAssignmentListModel.getSize()!=0);
    }

    
    /**
     * Adds the selected Role to the List of Role(s)
     *
     * @param   evt     Add button operated
     */
        
    private void roleAssignmentAddButtonActionPerformed() 
    {
        PermisDataBox dataListener = new PermisDataBox();
         if (checkDuplication(roleAssignmentComboBox.getSelectedItem().toString(),
                                                  roleAssignmentListModel)){
           
         PermisPolicyEditorMenu.dialog.showOkDialog(
                                        "Role already exist");
                                                      return ;
                                                      
        }
        dataListener.addFromComboBoxToList( roleAssignmentRemoveSubjectButton, 
                                            roleAssignmentListModel, 
                                            roleAssignmentList, 
                                            roleAssignmentComboBox);
    }

    
    /**
     * Closes the Role Assignment Policy window.
     *
     * @param evt   Close button operated.
     */
        
    private void roleAssignCloseButtonActionPerformed() 
    {
        roleAssignmentInternalFrame.setVisible(false);
    }

    
    /**
     *  Deletes the node selected in the combo box from the DOM.
     *
     * @param evt       Delete button (view) operated.     
     */
        
    private void roleAssignmentDeleteButtonActionPerformed()
    {
        if (roleAssignViewComboBox.getSelectedIndex() != -1){
            String roleId = roleAssignViewComboBox.getSelectedItem().toString();
            PermisPolicyEditorMenu.permisXmlDom.deleteNode( "RoleAssignment", 
                                                            roleId);
            roleAssignViewComboBox.removeItem(
                                      roleAssignViewComboBox.getSelectedItem());
            performRefresh();
            roleAssignmentViewListModel.clear();
            roleAssignViewScrollPane.setViewportView(roleAssignmentViewList);
        }
    }

    
    /**
     * To be added
     *

⌨️ 快捷键说明

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