summaryrefslogtreecommitdiffstats
path: root/pki/base/console/src/com/netscape/admin/certsrv/security/PKCS11AddModuleDialog.java
diff options
context:
space:
mode:
Diffstat (limited to 'pki/base/console/src/com/netscape/admin/certsrv/security/PKCS11AddModuleDialog.java')
-rw-r--r--pki/base/console/src/com/netscape/admin/certsrv/security/PKCS11AddModuleDialog.java165
1 files changed, 165 insertions, 0 deletions
diff --git a/pki/base/console/src/com/netscape/admin/certsrv/security/PKCS11AddModuleDialog.java b/pki/base/console/src/com/netscape/admin/certsrv/security/PKCS11AddModuleDialog.java
new file mode 100644
index 000000000..7b5fe12a6
--- /dev/null
+++ b/pki/base/console/src/com/netscape/admin/certsrv/security/PKCS11AddModuleDialog.java
@@ -0,0 +1,165 @@
+// --- BEGIN COPYRIGHT BLOCK ---
+// 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; version 2 of the License.
+//
+// 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.,
+// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+//
+// (C) 2007 Red Hat, Inc.
+// All rights reserved.
+// --- END COPYRIGHT BLOCK ---
+package com.netscape.admin.certsrv.security;
+
+import com.netscape.management.client.console.ConsoleInfo;
+
+import javax.swing.*;
+import javax.swing.JFileChooser;
+
+import java.awt.*;
+import java.awt.event.*;
+import java.util.*;
+
+import com.netscape.management.client.util.*;
+import com.netscape.management.nmclf.*;
+
+
+class PKCS11AddModuleDialog extends AbstractDialog {
+
+ KeyCertTaskInfo taskInfo;
+
+ ResourceSet resource = new ResourceSet("com.netscape.admin.certsrv.security.PKCS11ManagementResource");
+
+ JRadioButton _isDLL;
+ JRadioButton _isJAR;
+ JTextField _dllname = new JTextField(10);
+ JTextField _filename = new JTextField(10);
+
+ boolean moduleAdded;
+
+ protected boolean isAdded() {
+ return moduleAdded;
+ }
+
+ protected void okInvoked() {
+ moduleAdded = false;
+ taskInfo.clear();
+
+ taskInfo.put("filename", _filename.getText());
+ taskInfo.put("format", _isDLL.isSelected() ? "dll" : "jar");
+ if (_isDLL.isSelected())
+ taskInfo.put("dllname", _dllname.getText());
+
+ Response response = null;
+ try {
+ response = taskInfo.exec(taskInfo.SEC_ADDMOD);
+ } catch (Exception e) {
+ SuiOptionPane.showMessageDialog(
+ UtilConsoleGlobals.getActivatedFrame(), e.getMessage());
+ return;
+ }
+
+ try {
+ Message m = (Message)(response.getMessages().elementAt(0));
+ MessageDialog.messageDialog(m);
+ moduleAdded = m.isSuccess();
+ } catch (Exception ex) {}
+
+ if (((Message) response.getMessages().elementAt(0)).getStatus()
+ == Message.NMC_SUCCESS)
+ super.okInvoked();
+ }
+
+ protected void helpInvoked() {
+ Help help = new Help(resource);
+ help.help("PKCS11AddModuleDialog", "help");
+ }
+
+
+ /**
+ * Listen to changes (key strokes or change in text area or text field)
+ * then determain (call setEnableNextButton()) if wizard can proceed
+ */
+ class MyActionListener implements KeyListener, ActionListener {
+ public void keyTyped(KeyEvent e) {}
+ public void keyPressed(KeyEvent e) {}
+ public void keyReleased(KeyEvent e) {}
+ public void actionPerformed(ActionEvent e) {
+ if (e.getActionCommand().equals("ENABLED"))
+ _dllname.setEnabled(_isDLL.isSelected());
+ }
+ }
+
+ public PKCS11AddModuleDialog(ConsoleInfo consoleInfo) {
+ super(null, "", true, OK | CANCEL | HELP);
+
+ setTitle(resource.getString("PKCS11AddModuleDialog", "dialogTitle"));
+
+
+ taskInfo = new KeyCertTaskInfo(consoleInfo);
+
+ Container mainPane = getContentPane();
+ mainPane.setLayout(new GridBagLayout());
+
+ _isDLL = new JRadioButton(
+ resource.getString("PKCS11AddModuleDialog", "DLL"), true);
+ _isJAR = new JRadioButton(
+ resource.getString("PKCS11AddModuleDialog", "JAR"), false);
+
+ ButtonGroup buttonGroup = new ButtonGroup();
+ buttonGroup.add(_isDLL);
+ buttonGroup.add(_isJAR);
+
+ _isDLL.setActionCommand("ENABLED");
+ _isDLL.addActionListener(new MyActionListener());
+ _isJAR.setActionCommand("ENABLED");
+ _isJAR.addActionListener(new MyActionListener());
+
+ GridBagUtil.constrain(mainPane,
+ new JLabel( resource.getString("PKCS11AddModuleDialog",
+ "fileType")), 0, 0, 1, 1, 1.0, 1.0,
+ GridBagConstraints.NORTH,
+ GridBagConstraints.HORIZONTAL, 0, 0,
+ DIFFERENT_COMPONENT_SPACE, 0);
+
+ GridBagUtil.constrain(mainPane, _isDLL, 0, 1, 1, 1, 1.0, 1.0,
+ GridBagConstraints.NORTH,
+ GridBagConstraints.HORIZONTAL, 0, 0, COMPONENT_SPACE, 0);
+
+ GridBagUtil.constrain(mainPane, _dllname, 1, 1, 1, 1, 1.0, 1.0,
+ GridBagConstraints.NORTH,
+ GridBagConstraints.HORIZONTAL, 0, 0, COMPONENT_SPACE, 0);
+
+ GridBagUtil.constrain(mainPane, _isJAR, 0, 2, 1, 1, 1.0, 1.0,
+ GridBagConstraints.NORTH,
+ GridBagConstraints.HORIZONTAL, 0, 0, COMPONENT_SPACE, 0);
+
+ GridBagUtil.constrain(mainPane, Box.createVerticalGlue(), 0, 3,
+ 1, 1, 1.0, 1.0, GridBagConstraints.NORTH,
+ GridBagConstraints.HORIZONTAL, 0, 0, 0, 0);
+
+ GridBagUtil.constrain(mainPane,
+ new JLabel( resource.getString("PKCS11AddModuleDialog",
+ "fileName")), 0, 4, 1, 1, 1.0, 1.0,
+ GridBagConstraints.NORTH,
+ GridBagConstraints.HORIZONTAL, 0, 0,
+ DIFFERENT_COMPONENT_SPACE, 0);
+
+ GridBagUtil.constrain(mainPane, _filename, 0, 5, 1, 1, 1.0,
+ 1.0, GridBagConstraints.NORTH,
+ GridBagConstraints.HORIZONTAL, 0, 0, COMPONENT_SPACE, 0);
+
+ //getContentPane().add(mainPane);
+
+ pack();
+ setMinimumSize(getSize());
+ }
+
+}
+