// --- 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.keycert; import java.awt.*; import java.awt.event.*; import java.io.*; import javax.swing.*; import javax.swing.text.*; import com.netscape.admin.certsrv.*; import com.netscape.admin.certsrv.connection.*; import com.netscape.admin.certsrv.wizard.*; import com.netscape.certsrv.common.*; /** * This page is to install the certificate in the internal token. The user can * import the cert from the file or paste the Base 64 encoded blob in the * text area. * * @author Christine Ho * @version $Revision$, $Date$ * @see com.netscape.admin.certsrv.config.install */ class WPasteCertPage extends WizardBasePanel implements IWizardPanel { private JRadioButton mFileBtn; private JRadioButton mBase64Btn; private JTextField mFileText; private JTextArea mBase64Text; private JButton mPaste; private JTextArea introLbl; private Color mActiveColor; private String mCertContent = ""; private String mCertFilePath = ""; private static final String PANELNAME = "PASTECERTWIZARD"; private static final String HELPINDEX = "configuration-keycert-wizard-pastecert-help"; WPasteCertPage(JDialog parent) { super(PANELNAME); mParent = parent; init(); } WPasteCertPage(JDialog parent, JFrame frame) { super(PANELNAME); mParent = parent; mAdminFrame = frame; init(); } public boolean isLastPage() { return false; } public boolean initializePanel(WizardInfo info) { CertSetupWizardInfo wizardInfo = (CertSetupWizardInfo)info; if (wizardInfo.getOperationType().equals(wizardInfo.REQUESTTYPE)) return false; setBorder(makeTitledBorder(PANELNAME)); return true; } public boolean validatePanel() { if (mBase64Btn.isSelected()) { mCertContent = mBase64Text.getText().trim(); if (mCertContent.equals("")) { setErrorMessage("B64EEMPTY"); return false; } } else if (mFileBtn.isSelected()) { mCertFilePath = mFileText.getText().trim(); if (mCertFilePath.equals("")) { setErrorMessage("EMPTYFILE"); return false; } } return true; } public boolean concludePanel(WizardInfo info) { CertSetupWizardInfo wizardInfo = (CertSetupWizardInfo)info; startProgressStatus(); wizardInfo.addEntry(Constants.PR_PKCS10, mCertContent); //cert = CMSAdminUtil.getPureString(mBase64Text.getText().trim()); AdminConnection connection = wizardInfo.getAdminConnection(); NameValuePairs nvps = new NameValuePairs(); if (mFileBtn.isSelected()) { nvps.add(Constants.PR_CERT_FILEPATH, mCertFilePath); wizardInfo.setCertFilePath(mCertFilePath); wizardInfo.setPKCS10(""); } else if (mBase64Btn.isSelected()) { nvps.add(Constants.PR_PKCS10, mCertContent); wizardInfo.setPKCS10(mCertContent); wizardInfo.setCertFilePath(""); } try { NameValuePairs response = connection.process( DestDef.DEST_SERVER_ADMIN, ScopeDef.SC_CERTINFO, wizardInfo.getInstallCertType(), nvps); for (int i=0; i