http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/ViewCertDetailsDialog.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/ViewCertDetailsDialog.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/ViewCertDetailsDialog.java deleted file mode 100644 index 8cbed53..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/ViewCertDetailsDialog.java +++ /dev/null @@ -1,509 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2007 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - ******************************************************************************/ -package net.sf.taverna.t2.workbench.ui.credentialmanager; - -import static java.awt.BorderLayout.CENTER; -import static java.awt.BorderLayout.NORTH; -import static java.awt.BorderLayout.SOUTH; -import static java.awt.Font.BOLD; -import static java.awt.Font.PLAIN; -import static java.awt.GridBagConstraints.LINE_START; -import static javax.security.auth.x500.X500Principal.RFC2253; -import static javax.swing.ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED; -import static javax.swing.ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED; -import static javax.swing.SwingUtilities.invokeLater; - -import java.awt.BorderLayout; -import java.awt.FlowLayout; -import java.awt.Font; -import java.awt.GridBagConstraints; -import java.awt.GridBagLayout; -import java.awt.Insets; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.awt.event.WindowAdapter; -import java.awt.event.WindowEvent; -import java.math.BigInteger; -import java.security.cert.CertificateEncodingException; -import java.security.cert.X509Certificate; -import java.util.ArrayList; - -import javax.swing.DefaultListModel; -import javax.swing.JButton; -import javax.swing.JDialog; -import javax.swing.JFrame; -import javax.swing.JLabel; -import javax.swing.JList; -import javax.swing.JPanel; -import javax.swing.JScrollPane; -import javax.swing.border.CompoundBorder; -import javax.swing.border.EmptyBorder; -import javax.swing.border.EtchedBorder; - -import org.apache.taverna.security.credentialmanager.CMException; -import org.apache.taverna.security.credentialmanager.DistinguishedNameParser; -import org.apache.taverna.security.credentialmanager.ParsedDistinguishedName; -import net.sf.taverna.t2.workbench.helper.NonBlockedHelpEnabledDialog; - -/** - * Displays the details of a X.509 certificate. - * - * Inspired by the Portlecle tool (http://portecle.sourceforge.net/). and the - * view certificate dialog from Firefox's Certificate Manager. - */ -@SuppressWarnings("serial") -public class ViewCertDetailsDialog extends NonBlockedHelpEnabledDialog { - // Logger - //private static Logger logger = Logger.getLogger(ViewCertDetailsDialog.class); - - /** Stores certificate to display*/ - private X509Certificate cert; - /** Stores list of serviceURLs to display*/ - private ArrayList<String> serviceURLs; - private final DistinguishedNameParser dnParser; - - /** - * Creates new ViewCertDetailsDialog dialog where the parent is a frame. - */ - public ViewCertDetailsDialog(JFrame parent, String title, boolean modal, - X509Certificate crt, ArrayList<String> serviceURLs, - DistinguishedNameParser dnParser) throws CMException { - super(parent, title, modal); - this.cert = crt; - this.serviceURLs = serviceURLs; - this.dnParser = dnParser; - initComponents(); - } - - /** - * Creates new ViewCertDetailsDialog dialog where the parent is a dialog. - */ - public ViewCertDetailsDialog(JDialog parent, String title, boolean modal, - X509Certificate crt, ArrayList<String> urlList, - DistinguishedNameParser dnParser) throws CMException { - super(parent, title, modal); - cert = crt; - serviceURLs = urlList; - this.dnParser = dnParser; - initComponents(); - } - - /** - * Initialise the dialog's GUI components. - * - * @throws CMException - * A problem was encountered getting the certificates' details - */ - private void initComponents() throws CMException { - // Certificate details: - - // Grid Bag Constraints templates for labels (column 1) and - // values (column 2) of certificate details - GridBagConstraints gbcLabel = new GridBagConstraints(); - gbcLabel.gridx = 0; - gbcLabel.ipadx = 20; - gbcLabel.gridwidth = 1; - gbcLabel.gridheight = 1; - gbcLabel.insets = new Insets(2, 15, 2, 2); - gbcLabel.anchor = LINE_START; - - GridBagConstraints gbcValue = new GridBagConstraints(); - gbcValue.gridx = 1; - gbcValue.gridwidth = 1; - gbcValue.gridheight = 1; - gbcValue.insets = new Insets(2, 5, 2, 2); - gbcValue.anchor = LINE_START; - - /* - * Netscape Certificate Type non-critical extension (if any) defines the - * intended uses of the certificate - to make it look like firefox's - * view certificate dialog. From openssl's documentation: "The [above] - * extension is non standard, Netscape specific and largely obsolete. - * Their use in new applications is discouraged." - * - * TODO replace with "basicConstraints, keyUsage and extended key usage - * extensions which are now used instead." - */ -// byte[] intendedUses = cert.getExtensionValue("2.16.840.1.113730.1.1"); //Netscape Certificate Type OID/* -// JLabel jlIntendedUses = null; -// JTextField jtfIntendedUsesValue = null; -// JPanel jpUses = null; -// GridBagConstraints gbc_jpUses = null; -// if (intendedUses != null) -// { -// jlIntendedUses = new JLabel("This certificate has been approved for the following uses:"); -// jlIntendedUses.setFont(new Font(null, Font.BOLD, 11)); -// jlIntendedUses.setBorder(new EmptyBorder(5,5,5,5)); -// -// jtfIntendedUsesValue = new JTextField(45); -// jtfIntendedUsesValue.setText(CMUtils.getIntendedCertificateUses(intendedUses)); -// jtfIntendedUsesValue.setEditable(false); -// jtfIntendedUsesValue.setFont(new Font(null, Font.PLAIN, 11)); -// -// jpUses = new JPanel(new BorderLayout()); -// jpUses.add(jlIntendedUses, BorderLayout.NORTH); -// jpUses.add(jtfIntendedUsesValue, BorderLayout.CENTER); -// JSeparator jsp = new JSeparator(JSeparator.HORIZONTAL); -// jpUses.add(jsp, BorderLayout.SOUTH); -// -// gbc_jpUses = (GridBagConstraints) gbcLabel.clone(); -// gbc_jpUses.gridy = 0; -// gbc_jpUses.gridwidth = 2; //takes two columns -// gbc_jpUses.insets = new Insets(5, 5, 5, 5);//has slightly bigger insets -// -// } - - //Issued To - JLabel jlIssuedTo = new JLabel("Issued To"); - jlIssuedTo.setFont(new Font(null, Font.BOLD, 11)); - GridBagConstraints gbc_jlIssuedTo = (GridBagConstraints) gbcLabel.clone(); - gbc_jlIssuedTo.gridy = 1; - gbc_jlIssuedTo.gridwidth = 2; //takes two columns - gbc_jlIssuedTo.insets = new Insets(5, 5, 5, 5);//has slightly bigger insets - - // Distinguished Name (DN) - String sDN = cert.getSubjectX500Principal().getName(RFC2253); - ParsedDistinguishedName parsedDN = dnParser.parseDN(sDN); - // Extract the CN, O, OU and EMAILADDRESS fields - String sCN = parsedDN.getCN(); - String sOrg = parsedDN.getO(); - String sOU = parsedDN.getOU(); - //String sEMAILADDRESS = CMX509Util.getEmilAddress(); - - // Common Name (CN) - JLabel jlCN = new JLabel("Common Name (CN)"); - jlCN.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlCN = (GridBagConstraints) gbcLabel.clone(); - gbc_jlCN.gridy = 2; - JLabel jlCNValue = new JLabel(sCN); - jlCNValue.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlCNValue = (GridBagConstraints) gbcValue.clone(); - gbc_jlCNValue.gridy = 2; - - // Organisation (O) - JLabel jlOrg = new JLabel("Organisation (O)"); - jlOrg.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlOrg = (GridBagConstraints) gbcLabel.clone(); - gbc_jlOrg.gridy = 3; - JLabel jlOrgValue = new JLabel(sOrg); - jlOrgValue.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlOrgValue = (GridBagConstraints) gbcValue.clone(); - gbc_jlOrgValue.gridy = 3; - - // Organisation Unit (OU) - JLabel jlOU = new JLabel("Organisation Unit (OU)"); - jlOU.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlOU = (GridBagConstraints) gbcLabel.clone(); - gbc_jlOU.gridy = 4; - JLabel jlOUValue = new JLabel(sOU); - jlOUValue.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlOUValue = (GridBagConstraints) gbcValue.clone(); - gbc_jlOUValue.gridy = 4; - - // E-mail Address - //JLabel jlEmail = new JLabel("E-mail Address"); - //jlEmail.setFont(new Font(null, PLAIN, 11)); - //GridBagConstraints gbc_jlEmail = (GridBagConstraints) gbcLabel.clone(); - //gbc_jlEmail.gridy = 5; - //JLabel jlEmailValue = new JLabel(sEMAILADDRESS); - //jlEmailValue.setFont(new Font(null, PLAIN, 11)); - //GridBagConstraints gbc_jlEmailValue = (GridBagConstraints) gbcValue.clone(); - //gbc_jlEmailValue.gridy = 5; - - // Serial Number - JLabel jlSN = new JLabel("Serial Number"); - jlSN.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlSN = (GridBagConstraints) gbcLabel.clone(); - gbc_jlSN.gridy = 6; - JLabel jlSNValue = new JLabel(); - // Get the hexadecimal serial number - StringBuilder strBuff = new StringBuilder(new BigInteger(1, - cert.getSerialNumber().toByteArray()).toString(16).toUpperCase()); - // Place colons at every two hexadecimal characters - if (strBuff.length() > 2) - for (int iCnt = 2; iCnt < strBuff.length(); iCnt += 3) - strBuff.insert(iCnt, ':'); - jlSNValue.setText(strBuff.toString()); - jlSNValue.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlSNValue = (GridBagConstraints) gbcValue.clone(); - gbc_jlSNValue.gridy = 6; - - // Version - JLabel jlVersion = new JLabel("Version"); - jlVersion.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlVersion = (GridBagConstraints) gbcLabel.clone(); - gbc_jlVersion.gridy = 7; - JLabel jlVersionValue = new JLabel(Integer.toString(cert.getVersion())); - jlVersionValue.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlVersionValue = (GridBagConstraints) gbcValue.clone(); - gbc_jlVersionValue.gridy = 7; - - // Issued By - JLabel jlIssuedBy = new JLabel("Issued By"); - jlIssuedBy.setFont(new Font(null, BOLD, 11)); - GridBagConstraints gbc_jlIssuedBy = (GridBagConstraints) gbcLabel.clone(); - gbc_jlIssuedBy.gridy = 8; - gbc_jlIssuedBy.gridwidth = 2; //takes two columns - gbc_jlIssuedBy.insets = new Insets(5, 5, 5, 5);//has slightly bigger insets - - // Distinguished Name (DN) - String iDN = cert.getIssuerX500Principal().getName(RFC2253); - parsedDN = dnParser.parseDN(iDN); - // Extract the CN, O and OU fields - String iCN = parsedDN.getCN(); - String iOrg = parsedDN.getO(); - String iOU = parsedDN.getOU(); - - // Common Name (CN) - JLabel jlICN = new JLabel("Common Name (CN)"); - jlICN.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlICN = (GridBagConstraints) gbcLabel.clone(); - gbc_jlICN.gridy = 9; - JLabel jlICNValue = new JLabel(iCN); - jlICNValue.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlICNValue = (GridBagConstraints) gbcValue - .clone(); - gbc_jlICNValue.gridy = 9; - - // Organisation (O) - JLabel jlIOrg = new JLabel("Organisation (O)"); - jlIOrg.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlIOrg = (GridBagConstraints) gbcLabel.clone(); - gbc_jlIOrg.gridy = 10; - JLabel jlIOrgValue = new JLabel(iOrg); - jlIOrgValue.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlIOrgValue = (GridBagConstraints) gbcValue - .clone(); - gbc_jlIOrgValue.gridy = 10; - - // Organisation Unit (OU) - JLabel jlIOU = new JLabel("Organisation Unit (OU)"); - jlIOU.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlIOU = (GridBagConstraints) gbcLabel.clone(); - gbc_jlIOU.gridy = 11; - JLabel jlIOUValue = new JLabel(iOU); - jlIOUValue.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlIOUValue = (GridBagConstraints) gbcValue - .clone(); - gbc_jlIOUValue.gridy = 11; - - // Validity - JLabel jlValidity = new JLabel("Validity"); - jlValidity.setFont(new Font(null, BOLD, 11)); - GridBagConstraints gbc_jlValidity = (GridBagConstraints) gbcLabel - .clone(); - gbc_jlValidity.gridy = 12; - gbc_jlValidity.gridwidth = 2; // takes two columns - gbc_jlValidity.insets = new Insets(5, 5, 5, 5);// has slightly bigger insets - - // Issued On - JLabel jlIssuedOn = new JLabel("Issued On"); - jlIssuedOn.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlIssuedOn = (GridBagConstraints) gbcLabel - .clone(); - gbc_jlIssuedOn.gridy = 13; - JLabel jlIssuedOnValue = new JLabel(cert.getNotBefore().toString()); - jlIssuedOnValue.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlIssuedOnValue = (GridBagConstraints) gbcValue - .clone(); - gbc_jlIssuedOnValue.gridy = 13; - - // Expires On - JLabel jlExpiresOn = new JLabel("Expires On"); - jlExpiresOn.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlExpiresOn = (GridBagConstraints) gbcLabel - .clone(); - gbc_jlExpiresOn.gridy = 14; - JLabel jlExpiresOnValue = new JLabel(cert.getNotAfter().toString()); - jlExpiresOnValue.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlExpiresOnValue = (GridBagConstraints) gbcValue - .clone(); - gbc_jlExpiresOnValue.gridy = 14; - - // Fingerprints - byte[] certBinaryEncoding; - try { - certBinaryEncoding = cert.getEncoded(); - } catch (CertificateEncodingException ex) { - throw new CMException( - "Could not get the encoded form of the certificate.", ex); - } - JLabel jlFingerprints = new JLabel("Fingerprints"); - jlFingerprints.setFont(new Font(null, BOLD, 11)); - GridBagConstraints gbc_jlFingerprints = (GridBagConstraints) gbcLabel.clone(); - gbc_jlFingerprints.gridy = 15; - gbc_jlFingerprints.gridwidth = 2; //takes two columns - gbc_jlFingerprints.insets = new Insets(5, 5, 5, 5);//has slightly bigger insets - - // SHA-1 Fingerprint - JLabel jlSHA1Fingerprint = new JLabel("SHA1 Fingerprint"); - jlSHA1Fingerprint.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlSHA1Fingerprint = (GridBagConstraints) gbcLabel.clone(); - gbc_jlSHA1Fingerprint.gridy = 16; - JLabel jlSHA1FingerprintValue = new JLabel(dnParser.getMessageDigestAsFormattedString(certBinaryEncoding, "SHA1")); - jlSHA1FingerprintValue.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlSHA1FingerprintValue = (GridBagConstraints) gbcValue.clone(); - gbc_jlSHA1FingerprintValue.gridy = 16; - - // MD5 Fingerprint - JLabel jlMD5Fingerprint = new JLabel("MD5 Fingerprint"); - jlMD5Fingerprint.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlMD5Fingerprint = (GridBagConstraints) gbcLabel.clone(); - gbc_jlMD5Fingerprint.gridy = 17; - JLabel jlMD5FingerprintValue = new JLabel(dnParser.getMessageDigestAsFormattedString(certBinaryEncoding, "MD5")); - jlMD5FingerprintValue.setFont(new Font(null, PLAIN, 11)); - GridBagConstraints gbc_jlMD5FingerprintValue = (GridBagConstraints) gbcValue.clone(); - gbc_jlMD5FingerprintValue.gridy = 17; - - /* - * Empty label to add a bit space at the bottom of the panel to make it - * look like firefox's view certificate dialog - */ - JLabel jlEmpty = new JLabel(""); - GridBagConstraints gbc_jlEmpty = (GridBagConstraints) gbcLabel.clone(); - gbc_jlEmpty.gridy = 18; - gbc_jlEmpty.gridwidth = 2; // takes two columns - gbc_jlEmpty.ipady = 40; - - JPanel jpCertificate = new JPanel(new GridBagLayout()); - jpCertificate.setBorder(new CompoundBorder(new EmptyBorder(15, 15, 15, - 15), new EtchedBorder())); - -// if (intendedUses != null){ -// jpCertificate.add(jpUses, gbc_jpUses); -// } - jpCertificate.add(jlIssuedTo, gbc_jlIssuedTo); // Issued To - jpCertificate.add(jlCN, gbc_jlCN); - jpCertificate.add(jlCNValue, gbc_jlCNValue); - jpCertificate.add(jlOrg, gbc_jlOrg); - jpCertificate.add(jlOrgValue, gbc_jlOrgValue); - jpCertificate.add(jlOU, gbc_jlOU); - jpCertificate.add(jlOUValue, gbc_jlOUValue); - //jpCertificate.add(jlEmail, gbc_jlEmail); - //jpCertificate.add(jlEmailValue, gbc_jlEmailValue); - jpCertificate.add(jlSN, gbc_jlSN); - jpCertificate.add(jlSNValue, gbc_jlSNValue); - jpCertificate.add(jlVersion, gbc_jlVersion); - jpCertificate.add(jlVersionValue, gbc_jlVersionValue); - jpCertificate.add(jlIssuedBy, gbc_jlIssuedBy); //Issued By - jpCertificate.add(jlICN, gbc_jlICN); - jpCertificate.add(jlICNValue, gbc_jlICNValue); - jpCertificate.add(jlIOrg, gbc_jlIOrg); - jpCertificate.add(jlIOrgValue, gbc_jlIOrgValue); - jpCertificate.add(jlIOU, gbc_jlIOU); - jpCertificate.add(jlIOUValue, gbc_jlIOUValue); - jpCertificate.add(jlValidity, gbc_jlValidity); //Validity - jpCertificate.add(jlIssuedOn, gbc_jlIssuedOn); - jpCertificate.add(jlIssuedOnValue, gbc_jlIssuedOnValue); - jpCertificate.add(jlExpiresOn, gbc_jlExpiresOn); - jpCertificate.add(jlExpiresOnValue, gbc_jlExpiresOnValue); - jpCertificate.add(jlFingerprints, gbc_jlFingerprints); //Fingerprints - jpCertificate.add(jlSHA1Fingerprint, gbc_jlSHA1Fingerprint); - jpCertificate.add(jlSHA1FingerprintValue, gbc_jlSHA1FingerprintValue); - jpCertificate.add(jlMD5Fingerprint, gbc_jlMD5Fingerprint); - jpCertificate.add(jlMD5FingerprintValue, gbc_jlMD5FingerprintValue); - jpCertificate.add(jlEmpty, gbc_jlEmpty); //Empty label to get some vertical space on the frame - - // List of serviceURLs - JPanel jpURLs = null; // Panel to hold the URL list - if (serviceURLs != null) { //if service serviceURLs are not null (even if empty - show empty list) - - jpURLs = new JPanel(new BorderLayout()); - jpURLs.setBorder(new CompoundBorder( - new EmptyBorder(0, 15, 0, 15), new EtchedBorder())); - // Label - JLabel jlServiceURLs = new JLabel ("Service URLs this key pair will be used for:"); - jlServiceURLs.setFont(new Font(null, Font.BOLD, 11)); - jlServiceURLs.setBorder(new EmptyBorder(5,5,5,5)); - - // New empty service serviceURLs list - DefaultListModel<String> jltModel = new DefaultListModel<>(); - JList<String> jltServiceURLs = new JList<>(jltModel); - for (String url : serviceURLs) - jltModel.addElement(url); - // don't show more than 5 otherwise the window is too big - jltServiceURLs.setVisibleRowCount(5); - - // Scroll pane for service serviceURLs - JScrollPane jspServiceURLs = new JScrollPane(jltServiceURLs, - VERTICAL_SCROLLBAR_AS_NEEDED, - HORIZONTAL_SCROLLBAR_AS_NEEDED); - jspServiceURLs.getViewport().setBackground( - jltServiceURLs.getBackground()); - - jpURLs.add(jlServiceURLs, NORTH); - jpURLs.add(jspServiceURLs, CENTER); - - // Put it on the main content pane - getContentPane().add(jpURLs, CENTER); - } - - // OK button - JPanel jpOK = new JPanel(new FlowLayout(FlowLayout.CENTER)); - - final JButton jbOK = new JButton("OK"); - jbOK.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent evt) { - okPressed(); - } - }); - - jpOK.add(jbOK); - - /* - * Put it all together (panel with URL list is already added, if it was - * not null) - */ - getContentPane().add(jpCertificate, NORTH); - getContentPane().add(jpOK, SOUTH); - - // Resizing wreaks havoc - setResizable(false); - - addWindowListener(new WindowAdapter() { - @Override - public void windowClosing(WindowEvent evt) { - closeDialog(); - } - }); - - getRootPane().setDefaultButton(jbOK); - - pack(); - - invokeLater(new Runnable() { - @Override - public void run() { - jbOK.requestFocus(); - } - }); - } - - private void okPressed() { - closeDialog(); - } - - private void closeDialog() { - setVisible(false); - dispose(); - } -}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/ViewUsernamePasswordEntryDialog.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/ViewUsernamePasswordEntryDialog.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/ViewUsernamePasswordEntryDialog.java deleted file mode 100644 index 7c92842..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/ViewUsernamePasswordEntryDialog.java +++ /dev/null @@ -1,199 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2007 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - ******************************************************************************/ -package net.sf.taverna.t2.workbench.ui.credentialmanager; - -import static java.awt.BorderLayout.CENTER; -import static java.awt.BorderLayout.SOUTH; -import static java.awt.GridBagConstraints.HORIZONTAL; -import static java.awt.GridBagConstraints.NONE; -import static java.awt.GridBagConstraints.WEST; - -import java.awt.BorderLayout; -import java.awt.FlowLayout; -import java.awt.GridBagConstraints; -import java.awt.GridBagLayout; -import java.awt.Insets; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.awt.event.WindowAdapter; -import java.awt.event.WindowEvent; - -import javax.swing.JButton; -import javax.swing.JDialog; -import javax.swing.JFrame; -import javax.swing.JLabel; -import javax.swing.JPanel; -import javax.swing.JTextField; -import javax.swing.border.CompoundBorder; -import javax.swing.border.EmptyBorder; -import javax.swing.border.EtchedBorder; - -import net.sf.taverna.t2.workbench.helper.NonBlockedHelpEnabledDialog; - -/** - * Dialog used for viewing service URL, username and password. - * - * @author Alex Nenadic - */ -@SuppressWarnings("serial") -public class ViewUsernamePasswordEntryDialog extends - NonBlockedHelpEnabledDialog { - /** Service URL field */ - private JTextField serviceURLField; - /** Username field */ - private JTextField usernameField; - /** Password field */ - private JTextField passwordField; - /** Service URL value */ - private String serviceURL; - /** Service username value */ - private String username; - /** Service password value */ - private String password; - - public ViewUsernamePasswordEntryDialog(JFrame parent, String currentURL, - String currentUsername, String currentPassword) { - super(parent, "View username and password for a service", true); - serviceURL = currentURL; - username = currentUsername; - password = currentPassword; - initComponents(); - } - - public ViewUsernamePasswordEntryDialog(JDialog parent, String currentURL, - String currentUsername, String currentPassword) { - super(parent, "View username and password for a service", true); - serviceURL = currentURL; - username = currentUsername; - password = currentPassword; - initComponents(); - } - - private void initComponents() { - getContentPane().setLayout(new BorderLayout()); - - JLabel serviceURLLabel = new JLabel("Service URL"); - serviceURLLabel.setBorder(new EmptyBorder(0, 5, 0, 0)); - JLabel usernameLabel = new JLabel("Username"); - usernameLabel.setBorder(new EmptyBorder(0, 5, 0, 0)); - JLabel passwordLabel = new JLabel("Password"); - passwordLabel.setBorder(new EmptyBorder(0, 5, 0, 0)); - - // Populate the fields with values and disable user input - serviceURLField = new JTextField(); - serviceURLField.setText(serviceURL); - serviceURLField.setEditable(false); - - usernameField = new JTextField(15); - usernameField.setText(username); - usernameField.setEditable(false); - - passwordField = new JTextField(15); - passwordField.setText(password); - passwordField.setEditable(false); - - JButton okButton = new JButton("OK"); - okButton.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent evt) { - closeDialog(); - } - }); - - JPanel fieldsPanel = new JPanel(new GridBagLayout()); - - GridBagConstraints gbc = new GridBagConstraints(); - gbc.weighty = 0.0; - - gbc.weightx = 0.0; - gbc.gridx = 0; - gbc.gridy = 0; - gbc.fill = NONE; - gbc.anchor = WEST; - gbc.insets = new Insets(5, 10, 0, 0); - fieldsPanel.add(serviceURLLabel, gbc); - - gbc.weightx = 1.0; - gbc.gridx = 1; - gbc.gridy = 0; - gbc.fill = HORIZONTAL; - gbc.anchor = WEST; - gbc.insets = new Insets(5, 10, 0, 5); - fieldsPanel.add(serviceURLField, gbc); - - gbc.weightx = 0.0; - gbc.gridx = 0; - gbc.gridy = 1; - gbc.fill = NONE; - gbc.anchor = WEST; - gbc.insets = new Insets(5, 10, 0, 0); - fieldsPanel.add(usernameLabel, gbc); - - gbc.weightx = 1.0; - gbc.gridx = 1; - gbc.gridy = 1; - gbc.fill = HORIZONTAL; - gbc.anchor = WEST; - gbc.insets = new Insets(5, 10, 0, 5); - fieldsPanel.add(usernameField, gbc); - - gbc.weightx = 0.0; - gbc.gridx = 0; - gbc.gridy = 2; - gbc.fill = NONE; - gbc.anchor = WEST; - gbc.insets = new Insets(5, 10, 0, 0); - fieldsPanel.add(passwordLabel, gbc); - - gbc.weightx = 1.0; - gbc.gridx = 1; - gbc.gridy = 2; - gbc.fill = HORIZONTAL; - gbc.anchor = WEST; - gbc.insets = new Insets(5, 10, 0, 5); - fieldsPanel.add(passwordField, gbc); - - fieldsPanel.setBorder(new CompoundBorder( - new EmptyBorder(10, 10, 10, 10), new EtchedBorder())); - - JPanel buttonsPanel = new JPanel(new FlowLayout(FlowLayout.CENTER)); - buttonsPanel.add(okButton); - - getContentPane().add(fieldsPanel, CENTER); - getContentPane().add(buttonsPanel, SOUTH); - - addWindowListener(new WindowAdapter() { - @Override - public void windowClosing(WindowEvent evt) { - closeDialog(); - } - }); - - // setResizable(false); - getRootPane().setDefaultButton(okButton); - pack(); - } - - private void closeDialog() { - setVisible(false); - dispose(); - } -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/WarnUserAboutJCEPolicyDialog.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/WarnUserAboutJCEPolicyDialog.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/WarnUserAboutJCEPolicyDialog.java deleted file mode 100644 index 56b2f5b..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/WarnUserAboutJCEPolicyDialog.java +++ /dev/null @@ -1,223 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2007 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - ******************************************************************************/ -package net.sf.taverna.t2.workbench.ui.credentialmanager; - -import static java.awt.BorderLayout.CENTER; -import static java.awt.BorderLayout.SOUTH; -import static java.awt.Desktop.getDesktop; -import static javax.swing.border.EtchedBorder.LOWERED; -import static javax.swing.event.HyperlinkEvent.EventType.ACTIVATED; -import static org.apache.commons.io.FileUtils.touch; - -import java.awt.BorderLayout; -import java.awt.Dimension; -import java.awt.FlowLayout; -import java.awt.Font; -import java.awt.Frame; -import java.awt.GraphicsEnvironment; -import java.awt.Rectangle; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.io.File; -import java.io.IOException; - -import javax.swing.JButton; -import javax.swing.JCheckBox; -import javax.swing.JEditorPane; -import javax.swing.JLabel; -import javax.swing.JPanel; -import javax.swing.border.CompoundBorder; -import javax.swing.border.EmptyBorder; -import javax.swing.border.EtchedBorder; -import javax.swing.event.HyperlinkEvent; -import javax.swing.event.HyperlinkListener; -import javax.swing.text.Document; -import javax.swing.text.html.HTMLEditorKit; -import javax.swing.text.html.StyleSheet; - -import org.apache.taverna.security.credentialmanager.DistinguishedNameParser; -import net.sf.taverna.t2.workbench.helper.NonBlockedHelpEnabledDialog; - -import org.apache.log4j.Logger; - -import uk.org.taverna.configuration.app.ApplicationConfiguration; - -/** - * Dialog that warns user that they need to install unlimited cryptography - * strength policy for Java. - * - * @author Alex Nenadic - */ -@SuppressWarnings("serial") -public class WarnUserAboutJCEPolicyDialog extends NonBlockedHelpEnabledDialog { - private static final Logger logger = Logger - .getLogger(WarnUserAboutJCEPolicyDialog.class); - - private JCheckBox doNotWarnMeAgainCheckBox; - private final ApplicationConfiguration applicationConfiguration; - private final DistinguishedNameParser dnParser; - - public WarnUserAboutJCEPolicyDialog( - ApplicationConfiguration applicationConfiguration, - DistinguishedNameParser dnParser) { - super((Frame) null, - "Java Unlimited Strength Cryptography Policy Warning", true); - this.applicationConfiguration = applicationConfiguration; - this.dnParser = dnParser; - initComponents(); - } - - // For testing - public static void main(String[] args) { - WarnUserAboutJCEPolicyDialog dialog = new WarnUserAboutJCEPolicyDialog( - null, null); - dialog.setVisible(true); - } - - private void initComponents() { - // Base font for all components on the form - Font baseFont = new JLabel("base font").getFont().deriveFont(11f); - - // Message saying that updates are available - JPanel messagePanel = new JPanel(new BorderLayout()); - messagePanel.setBorder(new CompoundBorder(new EmptyBorder(10, 10, 10, - 10), new EtchedBorder(LOWERED))); - - JEditorPane message = new JEditorPane(); - message.setEditable(false); - message.setBackground(this.getBackground()); - message.setFocusable(false); - HTMLEditorKit kit = new HTMLEditorKit(); - message.setEditorKit(kit); - StyleSheet styleSheet = kit.getStyleSheet(); - //styleSheet.addRule("body {font-family:"+baseFont.getFamily()+"; font-size:"+baseFont.getSize()+";}"); // base font looks bigger when rendered as HTML - styleSheet.addRule("body {font-family:" + baseFont.getFamily() - + "; font-size:10px;}"); - Document doc = kit.createDefaultDocument(); - message.setDocument(doc); - message.setText("<html><body>In order for Taverna's security features to function properly - you need to install<br>" - + "'Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy'. <br><br>" - + "If you do not already have it, for <b>Java 6</b> you can get it from:<br>" - + "<a href=\"http://www.oracle.com/technetwork/java/javase/downloads/index.html\">http://www.oracle.com/technetwork/java/javase/downloads/index.html</a><br<br>" - + "Installation instructions are contained in the bundle you download." - + "</body><html>"); - message.addHyperlinkListener(new HyperlinkListener() { - @Override - public void hyperlinkUpdate(HyperlinkEvent he) { - HyperlinkEvent.EventType type = he.getEventType(); - if (type == ACTIVATED) - // Open a Web browser - try { - getDesktop().browse(he.getURL().toURI()); -// BrowserLauncher launcher = new BrowserLauncher(); -// launcher.openURLinBrowser(he.getURL().toString()); - } catch (Exception ex) { - logger.error("Failed to launch browser to fetch JCE " - + he.getURL()); - } - } - }); - message.setBorder(new EmptyBorder(5, 5, 5, 5)); - messagePanel.add(message, CENTER); - - doNotWarnMeAgainCheckBox = new JCheckBox("Do not warn me again"); - doNotWarnMeAgainCheckBox.setFont(baseFont.deriveFont(12f)); - messagePanel.add(doNotWarnMeAgainCheckBox, SOUTH); - - // Buttons - JPanel buttonsPanel = new JPanel(new FlowLayout(FlowLayout.CENTER)); - JButton okButton = new JButton("OK"); - okButton.setFont(baseFont); - okButton.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - okPressed(); - } - }); - - buttonsPanel.add(okButton); - - getContentPane().setLayout(new BorderLayout()); - getContentPane().add(messagePanel, CENTER); - getContentPane().add(buttonsPanel, SOUTH); - - pack(); - setResizable(false); - // Center the dialog on the screen (we do not have the parent) - Dimension dimension = getToolkit().getScreenSize(); - Rectangle abounds = getBounds(); - setLocation((dimension.width - abounds.width) / 2, - (dimension.height - abounds.height) / 2); - setSize(getPreferredSize()); - } - - private static final String DO_NOT_WARN_ABOUT_JCE_POLICY = "do_not_warn_about_JCE_policy"; - public static boolean warnedUser = false; // have we already warned user for - // this run - - /** - * Warn user that they need to install Java Cryptography Extension (JCE) - * Unlimited Strength Jurisdiction Policy if they want Credential Manager to - * function properly. - */ - public static void warnUserAboutJCEPolicy( - ApplicationConfiguration applicationConfiguration, - DistinguishedNameParser dnParser) { - /* - * Do not pop up a dialog if we are running headlessly. If we have - * warned the user and they do not want us to remind them again - exit. - */ - if (warnedUser || GraphicsEnvironment.isHeadless() - || doNotWarnFile(applicationConfiguration, dnParser).exists()) - return; - - WarnUserAboutJCEPolicyDialog warnDialog = new WarnUserAboutJCEPolicyDialog( - applicationConfiguration, dnParser); - warnDialog.setVisible(true); - warnedUser = true; - } - - private static File doNotWarnFile( - ApplicationConfiguration applicationConfiguration, - DistinguishedNameParser dnParser) { - return new File( - dnParser.getCredentialManagerDefaultDirectory(applicationConfiguration), - DO_NOT_WARN_ABOUT_JCE_POLICY); - } - - protected void okPressed() { - try { - if (doNotWarnMeAgainCheckBox.isSelected()) - touch(doNotWarnFile(applicationConfiguration, dnParser)); - } catch (IOException e) { - logger.error( - "Failed to touch the 'Do not want me about JCE unilimited security policy' file.", - e); - } - closeDialog(); - } - - private void closeDialog() { - setVisible(false); - dispose(); - } - -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/action/CredentialManagerAction.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/action/CredentialManagerAction.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/action/CredentialManagerAction.java deleted file mode 100644 index 229fc11..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/action/CredentialManagerAction.java +++ /dev/null @@ -1,68 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2007 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - ******************************************************************************/ -package net.sf.taverna.t2.workbench.ui.credentialmanager.action; - -import static javax.swing.SwingUtilities.invokeLater; - -import java.awt.event.ActionEvent; - -import javax.swing.AbstractAction; -import javax.swing.ImageIcon; - -import org.apache.taverna.security.credentialmanager.CredentialManager; -import org.apache.taverna.security.credentialmanager.DistinguishedNameParser; -import net.sf.taverna.t2.workbench.ui.credentialmanager.CredentialManagerUI; - -//import javax.swing.SwingUtilities; - -@SuppressWarnings("serial") -public class CredentialManagerAction extends AbstractAction { - private static ImageIcon ICON = new ImageIcon( - CredentialManagerAction.class - .getResource("/images/cred_manager16x16.png")); - - private CredentialManagerUI cmUI; - private final CredentialManager credentialManager; - private final DistinguishedNameParser dnParser; - - public CredentialManagerAction(CredentialManager credentialManager, - DistinguishedNameParser dnParser) { - super("Credential Manager", ICON); - this.credentialManager = credentialManager; - this.dnParser = dnParser; - } - - @Override - public void actionPerformed(ActionEvent e) { - if (cmUI != null) { - cmUI.setVisible(true); - return; - } - - invokeLater(new Runnable() { - @Override - public void run() { - cmUI = new CredentialManagerUI(credentialManager, dnParser); - cmUI.setVisible(true); - } - }); - } -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/menu/CredentialManagerMenu.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/menu/CredentialManagerMenu.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/menu/CredentialManagerMenu.java deleted file mode 100644 index 5cbc10d..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/menu/CredentialManagerMenu.java +++ /dev/null @@ -1,70 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2007 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - ******************************************************************************/ -package net.sf.taverna.t2.workbench.ui.credentialmanager.menu; - -import java.net.URI; - -import javax.swing.Action; - -//import org.apache.log4j.Logger; - -import org.apache.taverna.security.credentialmanager.CredentialManager; -import org.apache.taverna.security.credentialmanager.DistinguishedNameParser; -import net.sf.taverna.t2.ui.menu.AbstractMenuAction; -import net.sf.taverna.t2.workbench.ui.credentialmanager.action.CredentialManagerAction; - -public class CredentialManagerMenu extends AbstractMenuAction { - private static final String MENU_URI = "http://taverna.sf.net/2008/t2workbench/menu#advanced"; - - private CredentialManager credentialManager; - private DistinguishedNameParser dnParser; - - // private static Logger logger = Logger.getLogger(CredentialManagerMenu.class); - - public CredentialManagerMenu() { - super(URI.create(MENU_URI), 60); - /* This is now done in the initialise SSL startup hook - no need to do it here. - // Force initialisation at startup - try { - CredentialManager.getInstance(); - } catch (CMException e) { - logger.error("Could not initialise SSL properties for SSL connections from Taverna.", e); - } - */ - } - - @Override - protected Action createAction() { - return new CredentialManagerAction(credentialManager, dnParser); - } - - public void setCredentialManager(CredentialManager credentialManager) { - this.credentialManager = credentialManager; - } - - /** - * @param dnParser - * the dnParser to set - */ - public void setDistinguishedNameParser(DistinguishedNameParser dnParser) { - this.dnParser = dnParser; - } -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserJavaTruststorePasswordProvider.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserJavaTruststorePasswordProvider.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserJavaTruststorePasswordProvider.java deleted file mode 100644 index 7cbdc4c..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserJavaTruststorePasswordProvider.java +++ /dev/null @@ -1,46 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2008-2010 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - ******************************************************************************/ -package net.sf.taverna.t2.workbench.ui.credentialmanager.password; - -import org.apache.taverna.security.credentialmanager.JavaTruststorePasswordProvider; - -/** - * An implementation of the {@link JavaTruststorePasswordProvider} that pops up a - * dialog and asks the user to provide the password. - * - * @author Alex Nenadic - * - */ -public class AskUserJavaTruststorePasswordProvider implements JavaTruststorePasswordProvider{ - - @Override - public String getJavaTruststorePassword() { - // TODO Auto-generated method stub - return null; - } - - @Override - public void setJavaTruststorePassword(String password) { - // TODO Auto-generated method stub - - } - -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserMasterPasswordProvider.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserMasterPasswordProvider.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserMasterPasswordProvider.java deleted file mode 100644 index 1df5dad..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserMasterPasswordProvider.java +++ /dev/null @@ -1,55 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2008-2010 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - ******************************************************************************/ -package net.sf.taverna.t2.workbench.ui.credentialmanager.password; - -import org.apache.taverna.security.credentialmanager.MasterPasswordProvider; - -public class AskUserMasterPasswordProvider implements MasterPasswordProvider{ - -// @Override -// public boolean canProvideMasterPassword() { -// // TODO Auto-generated method stub -// return false; -// } - private int priority = 100; - - @Override - public String getMasterPassword(boolean firstTime) { - // TODO Auto-generated method stub - return null; - } - - @Override - public int getProviderPriority() { - return priority; - } - - @Override - public void setMasterPassword(String password) { - // TODO Auto-generated method stub - } - -// @Override -// public void setProviderPriority(int priority) { -// this.priority = priority; -// } - -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserServiceUsernameAndPasswordProvider.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserServiceUsernameAndPasswordProvider.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserServiceUsernameAndPasswordProvider.java deleted file mode 100644 index 10a771a..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserServiceUsernameAndPasswordProvider.java +++ /dev/null @@ -1,23 +0,0 @@ -package net.sf.taverna.t2.workbench.ui.credentialmanager.password; - -import java.net.URI; - -import org.apache.taverna.security.credentialmanager.ServiceUsernameAndPasswordProvider; -import org.apache.taverna.security.credentialmanager.UsernamePassword; - -public class AskUserServiceUsernameAndPasswordProvider implements ServiceUsernameAndPasswordProvider{ - - @Override - public UsernamePassword getServiceUsernameAndPassword(URI serviceURI, String requestMessage) { - // TODO Auto-generated method stub - return null; - } - - @Override - public void setServiceUsernameAndPassword(URI serviceURI, - UsernamePassword usernamePassword) { - // TODO Auto-generated method stub - - } - -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserTrustConfirmationProvider.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserTrustConfirmationProvider.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserTrustConfirmationProvider.java deleted file mode 100644 index b114763..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/AskUserTrustConfirmationProvider.java +++ /dev/null @@ -1,35 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2008-2010 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - ******************************************************************************/ -package net.sf.taverna.t2.workbench.ui.credentialmanager.password; - -import java.security.cert.X509Certificate; - -import org.apache.taverna.security.credentialmanager.TrustConfirmationProvider; - -public class AskUserTrustConfirmationProvider implements TrustConfirmationProvider { - - @Override - public Boolean shouldTrustCertificate(X509Certificate[] chain) { - // TODO Auto-generated method stub - return null; - } - -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/GetPasswordDialog.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/GetPasswordDialog.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/GetPasswordDialog.java deleted file mode 100644 index 851e900..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/GetPasswordDialog.java +++ /dev/null @@ -1,228 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2007 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - ******************************************************************************/ -package net.sf.taverna.t2.workbench.ui.credentialmanager.password; - -import static java.awt.BorderLayout.CENTER; -import static java.awt.BorderLayout.NORTH; -import static java.awt.BorderLayout.SOUTH; -import static java.awt.FlowLayout.LEFT; -import static java.awt.FlowLayout.RIGHT; -import static javax.swing.JOptionPane.WARNING_MESSAGE; -import static javax.swing.JOptionPane.showMessageDialog; - -import java.awt.BorderLayout; -import java.awt.Dimension; -import java.awt.FlowLayout; -import java.awt.Frame; -import java.awt.GridLayout; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.awt.event.WindowAdapter; -import java.awt.event.WindowEvent; - -import javax.swing.JButton; -import javax.swing.JCheckBox; -import javax.swing.JLabel; -import javax.swing.JPanel; -import javax.swing.JPasswordField; -import javax.swing.JTextField; -import javax.swing.border.CompoundBorder; -import javax.swing.border.EmptyBorder; -import javax.swing.border.EtchedBorder; - -import net.sf.taverna.t2.workbench.helper.NonBlockedHelpEnabledDialog; - -/** - * Dialog for entering user's username and password. - * - * @author Alex Nenadic - */ -@SuppressWarnings("serial") -public class GetPasswordDialog extends NonBlockedHelpEnabledDialog { - /** - * Whether we should ask user to save their username and password using - * Credential Manager - */ - private boolean shouldAskUserToSave; - /** Username field */ - private JTextField usernameField; - /** Password field */ - private JPasswordField passwordField; - /** - * Whether user wished to save the username and password using Credential - * Manager - */ - private JCheckBox saveCheckBox; - /** The entered username */ - private String username; - /** The entered password */ - private String password; - /** Instructions to the user */ - private String instructions; - - public GetPasswordDialog(String instructions, boolean shouldAskUserToSave) { - super((Frame) null, "Enter username and password", true); - this.instructions = instructions; - this.shouldAskUserToSave = shouldAskUserToSave; - initComponents(); - } - - private void initComponents() { - getContentPane().setLayout(new BorderLayout()); - - JLabel instructionsLabel = new JLabel(instructions); - instructionsLabel.setBorder(new EmptyBorder(5, 5, 5, 5)); - JPanel jpInstructions = new JPanel(new FlowLayout(LEFT)); - jpInstructions.add(instructionsLabel); - - JLabel usernameLabel = new JLabel("Username"); - usernameLabel.setBorder(new EmptyBorder(5, 5, 5, 5)); - JLabel passwordLabel = new JLabel("Password"); - passwordLabel.setBorder(new EmptyBorder(5, 5, 5, 5)); - - usernameField = new JTextField(15); - passwordField = new JPasswordField(15); - - JButton okButton = new JButton("OK"); - okButton.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent evt) { - okPressed(); - } - }); - - JButton cancelButton = new JButton("Cancel"); - cancelButton.addActionListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent evt) { - cancelPressed(); - } - }); - - // Central panel with username/password fields and a "Do you want to Save?" checkbox - JPanel mainPanel = new JPanel(new BorderLayout()); - - JPanel passwordPanel = new JPanel(new GridLayout(2, 2, 5, 5)); - passwordPanel.add(usernameLabel); - passwordPanel.add(usernameField); - passwordPanel.add(passwordLabel); - passwordPanel.add(passwordField); - mainPanel.add(passwordPanel, CENTER); - - // If user wants to save this username and password - saveCheckBox = new JCheckBox(); - saveCheckBox.setBorder(new EmptyBorder(5, 5, 5, 5)); - saveCheckBox.setSelected(true); - saveCheckBox - .setText("Use Credential Manager to save this username and password"); - if (shouldAskUserToSave) { - JPanel jpSaveCheckBox = new JPanel(new FlowLayout(LEFT)); - jpSaveCheckBox.add(saveCheckBox); - mainPanel.add(jpSaveCheckBox, SOUTH); - } - - passwordPanel.setBorder(new CompoundBorder(new EmptyBorder(10, 10, 10, - 10), new EtchedBorder())); - - JPanel buttonsPanel = new JPanel(new FlowLayout(RIGHT)); - buttonsPanel.add(okButton); - buttonsPanel.add(cancelButton); - - passwordPanel.setMinimumSize(new Dimension(300, 100)); - - getContentPane().add(jpInstructions, NORTH); - getContentPane().add(mainPanel, CENTER); - getContentPane().add(buttonsPanel, SOUTH); - - addWindowListener(new WindowAdapter() { - @Override - public void windowClosing(WindowEvent evt) { - closeDialog(); - } - }); - - setResizable(false); - getRootPane().setDefaultButton(okButton); - pack(); - } - - public String getUsername() { - return username; - } - - public String getPassword() { - return password; - } - - /** - * Check if user wishes to save username and pasword using the Credential - * Manager. - */ - public boolean shouldSaveUsernameAndPassword() { - return saveCheckBox.isSelected(); - } - - private boolean checkControls() { - username = usernameField.getText(); - if (username.length() == 0) { - showMessageDialog(this, "Username cannot be empty", "Warning", - WARNING_MESSAGE); - return false; - } - - password = new String(passwordField.getPassword()); - if (password.length() == 0) { // password empty - showMessageDialog(this, "Password cannot be empty", "Warning", - WARNING_MESSAGE); - - return false; - } - - return true; - } - - private void okPressed() { - if (checkControls()) - closeDialog(); - } - - private void cancelPressed() { - // Set all fields to null to indicate that cancel button was pressed - username = null; - password = null; - closeDialog(); - } - - private void closeDialog() { - setVisible(false); - dispose(); - } - - public void setUsername(String username) { - this.username = username; - usernameField.setText(username); - } - - public void setPassword(String password) { - this.password = password; - passwordField.setText(password); - } -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/SimpleMasterPasswordProvider.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/SimpleMasterPasswordProvider.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/SimpleMasterPasswordProvider.java deleted file mode 100644 index bfa9841..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/SimpleMasterPasswordProvider.java +++ /dev/null @@ -1,54 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2008-2010 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - ******************************************************************************/ -package net.sf.taverna.t2.workbench.ui.credentialmanager.password; - -import org.apache.taverna.security.credentialmanager.MasterPasswordProvider; - -/** - * A simple implementation of {@link MasterPasswordProvider} that just provides - * a master password that can be obtained and set from outside the provider. - * - * @author Alex Nenadic - */ -public class SimpleMasterPasswordProvider implements MasterPasswordProvider { - private String masterPassword; - private int priority = 200; - - @Override - public String getMasterPassword(boolean firstTime) { - return masterPassword; - } - - @Override - public void setMasterPassword(String masterPassword){ - this.masterPassword = masterPassword; - } - - @Override - public int getProviderPriority() { - return priority; - } - -// @Override -// public void setProviderPriority(int priority) { -// this.priority = priority; -// } -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/UIMasterPasswordProvider.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/UIMasterPasswordProvider.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/UIMasterPasswordProvider.java deleted file mode 100644 index 27aee05..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/UIMasterPasswordProvider.java +++ /dev/null @@ -1,126 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2009-2010 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - ******************************************************************************/ -package net.sf.taverna.t2.workbench.ui.credentialmanager.password; - -import java.awt.GraphicsEnvironment; - -import javax.swing.JFrame; -import org.apache.taverna.security.credentialmanager.DistinguishedNameParser; - -import uk.org.taverna.configuration.app.ApplicationConfiguration; - -import org.apache.taverna.security.credentialmanager.JavaTruststorePasswordProvider; -import org.apache.taverna.security.credentialmanager.MasterPasswordProvider; -import net.sf.taverna.t2.workbench.ui.credentialmanager.GetMasterPasswordDialog; -import net.sf.taverna.t2.workbench.ui.credentialmanager.SetMasterPasswordDialog; -import net.sf.taverna.t2.workbench.ui.credentialmanager.WarnUserAboutJCEPolicyDialog; - -/** - * A UI pop-up that asks user for a master password for Credential Manager. - * - * @author Alex Nenadic - * @author Stian Soiland-Reyes - * - */ -public class UIMasterPasswordProvider implements MasterPasswordProvider, JavaTruststorePasswordProvider { - - private ApplicationConfiguration applicationConfiguration; - - private DistinguishedNameParser dnParser; - - @Override - public String getJavaTruststorePassword() { - if (GraphicsEnvironment.isHeadless()) { - return null; - } - - GetMasterPasswordDialog getPasswordDialog = new GetMasterPasswordDialog( - "Credential Manager needs to copy certificates from Java truststore. " - + "Please enter your password."); - getPasswordDialog.setLocationRelativeTo(null); - getPasswordDialog.setVisible(true); - String javaTruststorePassword = getPasswordDialog.getPassword(); - return javaTruststorePassword; - } - - @Override - public void setJavaTruststorePassword(String password) { - } - - @Override - public String getMasterPassword(boolean firstTime) { - - // Check if this Taverna run is headless (i.e. Taverna Server or Taverna - // from command line) - do not do anything here if it is as we do not - // want - // any windows popping up even if they could - if (GraphicsEnvironment.isHeadless()) { - return null; - } - - // Pop up a warning about Java Cryptography Extension (JCE) - // Unlimited Strength Jurisdiction Policy - WarnUserAboutJCEPolicyDialog.warnUserAboutJCEPolicy(applicationConfiguration, dnParser); - - if (firstTime) { - // Ask user to set the master password for Credential Manager (only - // the first time) - SetMasterPasswordDialog setPasswordDialog = new SetMasterPasswordDialog( - (JFrame) null, "Set master password", true, - "Set master password for Credential Manager"); - setPasswordDialog.setLocationRelativeTo(null); - setPasswordDialog.setVisible(true); - return setPasswordDialog.getPassword(); - } else { - // Ask user to provide a master password for Credential Manager - GetMasterPasswordDialog getPasswordDialog = new GetMasterPasswordDialog( - "Enter master password for Credential Manager"); - getPasswordDialog.setLocationRelativeTo(null); - getPasswordDialog.setVisible(true); - return getPasswordDialog.getPassword(); - } - } - - @Override - public void setMasterPassword(String password) { - } - - @Override - public int getProviderPriority() { - return 100; - } - - /** - * Sets the applicationConfiguration. - * - * @param applicationConfiguration the new value of applicationConfiguration - */ - public void setApplicationConfiguration(ApplicationConfiguration applicationConfiguration) { - this.applicationConfiguration = applicationConfiguration; - } - - /** - * @param dnParser the dnParser to set - */ - public void setDistinguishedNameParser(DistinguishedNameParser dnParser) { - this.dnParser = dnParser; - } -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/UIUsernamePasswordProvider.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/UIUsernamePasswordProvider.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/UIUsernamePasswordProvider.java deleted file mode 100644 index d0740df..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/password/UIUsernamePasswordProvider.java +++ /dev/null @@ -1,92 +0,0 @@ -package net.sf.taverna.t2.workbench.ui.credentialmanager.password; - -import static java.awt.GraphicsEnvironment.isHeadless; - -import java.net.URI; -import java.net.URISyntaxException; - -import org.apache.taverna.security.credentialmanager.DistinguishedNameParser; -import org.apache.taverna.security.credentialmanager.ServiceUsernameAndPasswordProvider; -import org.apache.taverna.security.credentialmanager.UsernamePassword; - -import org.apache.log4j.Logger; - -public class UIUsernamePasswordProvider implements - ServiceUsernameAndPasswordProvider { - private static final Logger logger = Logger - .getLogger(UIUsernamePasswordProvider.class); - - private DistinguishedNameParser dnParser; - - public boolean canProvideUsernamePassword(URI serviceURI) { - return !isHeadless(); - } - - @Override - public UsernamePassword getServiceUsernameAndPassword(URI serviceURI, - String requestingPrompt) { - URI displayURI = serviceURI; - - try { - displayURI = dnParser.setFragmentForURI(displayURI, null); - displayURI = dnParser.setUserInfoForURI(displayURI, null); - } catch (URISyntaxException e) { - logger.warn("Could not strip fragment/userinfo from " + serviceURI, - e); - } - - StringBuilder message = new StringBuilder(); - message.append("<html><body>The Taverna Credential Manager could not find a "); - message.append("username and password for the service at:"); - message.append("<br><br><code>"); - message.append(displayURI); - message.append("</code>"); - if (requestingPrompt != null && !requestingPrompt.isEmpty()) { - message.append("<p><i>"); - message.append(requestingPrompt); - message.append("</i>"); - } - message.append("<br><br>Please provide the username and password.</body></html>"); - - GetPasswordDialog getPasswordDialog = new GetPasswordDialog( - message.toString(), true); - getPasswordDialog.setLocationRelativeTo(null); - if (serviceURI.getRawUserInfo() != null - && serviceURI.getRawUserInfo().length() > 1) { - String userInfo = serviceURI.getRawUserInfo(); - String[] userPassword = userInfo.split(":", 2); - if (userPassword.length == 2) { - getPasswordDialog.setUsername(userPassword[0]); - getPasswordDialog.setPassword(userPassword[1]); - } - } - getPasswordDialog.setVisible(true); - - String username = getPasswordDialog.getUsername(); // get username - String password = getPasswordDialog.getPassword(); // get password - boolean shouldSaveUsernameAndPassword = getPasswordDialog - .shouldSaveUsernameAndPassword(); - if (username == null || password == null) - // user cancelled - any of the above two variables is null - return null; - - UsernamePassword credential = new UsernamePassword(); - credential.setUsername(username); - credential.setPassword(password.toCharArray()); - credential.setShouldSave(shouldSaveUsernameAndPassword); - return credential; - } - - @Override - public void setServiceUsernameAndPassword(URI serviceURI, - UsernamePassword usernamePassword) { - } - - /** - * @param dnParser - * the dnParser to set - */ - public void setDistinguishedNameParser(DistinguishedNameParser dnParser) { - this.dnParser = dnParser; - } -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/startup/InitialiseSSLStartupHook.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/startup/InitialiseSSLStartupHook.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/startup/InitialiseSSLStartupHook.java deleted file mode 100644 index 4805fbd..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/startup/InitialiseSSLStartupHook.java +++ /dev/null @@ -1,64 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2007-2010 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - */ -package net.sf.taverna.t2.workbench.ui.credentialmanager.startup; - -import org.apache.log4j.Logger; - -import org.apache.taverna.security.credentialmanager.CMException; -import org.apache.taverna.security.credentialmanager.CredentialManager; -import net.sf.taverna.t2.workbench.StartupSPI; - -/** - * - * Startup hook to initialise SSL socket factory used by Taverna for creating - * HTTPS connections. - * - * @author Alex Nenadic - * @author Stian Soiland-Reyes - */ -public class InitialiseSSLStartupHook implements StartupSPI { - private static final Logger logger = Logger - .getLogger(InitialiseSSLStartupHook.class); - - private CredentialManager credManager; - - @Override - public int positionHint() { - return 25; - } - - @Override - public boolean startup() { - logger.info("Initialising SSL socket factory for SSL connections from Taverna."); - try { - credManager.initializeSSL(); - } catch (CMException e) { - logger.error( - "Could not initialise the SSL socket factory (for creating SSL connections)" - + " using Taverna's keystores.", e); - } - return true; - } - - public void setCredentialManager(CredentialManager credManager) { - this.credManager = credManager; - } -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/startup/SetCredManAuthenticatorStartupHook.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/startup/SetCredManAuthenticatorStartupHook.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/startup/SetCredManAuthenticatorStartupHook.java deleted file mode 100644 index 64e607a..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/startup/SetCredManAuthenticatorStartupHook.java +++ /dev/null @@ -1,24 +0,0 @@ -package net.sf.taverna.t2.workbench.ui.credentialmanager.startup; - -import java.net.Authenticator; -import org.apache.taverna.security.credentialmanager.CredentialManager; -import net.sf.taverna.t2.workbench.StartupSPI; - -public class SetCredManAuthenticatorStartupHook implements StartupSPI { - private CredentialManager credManager; - - @Override - public int positionHint() { - return 50; - } - - @Override - public boolean startup() { - Authenticator.setDefault(credManager.getAuthenticator()); - return true; - } - - public void setCredentialManager(CredentialManager credManager) { - this.credManager = credManager; - } -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/toolbar/CredentialManagerToolbarAction.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/toolbar/CredentialManagerToolbarAction.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/toolbar/CredentialManagerToolbarAction.java deleted file mode 100644 index d515809..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/toolbar/CredentialManagerToolbarAction.java +++ /dev/null @@ -1,44 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2007 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - ******************************************************************************/ -package net.sf.taverna.t2.workbench.ui.credentialmanager.toolbar; - -import static net.sf.taverna.t2.workbench.ui.credentialmanager.toolbar.CredentialManagerToolbarSection.CREDENTIAL_MANAGER_TOOLBAR_SECTION; - -import java.net.URI; - -import javax.swing.Action; - -import net.sf.taverna.t2.ui.menu.AbstractMenuAction; -import net.sf.taverna.t2.workbench.ui.credentialmanager.action.CredentialManagerAction; - -public class CredentialManagerToolbarAction extends AbstractMenuAction { - private static final String ENTRY_URI = "http://taverna.sf.net/2008/t2workbench/toolbar#credentialManagerAction"; - - public CredentialManagerToolbarAction() { - super(CREDENTIAL_MANAGER_TOOLBAR_SECTION, 100, URI.create(ENTRY_URI)); - } - - @Override - protected Action createAction() { - // need to add CredentialManager if toolbar is ever used - return new CredentialManagerAction(null, null); - } -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/toolbar/CredentialManagerToolbarSection.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/toolbar/CredentialManagerToolbarSection.java b/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/toolbar/CredentialManagerToolbarSection.java deleted file mode 100644 index e5367be..0000000 --- a/taverna-credential-manager-ui/src/main/java/net/sf/taverna/t2/workbench/ui/credentialmanager/toolbar/CredentialManagerToolbarSection.java +++ /dev/null @@ -1,38 +0,0 @@ -/******************************************************************************* - * Copyright (C) 2007 The University of Manchester - * - * Modifications to the initial code base are copyright of their - * respective authors, or their employers as appropriate. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - ******************************************************************************/ -package net.sf.taverna.t2.workbench.ui.credentialmanager.toolbar; - -import static net.sf.taverna.t2.ui.menu.DefaultToolBar.DEFAULT_TOOL_BAR; - -import java.net.URI; - -import net.sf.taverna.t2.ui.menu.AbstractMenuSection; - -public class CredentialManagerToolbarSection extends AbstractMenuSection { - private static final String ENTRY_URI = "http://taverna.sf.net/2008/t2workbench/toolbar#credentialManagerSection"; - /** {@value #ENTRY_URI} */ - public static URI CREDENTIAL_MANAGER_TOOLBAR_SECTION = URI - .create(ENTRY_URI); - - public CredentialManagerToolbarSection() { - super(DEFAULT_TOOL_BAR, 300, CREDENTIAL_MANAGER_TOOLBAR_SECTION); - } -} http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/a9a52bd5/taverna-credential-manager-ui/src/main/java/org/apache/taverna/workbench/ui/credentialmanager/CMStrings.java ---------------------------------------------------------------------- diff --git a/taverna-credential-manager-ui/src/main/java/org/apache/taverna/workbench/ui/credentialmanager/CMStrings.java b/taverna-credential-manager-ui/src/main/java/org/apache/taverna/workbench/ui/credentialmanager/CMStrings.java new file mode 100644 index 0000000..849fb96 --- /dev/null +++ b/taverna-credential-manager-ui/src/main/java/org/apache/taverna/workbench/ui/credentialmanager/CMStrings.java @@ -0,0 +1,26 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one +* or more contributor license agreements. See the NOTICE file +* distributed with this work for additional information +* regarding copyright ownership. The ASF licenses this file +* to you under the Apache License, Version 2.0 (the +* "License"); you may not use this file except in compliance +* with the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. See the License for the +* specific language governing permissions and limitations +* under the License. +*/ + +package org.apache.taverna.workbench.ui.credentialmanager; + +interface CMStrings { + String ALERT_TITLE = "Credential Manager Alert"; + String ERROR_TITLE = "Credential Manager Error"; + String WARN_TITLE = "Credential Manager Warning"; +}
