You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@taverna.apache.org by st...@apache.org on 2015/02/17 21:49:32 UTC
[05/16] incubator-taverna-workbench-common-activities git commit:
Temporarily empty repository
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/ConfirmTrustedCertificateDialog.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/ConfirmTrustedCertificateDialog.java b/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/ConfirmTrustedCertificateDialog.java
deleted file mode 100644
index bc58aad..0000000
--- a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/ConfirmTrustedCertificateDialog.java
+++ /dev/null
@@ -1,586 +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.activities.wsdl.servicedescriptions;
-
-import java.awt.BorderLayout;
-import java.awt.Color;
-import java.awt.Dialog;
-import java.awt.FlowLayout;
-import java.awt.Frame;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.awt.Insets;
-import java.awt.Font;
-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.util.HashMap;
-
-import javax.swing.JButton;
-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 javax.swing.JSeparator;
-
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-import java.security.cert.CertificateEncodingException;
-import java.security.cert.X509Certificate;
-import javax.security.auth.x500.X500Principal;
-
-import net.sf.taverna.t2.lang.ui.DialogTextArea;
-import net.sf.taverna.t2.security.credentialmanager.CMException;
-import net.sf.taverna.t2.security.credentialmanager.CMUtils;
-import net.sf.taverna.t2.workbench.helper.HelpEnabledDialog;
-
-import org.apache.log4j.Logger;
-import org.bouncycastle.asn1.ASN1OctetString;
-import org.bouncycastle.asn1.DERBitString;
-import org.bouncycastle.asn1.DEROctetString;
-import org.bouncycastle.asn1.misc.NetscapeCertType;
-
-/**
- * Displays the details of a X.509 certificate and asks user if they want to
- * trust it.
- *
- * @author Alex Nenadic
- */
-@SuppressWarnings("serial")
-public class ConfirmTrustedCertificateDialog extends HelpEnabledDialog {
-
- private static Logger logger = Logger.getLogger(ConfirmTrustedCertificateDialog.class);
-
- // Stores certificate to display
- private X509Certificate cert;
-
- // Stores user's decision as whether to trust this service's certificaet or not.
- private boolean shouldTrust;
-
- /**
- * Creates new ConfirmTrustedCertificateDialog where parent is a Frame.
- */
- public ConfirmTrustedCertificateDialog(Frame parent, String title,
- boolean modal, X509Certificate crt)
- throws CMException {
- super(parent, title, modal, null);
- this.cert = crt;
- initComponents();
- }
-
- /**
- * Creates new ConfirmTrustedCertificateDialog where parent is a Dialog.
- */
- public ConfirmTrustedCertificateDialog(Dialog parent, String title,
- boolean modal, X509Certificate crt)
- throws CMException {
- super(parent, title, modal, null);
- this.cert = crt;
- initComponents();
- }
-
- /**
- * Initialise the dialog's GUI components.
- */
- private void initComponents(){
-
- // title panel
- JPanel titlePanel = new JPanel(new BorderLayout());
- titlePanel.setBackground(Color.WHITE);
- JLabel titleLabel = new JLabel("View service's certificate");
- titleLabel.setFont(titleLabel.getFont().deriveFont(Font.BOLD, 13.5f));
- titleLabel.setBorder(new EmptyBorder(10, 10, 0, 10));
- DialogTextArea titleMessage = new DialogTextArea("This service requires HTTPS connection and has identified itself with the certificate below.\n" +
- "Do you want to trust this service? (Refusing to trust means you will not be able to invoke it from a workflow.)");
- titleMessage.setMargin(new Insets(5, 20, 10, 10));
- titleMessage.setFont(titleMessage.getFont().deriveFont(11f));
- titleMessage.setEditable(false);
- titleMessage.setFocusable(false);
- titlePanel.setBorder( new EmptyBorder(10, 10, 0, 10));
- titlePanel.add(titleLabel, BorderLayout.NORTH);
- titlePanel.add(titleMessage, BorderLayout.CENTER);
-
- // 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 = GridBagConstraints.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 = GridBagConstraints.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
- 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(getIntendedUses(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(
- X500Principal.RFC2253);
- CMUtils util = new CMUtils();
- util.parseDN(sDN);
- // Extract the CN, O, OU and EMAILADDRESS fields
- String sCN = util.getCN();
- String sOrg = util.getO();
- String sOU = util.getOU();
- // String sEMAILADDRESS = CMX509Util.getEmilAddress();
- // Common Name (CN)
- JLabel jlCN = new JLabel("Common Name (CN)");
- jlCN.setFont(new Font(null, Font.PLAIN, 11));
- GridBagConstraints gbc_jlCN = (GridBagConstraints) gbcLabel.clone();
- gbc_jlCN.gridy = 2;
- JLabel jlCNValue = new JLabel(sCN);
- jlCNValue.setFont(new Font(null, Font.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, Font.PLAIN, 11));
- GridBagConstraints gbc_jlOrg = (GridBagConstraints) gbcLabel.clone();
- gbc_jlOrg.gridy = 3;
- JLabel jlOrgValue = new JLabel(sOrg);
- jlOrgValue.setFont(new Font(null, Font.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, Font.PLAIN, 11));
- GridBagConstraints gbc_jlOU = (GridBagConstraints) gbcLabel.clone();
- gbc_jlOU.gridy = 4;
- JLabel jlOUValue = new JLabel(sOU);
- jlOUValue.setFont(new Font(null, Font.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, Font.PLAIN, 11));
- // GridBagConstraints gbc_jlEmail = (GridBagConstraints)
- // gbcLabel.clone();
- // gbc_jlEmail.gridy = 5;
- // JLabel jlEmailValue = new JLabel(sEMAILADDRESS);
- // jlEmailValue.setFont(new Font(null, Font.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, Font.PLAIN, 11));
- GridBagConstraints gbc_jlSN = (GridBagConstraints) gbcLabel.clone();
- gbc_jlSN.gridy = 6;
- JLabel jlSNValue = new JLabel();
- // Get the hexadecimal serial number
- StringBuffer strBuff = new StringBuffer(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, Font.PLAIN, 11));
- GridBagConstraints gbc_jlSNValue = (GridBagConstraints) gbcValue
- .clone();
- gbc_jlSNValue.gridy = 6;
- // Version
- JLabel jlVersion = new JLabel("Version");
- jlVersion.setFont(new Font(null, Font.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, Font.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, Font.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(
- X500Principal.RFC2253);
- util.parseDN(iDN);
- // Extract the CN, O and OU fields
- String iCN = util.getCN();
- String iOrg = util.getO();
- String iOU = util.getOU();
- // Common Name (CN)
- JLabel jlICN = new JLabel("Common Name (CN)");
- jlICN.setFont(new Font(null, Font.PLAIN, 11));
- GridBagConstraints gbc_jlICN = (GridBagConstraints) gbcLabel.clone();
- gbc_jlICN.gridy = 9;
- JLabel jlICNValue = new JLabel(iCN);
- jlICNValue.setFont(new Font(null, Font.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, Font.PLAIN, 11));
- GridBagConstraints gbc_jlIOrg = (GridBagConstraints) gbcLabel.clone();
- gbc_jlIOrg.gridy = 10;
- JLabel jlIOrgValue = new JLabel(iOrg);
- jlIOrgValue.setFont(new Font(null, Font.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, Font.PLAIN, 11));
- GridBagConstraints gbc_jlIOU = (GridBagConstraints) gbcLabel.clone();
- gbc_jlIOU.gridy = 11;
- JLabel jlIOUValue = new JLabel(iOU);
- jlIOUValue.setFont(new Font(null, Font.PLAIN, 11));
- GridBagConstraints gbc_jlIOUValue = (GridBagConstraints) gbcValue
- .clone();
- gbc_jlIOUValue.gridy = 11;
- // Validity
- JLabel jlValidity = new JLabel("Validity");
- jlValidity.setFont(new Font(null, Font.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, Font.PLAIN, 11));
- GridBagConstraints gbc_jlIssuedOn = (GridBagConstraints) gbcLabel
- .clone();
- gbc_jlIssuedOn.gridy = 13;
- JLabel jlIssuedOnValue = new JLabel(cert.getNotBefore().toString());
- jlIssuedOnValue.setFont(new Font(null, Font.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, Font.PLAIN, 11));
- GridBagConstraints gbc_jlExpiresOn = (GridBagConstraints) gbcLabel
- .clone();
- gbc_jlExpiresOn.gridy = 14;
- JLabel jlExpiresOnValue = new JLabel(cert.getNotAfter().toString());
- jlExpiresOnValue.setFont(new Font(null, Font.PLAIN, 11));
- GridBagConstraints gbc_jlExpiresOnValue = (GridBagConstraints) gbcValue
- .clone();
- gbc_jlExpiresOnValue.gridy = 14;
-
- // Fingerprints
- byte[] bCert = new byte[0];
- try {
- bCert = cert.getEncoded();
- } catch (CertificateEncodingException ex) {
- logger.error("Could not get the encoded form of the certificate.", ex);
- }
- JLabel jlFingerprints = new JLabel("Fingerprints");
- jlFingerprints.setFont(new Font(null, Font.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, Font.PLAIN, 11));
- GridBagConstraints gbc_jlSHA1Fingerprint = (GridBagConstraints) gbcLabel
- .clone();
- gbc_jlSHA1Fingerprint.gridy = 16;
- JLabel jlSHA1FingerprintValue = new JLabel(getMessageDigest(bCert,
- "SHA1"));
- jlSHA1FingerprintValue.setFont(new Font(null, Font.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, Font.PLAIN, 11));
- GridBagConstraints gbc_jlMD5Fingerprint = (GridBagConstraints) gbcLabel
- .clone();
- gbc_jlMD5Fingerprint.gridy = 17;
- JLabel jlMD5FingerprintValue = new JLabel(
- getMessageDigest(bCert, "MD5"));
- jlMD5FingerprintValue.setFont(new Font(null, Font.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
-
- // OK button
- JPanel jpButtons = new JPanel(new FlowLayout(FlowLayout.CENTER));
-
- final JButton jbTrust = new JButton("Trust");
- jbTrust.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent evt) {
- trustPressed();
- }
- });
- final JButton jbDontTrust = new JButton("Do not trust");
- jbDontTrust.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent evt) {
- dontTrustPressed();
- }
- });
-
- jpButtons.add(jbTrust);
- jpButtons.add(jbDontTrust);
-
- // Put it all together
- getContentPane().add(titlePanel, BorderLayout.NORTH);
- getContentPane().add(jpCertificate, BorderLayout.CENTER);
- getContentPane().add(jpButtons, BorderLayout.SOUTH);
-
- // Resizing wreaks havoc
- setResizable(false);
-
- addWindowListener(new WindowAdapter() {
- public void windowClosing(WindowEvent evt) {
- closeDialog();
- }
- });
-
- getRootPane().setDefaultButton(jbTrust);
-
- pack();
- }
-
- /**
- * Get the digest of a message as a formatted String.
- *
- * @param bMessage
- * The message to digest
- * @param digestType
- * The message digest algorithm
- * @return The message digest
- */
- public static String getMessageDigest(byte[] bMessage, String digestType) {
- // Create message digest object using the supplied algorithm
- MessageDigest messageDigest;
- try {
- messageDigest = MessageDigest.getInstance(digestType);
- } catch (NoSuchAlgorithmException ex) {
- logger.error("Failed to create message digest.", ex);
- return "";
- }
-
- // Create raw message digest
- byte[] bFingerPrint = messageDigest.digest(bMessage);
-
- // Place the raw message digest into a StringBuffer as a Hex number
- StringBuffer strBuff = new StringBuffer(new BigInteger(1, bFingerPrint)
- .toString(16).toUpperCase());
-
- // Odd number of characters so add in a padding "0"
- if ((strBuff.length() % 2) != 0) {
- strBuff.insert(0, '0');
- }
-
- // Place colons at every two hex characters
- if (strBuff.length() > 2) {
- for (int iCnt = 2; iCnt < strBuff.length(); iCnt += 3) {
- strBuff.insert(iCnt, ':');
- }
- }
-
- // Return the formatted message digest
- return strBuff.toString();
- }
-
- /**
- * Gets the intended certificate uses, i.e. Netscape Certificate Type
- * extension (2.16.840.1.113730.1.1) value as a string
- *
- * @param value
- * Extension value as a DER-encoded OCTET string
- * @return Extension value as a string
- */
- private String getIntendedUses(byte[] value) {
-
- // Netscape Certificate Types (2.16.840.1.113730.1.1)
- int[] INTENDED_USES = new int[] { NetscapeCertType.sslClient,
- NetscapeCertType.sslServer, NetscapeCertType.smime,
- NetscapeCertType.objectSigning, NetscapeCertType.reserved,
- NetscapeCertType.sslCA, NetscapeCertType.smimeCA,
- NetscapeCertType.objectSigningCA, };
-
- // Netscape Certificate Type strings (2.16.840.1.113730.1.1)
- HashMap<String, String> INTENDED_USES_STRINGS = new HashMap<String, String>();
- INTENDED_USES_STRINGS.put("128", "SSL Client");
- INTENDED_USES_STRINGS.put("64", "SSL Server");
- INTENDED_USES_STRINGS.put("32", "S/MIME");
- INTENDED_USES_STRINGS.put("16", "Object Signing");
- INTENDED_USES_STRINGS.put("8", "Reserved");
- INTENDED_USES_STRINGS.put("4", "SSL CA");
- INTENDED_USES_STRINGS.put("2", "S/MIME CA");
- INTENDED_USES_STRINGS.put("1", "Object Signing CA");
-
- // Get octet string from extension value
- ASN1OctetString fromByteArray = new DEROctetString(value);
- byte[] octets = fromByteArray.getOctets();
- DERBitString fromByteArray2 = new DERBitString(octets);
- int val = new NetscapeCertType(fromByteArray2).intValue();
- StringBuffer strBuff = new StringBuffer();
- for (int i = 0, len = INTENDED_USES.length; i < len; i++) {
- int use = INTENDED_USES[i];
- if ((val & use) == use) {
- strBuff.append(INTENDED_USES_STRINGS.get(String.valueOf(use))
- + ", \n");
- }
- }
- // remove the last ", \n" from the end of the buffer
- String str = strBuff.toString();
- str = str.substring(0, str.length() - 3);
- return str;
- }
-
- /**
- * 'Trust' button pressed.
- */
- private void trustPressed() {
- shouldTrust = true;
- closeDialog();
- }
-
- /**
- * 'Do not trust' button pressed.
- */
- private void dontTrustPressed() {
- shouldTrust = false;
- closeDialog();
- }
-
- /**
- * Closes the dialog.
- */
- public void closeDialog() {
- setVisible(false);
- dispose();
- }
-
- public boolean shouldTrust() {
- return shouldTrust;
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLActivityIcon.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLActivityIcon.java b/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLActivityIcon.java
deleted file mode 100644
index 79f8ccd..0000000
--- a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLActivityIcon.java
+++ /dev/null
@@ -1,60 +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.activities.wsdl.servicedescriptions;
-
-import java.net.URI;
-
-import javax.swing.Icon;
-import javax.swing.ImageIcon;
-
-import net.sf.taverna.t2.workbench.activityicons.ActivityIconSPI;
-
-/**
- *
- * @author Alex Nenadic
- * @author alanrw
- *
- */
-public class WSDLActivityIcon implements ActivityIconSPI {
-
- private static Icon icon;
-
- public int canProvideIconScore(URI activityType) {
- if (activityType.equals(WSDLServiceDescription.ACTIVITY_TYPE))
- return DEFAULT_ICON + 1;
- else
- return NO_ICON;
- }
-
- public Icon getIcon(URI activityType) {
- return getWSDLIcon();
- }
-
- public static Icon getWSDLIcon() {
- if (icon == null) {
- icon = new ImageIcon(WSDLActivityIcon.class.getResource("/wsdl.png"));
- }
- return icon;
- }
-}
-
-
-
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLServiceDescription.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLServiceDescription.java b/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLServiceDescription.java
deleted file mode 100644
index faa3f8c..0000000
--- a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLServiceDescription.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*********************************************************************
- * Copyright (C) 2007-2009 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.activities.wsdl.servicedescriptions;
-
-import java.net.URI;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import javax.swing.Icon;
-
-import net.sf.taverna.t2.security.credentialmanager.CMException;
-import net.sf.taverna.t2.security.credentialmanager.CredentialManager;
-import net.sf.taverna.t2.servicedescriptions.ServiceDescription;
-
-import org.apache.log4j.Logger;
-
-import uk.org.taverna.scufl2.api.configurations.Configuration;
-
-import com.fasterxml.jackson.databind.node.ObjectNode;
-
-public class WSDLServiceDescription extends ServiceDescription {
-
- public static final URI ACTIVITY_TYPE = URI.create("http://ns.taverna.org.uk/2010/activity/wsdl");
- public static final URI INPUT_SPLITTER_TYPE = URI.create("http://ns.taverna.org.uk/2010/activity/xml-splitter/in");
- public static final URI OUTPUT_SPLITTER_TYPE = URI.create("http://ns.taverna.org.uk/2010/activity/xml-splitter/out");
-
- private static final String WSDL = "WSDL @ ";
-
- private String use;
- private URI uri;
- private String style;
- private String operation;
- private final CredentialManager credentialManager;
-
- private static Logger logger = Logger.getLogger(WSDLServiceDescription.class);
-
- public WSDLServiceDescription(CredentialManager credentialManager) {
- this.credentialManager = credentialManager;
- }
-
- public String getUse() {
- return use;
- }
-
- public void setUse(String use) {
- this.use = use;
- }
-
- public URI getURI() {
- return uri;
- }
-
- public void setURI(URI url) {
- this.uri = url;
- }
-
- public String getStyle() {
- return style;
- }
-
- public void setStyle(String style) {
- this.style = style;
- }
-
- public String getType() {
- return "WSDL";
- }
-
- @Override
- public String toString() {
- return operation;
- }
-
- public String getOperation() {
- return operation;
- }
-
- public void setOperation(String operation) {
- this.operation = operation;
- }
-
- public Icon getIcon() {
- return WSDLActivityIcon.getWSDLIcon();
- }
-
- @Override
- public URI getActivityType() {
- return ACTIVITY_TYPE;
- }
-
- @Override
- public Configuration getActivityConfiguration() {
- Configuration configuration = new Configuration();
- configuration.setType(ACTIVITY_TYPE.resolve("#Config"));
- ObjectNode json = (ObjectNode) configuration.getJson();
- ObjectNode operation = json.objectNode();
- json.put("operation", operation);
- operation.put("wsdl", getURI().toString());
- operation.put("name", getOperation());
- return configuration;
- }
-
- public String getName() {
- return getOperation();
- }
-
- public List<? extends Comparable<?>> getPath() {
- return Collections.singletonList(WSDL + getURI());
- }
-
- protected List<Object> getIdentifyingData() {
- return Arrays.<Object> asList(getURI(), getOperation());
- }
-
- @Override
- public boolean isTemplateService() {
- return needsSecurity();
- }
-
- protected boolean needsSecurity() {
- if (credentialManager == null) {
- // We don't know if it needs security or not
- return false;
- }
- // A match is a good indicator that security configuration is needed
- try {
- return credentialManager.hasUsernamePasswordForService(getURI());
- } catch (CMException e) {
- logger.warn("Could not check if credential manager has username/password for " + getURI(), e);
- return false;
- }
- }
-
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLServiceProvider.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLServiceProvider.java b/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLServiceProvider.java
deleted file mode 100644
index daf0cad..0000000
--- a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLServiceProvider.java
+++ /dev/null
@@ -1,206 +0,0 @@
-package net.sf.taverna.t2.activities.wsdl.servicedescriptions;
-
-import java.io.IOException;
-import java.net.URI;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import javax.swing.Icon;
-import javax.wsdl.Operation;
-import javax.wsdl.WSDLException;
-import javax.xml.parsers.ParserConfigurationException;
-
-import net.sf.taverna.t2.activities.wsdl.WSDLActivityHealthChecker;
-import net.sf.taverna.t2.lang.observer.Observable;
-import net.sf.taverna.t2.lang.observer.Observer;
-import net.sf.taverna.t2.security.credentialmanager.CredentialManager;
-import net.sf.taverna.t2.servicedescriptions.AbstractConfigurableServiceProvider;
-import net.sf.taverna.t2.servicedescriptions.CustomizedConfigurePanelProvider;
-import net.sf.taverna.t2.servicedescriptions.ServiceDescriptionRegistry;
-import net.sf.taverna.t2.servicedescriptions.events.RemovedProviderEvent;
-import net.sf.taverna.t2.servicedescriptions.events.ServiceDescriptionRegistryEvent;
-import net.sf.taverna.wsdl.parser.UnknownOperationException;
-import net.sf.taverna.wsdl.parser.WSDLParser;
-
-import org.apache.log4j.Logger;
-import org.xml.sax.SAXException;
-
-public class WSDLServiceProvider extends
- AbstractConfigurableServiceProvider<WSDLServiceProviderConfig> implements
- CustomizedConfigurePanelProvider<WSDLServiceProviderConfig> {
-
- private static Logger logger = Logger.getLogger(WSDLServiceProvider.class);
-
- private static final URI providerId = URI
- .create("http://taverna.sf.net/2010/service-provider/wsdl");
-
- private CredentialManager credentialManager;
-
- public static class FlushWSDLCacheOnRemovalObserver implements
- Observer<ServiceDescriptionRegistryEvent> {
- public void notify(
- Observable<ServiceDescriptionRegistryEvent> registry,
- ServiceDescriptionRegistryEvent event) throws Exception {
- if (!(event instanceof RemovedProviderEvent)) {
- return;
- }
- RemovedProviderEvent removedProviderEvent = (RemovedProviderEvent) event;
- if (!(removedProviderEvent.getProvider() instanceof WSDLServiceProvider)) {
- return;
- }
- WSDLServiceProvider serviceProvider = (WSDLServiceProvider) removedProviderEvent
- .getProvider();
- URI wsdlLocation = serviceProvider.getConfiguration().getURI();
- WSDLParser.flushCache(wsdlLocation.toASCIIString());
- logger.info("Flushed cache for WSDL " + wsdlLocation);
- }
- }
-
- private static final String WSDL_SERVICE = "WSDL service";
-
- private static FlushWSDLCacheOnRemovalObserver flushObserver = new FlushWSDLCacheOnRemovalObserver();
-
- private ServiceDescriptionRegistry serviceDescriptionRegistry;
-
- public WSDLServiceProvider() {
- super(new WSDLServiceProviderConfig("http://somehost/service?wsdl"));
- }
-
- public String getName() {
- return WSDL_SERVICE;
- }
-
- public List<WSDLServiceProviderConfig> getDefaultConfigurations() {
-
- List<WSDLServiceProviderConfig> defaults = new ArrayList<WSDLServiceProviderConfig>();
-
- // If defaults have failed to load from a configuration file then load them here.
- if (!serviceDescriptionRegistry.isDefaultSystemConfigurableProvidersLoaded()){
- // 2009-12-16: 503 server error
- defaults.add(new WSDLServiceProviderConfig(
- "http://eutils.ncbi.nlm.nih.gov/entrez/eutils/soap/eutils.wsdl"));
- defaults.add(new WSDLServiceProviderConfig(
- "http://soap.bind.ca/wsdl/bind.wsdl"));
- defaults.add(new WSDLServiceProviderConfig(
- "http://www.ebi.ac.uk/ws/services/urn:Dbfetch?wsdl"));
- } // else return an empty list
-
- return defaults;
- }
-
- public void findServiceDescriptionsAsync(
- FindServiceDescriptionsCallBack callBack) {
-
- URI wsdl = serviceProviderConfig.getURI();
-
- callBack.status("Parsing wsdl:" + wsdl);
- WSDLParser parser = null;
- try {
- parser = new WSDLParser(wsdl.toASCIIString());
- List<Operation> operations = parser.getOperations();
- callBack.status("Found " + operations.size() + " WSDL operations:"
- + wsdl);
- List<WSDLServiceDescription> items = new ArrayList<WSDLServiceDescription>();
- for (Operation op : operations) {
- WSDLServiceDescription item = new WSDLServiceDescription(credentialManager);
- try {
- String name = op.getName();
- item.setOperation(name);
- String use = parser.getUse(name);
- String style = parser.getStyle();
- if (!WSDLActivityHealthChecker.checkStyleAndUse(style, use)) {
- logger.warn("Unsupported style and use combination " + style + "/" + use + " for operation " + name + " from " + wsdl);
- continue;
- }
- item.setUse(use);
- item.setStyle(style);
- item.setURI(wsdl);
- item.setDescription(parser.getOperationDocumentation(name));
- items.add(item);
- } catch (UnknownOperationException e) {
- String message = "Encountered an unexpected operation name:"
- + item.getOperation();
- callBack.fail(message, e);
- }
- }
- callBack.partialResults(items);
- callBack.finished();
- } catch (ParserConfigurationException e) {
- String message = "Error configuring the WSDL parser";
- callBack.fail(message, e);
- } catch (WSDLException e) {
- String message = "There was an error with the wsdl: " + wsdl;
- callBack.fail(message, e);
- } catch (IOException e) {
- String message = "There was an IO error parsing the wsdl: " + wsdl
- + " Possible reason: the wsdl location was incorrect.";
- callBack.fail(message, e);
- } catch (SAXException e) {
- String message = "There was an error with the XML in the wsdl: "
- + wsdl;
- callBack.fail(message, e);
- } catch (IllegalArgumentException e) { // a problem with the wsdl url
- String message = "There was an error with the wsdl: " + wsdl + " "
- + "Possible reason: the wsdl location was incorrect.";
- callBack.fail(message, e);
- } catch (Exception e) { // anything else we did not expect
- String message = "There was an error with the wsdl: " + wsdl;
- callBack.fail(message, e);
- }
- }
-
- @Override
- public String toString() {
- return getName() + " " + getConfiguration().getURI();
- }
-
- public Icon getIcon() {
- return WSDLActivityIcon.getWSDLIcon();
- }
-
- @Override
- protected List<? extends Object> getIdentifyingData() {
- List<String> result;
- result = Arrays.asList(getConfiguration().getURI().toString());
- return result;
- }
-
- /**
- * Will be set by ServiceDescriptionRegistryImpl
- *
- * @param registry Registry this provider has been added to
- */
- public void setServiceDescriptionRegistry(ServiceDescriptionRegistry serviceDescriptionRegistry) {
- this.serviceDescriptionRegistry = serviceDescriptionRegistry;
- synchronized (flushObserver) {
- // Add the (static common) observer if the registry does not have it
- if (!serviceDescriptionRegistry.getObservers().contains(flushObserver)) {
- serviceDescriptionRegistry.addObserver(flushObserver);
- }
- }
- }
-
- @SuppressWarnings("serial")
- public void createCustomizedConfigurePanel(final CustomizedConfigureCallBack<WSDLServiceProviderConfig> callBack) {
-
- AddWSDLServiceDialog addWSDLServiceDialog = new AddWSDLServiceDialog() {
- @Override
- protected void addRegistry(String wsdlURL) {
-
- WSDLServiceProviderConfig providerConfig = new WSDLServiceProviderConfig(wsdlURL);
- callBack.newProviderConfiguration(providerConfig);
- }
- };
- addWSDLServiceDialog.setVisible(true);
- }
-
- public String getId() {
- return providerId.toString();
- }
-
- public void setCredentialManager(CredentialManager credentialManager) {
- this.credentialManager = credentialManager;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLServiceProviderConfig.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLServiceProviderConfig.java b/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLServiceProviderConfig.java
deleted file mode 100644
index 9a63c03..0000000
--- a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/WSDLServiceProviderConfig.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package net.sf.taverna.t2.activities.wsdl.servicedescriptions;
-
-import java.net.URI;
-
-import net.sf.taverna.t2.lang.beans.PropertyAnnotated;
-import net.sf.taverna.t2.lang.beans.PropertyAnnotation;
-
-public class WSDLServiceProviderConfig extends PropertyAnnotated {
- private URI uri;
-
- public WSDLServiceProviderConfig() {
- }
-
- public WSDLServiceProviderConfig(String uri) {
- this.uri = URI.create(uri);
- }
-
- @PropertyAnnotation(displayName = "WSDL location", preferred = true)
- public URI getURI() {
- return uri;
- }
-
- public void setURI(URI uri) {
- this.uri = uri;
- }
-
- @Override
- public String toString() {
- return getURI().toASCIIString();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/XMLInputSplitterActivityIcon.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/XMLInputSplitterActivityIcon.java b/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/XMLInputSplitterActivityIcon.java
deleted file mode 100644
index cc92f3b..0000000
--- a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/XMLInputSplitterActivityIcon.java
+++ /dev/null
@@ -1,63 +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.activities.wsdl.servicedescriptions;
-
-import java.net.URI;
-
-import javax.swing.Icon;
-import javax.swing.ImageIcon;
-
-import net.sf.taverna.t2.workbench.activityicons.ActivityIconSPI;
-
-/**
- *
- * @author Alex Nenadic
- *
- */
-public class XMLInputSplitterActivityIcon implements ActivityIconSPI{
-
- private static final URI ACTIVITY_TYPE = URI.create("http://ns.taverna.org.uk/2010/activity/xml-splitter/in");
-
- private static Icon icon = null;
-
- public int canProvideIconScore(URI activityType) {
- if (activityType.equals(ACTIVITY_TYPE))
- return DEFAULT_ICON + 1;
- else
- return NO_ICON;
- }
-
- public Icon getIcon(URI activityType) {
- return getXMLOutputSplitterIcon();
- }
-
- public static Icon getXMLOutputSplitterIcon() {
- if (icon == null) {
- icon = new ImageIcon(XMLOutputSplitterActivityIcon.class.getResource("/xml-splitter.png"));
- }
- return icon;
- }
-
-}
-
-
-
-
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/XMLOutputSplitterActivityIcon.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/XMLOutputSplitterActivityIcon.java b/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/XMLOutputSplitterActivityIcon.java
deleted file mode 100644
index 73c9bcb..0000000
--- a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/servicedescriptions/XMLOutputSplitterActivityIcon.java
+++ /dev/null
@@ -1,64 +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.activities.wsdl.servicedescriptions;
-
-import java.net.URI;
-
-import javax.swing.Icon;
-import javax.swing.ImageIcon;
-
-import net.sf.taverna.t2.workbench.activityicons.ActivityIconSPI;
-
-/**
- *
- * @author Alex Nenadic
- *
- */
-public class XMLOutputSplitterActivityIcon implements ActivityIconSPI{
-
- private static final URI ACTIVITY_TYPE = URI.create("http://ns.taverna.org.uk/2010/activity/xml-splitter/out");
-
- private static Icon icon = null;
-
- public int canProvideIconScore(URI activityType) {
- if (activityType.equals(ACTIVITY_TYPE))
- return DEFAULT_ICON + 1;
- else
- return NO_ICON;
- }
-
- public Icon getIcon(URI activityType) {
- return getXMLOutputSplitterIcon();
- }
-
- public static Icon getXMLOutputSplitterIcon() {
- if (icon == null) {
- icon = new ImageIcon(XMLOutputSplitterActivityIcon.class.getResource("/xml-splitter.png"));
- }
- return icon;
- }
-
-}
-
-
-
-
-
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/AbstractXMLSplitterActionView.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/AbstractXMLSplitterActionView.java b/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/AbstractXMLSplitterActionView.java
deleted file mode 100644
index 0ca95e5..0000000
--- a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/AbstractXMLSplitterActionView.java
+++ /dev/null
@@ -1,159 +0,0 @@
-package net.sf.taverna.t2.activities.wsdl.views;
-
-import java.io.IOException;
-import java.util.Map;
-
-import javax.swing.JButton;
-import javax.swing.JComponent;
-import javax.swing.JPanel;
-import javax.wsdl.WSDLException;
-import javax.xml.parsers.ParserConfigurationException;
-
-import net.sf.taverna.t2.activities.wsdl.actions.AbstractAddXMLSplitterAction;
-import net.sf.taverna.t2.activities.wsdl.actions.AddXMLInputSplitterAction;
-import net.sf.taverna.t2.activities.wsdl.actions.AddXMLOutputSplitterAction;
-import net.sf.taverna.t2.activities.wsdl.servicedescriptions.WSDLServiceDescription;
-import net.sf.taverna.t2.workbench.configuration.colour.ColourManager;
-import net.sf.taverna.t2.workbench.edits.EditManager;
-import net.sf.taverna.t2.workbench.selection.SelectionManager;
-import net.sf.taverna.t2.workbench.ui.actions.activity.HTMLBasedActivityContextualView;
-import net.sf.taverna.wsdl.parser.TypeDescriptor;
-import net.sf.taverna.wsdl.parser.UnknownOperationException;
-
-import org.apache.log4j.Logger;
-import org.jdom.JDOMException;
-import org.xml.sax.SAXException;
-
-import uk.org.taverna.scufl2.api.activity.Activity;
-import uk.org.taverna.scufl2.api.port.DepthPort;
-import uk.org.taverna.scufl2.api.port.InputActivityPort;
-import uk.org.taverna.scufl2.api.port.OutputActivityPort;
-
-@SuppressWarnings("serial")
-public abstract class AbstractXMLSplitterActionView extends HTMLBasedActivityContextualView {
-
- private static Logger logger = Logger.getLogger(AbstractXMLSplitterActionView.class);
- protected final EditManager editManager;
- protected final SelectionManager selectionManager;
- protected AbstractAddXMLSplitterAction splitterAction;
-
- public AbstractXMLSplitterActionView(Activity activity, EditManager editManager,
- SelectionManager selectionManager, ColourManager colourManager) {
- super(activity, colourManager);
- this.editManager = editManager;
- this.selectionManager = selectionManager;
- if (getActivity().getType().equals(WSDLServiceDescription.OUTPUT_SPLITTER_TYPE)) {
- splitterAction = new AddXMLOutputSplitterAction(getActivity(),
- null, editManager, selectionManager);
- } else if (getActivity().getType().equals(WSDLServiceDescription.INPUT_SPLITTER_TYPE)) {
- splitterAction = new AddXMLInputSplitterAction(getActivity(),
- null, editManager, selectionManager);
- }
- super.initView();
- }
-
- @Override
- public void initView() {
- }
-
- protected void addOutputSplitter(final JComponent mainFrame, JPanel flowPanel) {
- if (getActivity().getType().equals(WSDLServiceDescription.OUTPUT_SPLITTER_TYPE)) {
- try {
- Map<String, TypeDescriptor> descriptors = splitterAction.getTypeDescriptors();
- if (!AbstractAddXMLSplitterAction.filterDescriptors(descriptors).isEmpty()) {
- flowPanel.add(new JButton(splitterAction));
- }
- } catch (UnknownOperationException | IOException | ParserConfigurationException
- | WSDLException | SAXException | JDOMException e) {
- logger.warn("Could not find type descriptors for " + getActivity(), e);
- }
- }
- }
-
- protected void addInputSplitter(final JComponent mainFrame, JPanel flowPanel) {
- if (getActivity().getType().equals(WSDLServiceDescription.INPUT_SPLITTER_TYPE)) {
- try {
- Map<String, TypeDescriptor> descriptors = splitterAction.getTypeDescriptors();
- if (!AbstractAddXMLSplitterAction.filterDescriptors(descriptors).isEmpty()) {
- splitterAction.setOwner(mainFrame);
- flowPanel.add(new JButton(splitterAction));
- }
- } catch (UnknownOperationException | IOException | ParserConfigurationException
- | WSDLException | SAXException | JDOMException e) {
- logger.warn("Could not find type descriptors for " + getActivity(), e);
- }
- }
- }
-
- protected String describePorts() {
- StringBuilder html = new StringBuilder();
-
- if (!getActivity().getInputPorts().isEmpty()) {
- html.append("<tr><th colspan='2' align='left'>Inputs</th></tr>");
- for (InputActivityPort port : getActivity().getInputPorts()) {
- TypeDescriptor descriptor = null;
- if (getActivity().getType().equals(WSDLServiceDescription.INPUT_SPLITTER_TYPE)) {
- try {
- descriptor = splitterAction.getTypeDescriptors().get(port.getName());
- } catch (UnknownOperationException | IOException | ParserConfigurationException
- | WSDLException | SAXException | JDOMException e) {
- logger.warn("Could not find type descriptors for " + getActivity(), e);
- }
- }
- if (descriptor == null) {
- html.append(describePort(port));
- } else {
- html.append(describePort(port, descriptor));
- }
-
- }
- }
-
- if (!getActivity().getOutputPorts().isEmpty()) {
- html.append("<tr><th colspan='2' align='left'>Outputs</th></tr>");
- for (OutputActivityPort port : getActivity().getOutputPorts()) {
- TypeDescriptor descriptor = null;
- if (getActivity().getType().equals(WSDLServiceDescription.OUTPUT_SPLITTER_TYPE)) {
- try {
- descriptor = splitterAction.getTypeDescriptors().get(port.getName());
- } catch (UnknownOperationException | IOException | ParserConfigurationException
- | WSDLException | SAXException | JDOMException e) {
- logger.warn("Could not find type descriptors for " + getActivity(), e);
- }
- }
- if (descriptor == null) {
- html.append(describePort(port));
- } else {
- html.append(describePort(port, descriptor));
- }
- }
- }
-
- return html.toString();
- }
-
- private String describePort(DepthPort port, TypeDescriptor descriptor) {
- String html = "<tr><td>" + port.getName() + "</td><td>";
- if (descriptor != null && descriptor.isOptional()) {
- html += "<em>optional</em><br>";
- }
- html+="Depth:"+port.getDepth()+"<br>";
- if (descriptor != null ) {
- html+="<code>"+descriptor.getQname().toString()+"</code><br>";
-// if (descriptor.getDocumentation() != null && !descriptor.getDocumentation().isEmpty()){
-// html += "<p>"+descriptor.getDocumentation()+"</p>";
-// }
- }
-
- html+="</td></tr>";
- return html;
- }
-
- private String describePort(DepthPort port) {
- String html = "<tr><td>" + port.getName() + "</td><td>";
- html += "Depth:" + port.getDepth() + "<br>";
- html += "</td></tr>";
- return html;
- }
-
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/WSDLActivityConfigurationView.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/WSDLActivityConfigurationView.java b/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/WSDLActivityConfigurationView.java
deleted file mode 100644
index 4f728d9..0000000
--- a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/WSDLActivityConfigurationView.java
+++ /dev/null
@@ -1,446 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007-2008 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.activities.wsdl.views;
-
-import java.awt.BorderLayout;
-import java.awt.Color;
-import java.awt.Component;
-import java.awt.Dimension;
-import java.awt.Font;
-import java.awt.Graphics;
-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.ItemEvent;
-import java.awt.event.ItemListener;
-import java.net.URI;
-
-import javax.swing.ButtonGroup;
-import javax.swing.JButton;
-import javax.swing.JCheckBox;
-import javax.swing.JComboBox;
-import javax.swing.JComponent;
-import javax.swing.JLabel;
-import javax.swing.JList;
-import javax.swing.JPanel;
-import javax.swing.JRadioButton;
-import javax.swing.SwingConstants;
-import javax.swing.border.Border;
-import javax.swing.border.EmptyBorder;
-import javax.swing.plaf.basic.BasicComboBoxRenderer;
-
-import net.sf.taverna.t2.activities.wsdl.security.SecurityProfiles;
-import net.sf.taverna.t2.lang.ui.DialogTextArea;
-import net.sf.taverna.t2.security.credentialmanager.CredentialManager;
-import net.sf.taverna.t2.workbench.ui.credentialmanager.CredentialManagerUI;
-import net.sf.taverna.t2.workbench.ui.views.contextualviews.activity.ActivityConfigurationPanel;
-import uk.org.taverna.scufl2.api.activity.Activity;
-
-/**
- * Configuration dialog for WSDL activity.
- *
- * @author Alex Nenadic
- */
-@SuppressWarnings("serial")
-public class WSDLActivityConfigurationView extends ActivityConfigurationPanel implements ItemListener {
-
- private CredentialManager credentialManager;
- private CredentialManagerUI credManagerUI;
-
- private ButtonGroup buttonGroup;
- private JRadioButton noSecurityRadioButton;
- private JLabel noSecurityLabel;
- private JRadioButton httpSecurityAuthNRadioButton;
- private JLabel httpSecurityAuthNLabel;
- private JRadioButton wsSecurityAuthNRadioButton;
- private JLabel wsSecurityAuthNLabel;
-
- // Password types
- private final String PLAINTEXT_PASSWORD = "Plaintext password";
- private final String DIGEST_PASSWORD = "Digest password";
- private String[] passwordTypes = new String[] { PLAINTEXT_PASSWORD, DIGEST_PASSWORD };
- private String[] tooltips = new String[] {
- "Password will be sent in plaintext (which is OK if service is using HTTPS)",
- "Password will be digested (cryptographically hashed) before sending" };
- private JComboBox<String> passwordTypeComboBox;
- private JCheckBox addTimestampCheckBox;
- private JButton setHttpUsernamePasswordButton;
- private JButton setWsdlUsernamePasswordButton;
-
- // private Logger logger = Logger.getLogger(WSDLActivityConfigurationView.class);
-
- public WSDLActivityConfigurationView(Activity activity, CredentialManager credentialManager) {
- super(activity);
- this.credentialManager = credentialManager;
- initialise();
- }
-
- @Override
- protected void initialise() {
- super.initialise();
-
- int gridy = 0;
-
- // title panel
- JPanel titlePanel = new JPanel(new BorderLayout());
- titlePanel.setBackground(Color.WHITE);
- JLabel titleLabel = new JLabel("Security configuration");
- titleLabel.setFont(titleLabel.getFont().deriveFont(Font.BOLD, 13.5f));
- titleLabel.setBorder(new EmptyBorder(10, 10, 0, 10));
- DialogTextArea titleMessage = new DialogTextArea(
- "Select a security profile for the service");
- titleMessage.setMargin(new Insets(5, 20, 10, 10));
- titleMessage.setFont(titleMessage.getFont().deriveFont(11f));
- titleMessage.setEditable(false);
- titleMessage.setFocusable(false);
- titlePanel.setBorder(new EmptyBorder(10, 10, 0, 10));
- titlePanel.add(titleLabel, BorderLayout.NORTH);
- titlePanel.add(titleMessage, BorderLayout.CENTER);
- addDivider(titlePanel, SwingConstants.BOTTOM, true);
-
- // Main panel
- JPanel mainPanel = new JPanel();
- mainPanel.setLayout(new GridBagLayout());
- mainPanel.setBorder(new EmptyBorder(10, 10, 10, 10));
-
- // Create the radio buttons
- noSecurityRadioButton = new JRadioButton("None");
- noSecurityRadioButton.addItemListener(this);
-
- wsSecurityAuthNRadioButton = new JRadioButton(
- "WS-Security username and password authentication");
- wsSecurityAuthNRadioButton.addItemListener(this);
-
- httpSecurityAuthNRadioButton = new JRadioButton("HTTP username and password authentication");
- httpSecurityAuthNRadioButton.addItemListener(this);
-
- // Group the radio buttons
- buttonGroup = new ButtonGroup();
- buttonGroup.add(noSecurityRadioButton);
- buttonGroup.add(wsSecurityAuthNRadioButton);
- buttonGroup.add(httpSecurityAuthNRadioButton);
-
- GridBagConstraints gbc = new GridBagConstraints();
- gbc.weightx = 1.0;
- gbc.weighty = 0.0;
-
- gbc.gridx = 0;
- gbc.gridy = gridy++;
- gbc.fill = GridBagConstraints.NONE;
- gbc.anchor = GridBagConstraints.WEST;
- gbc.insets = new Insets(5, 10, 0, 0);
- mainPanel.add(noSecurityRadioButton, gbc);
-
- noSecurityLabel = new JLabel("Service requires no security");
- noSecurityLabel.setFont(noSecurityLabel.getFont().deriveFont(11f));
- // addDivider(noSecurityLabel, SwingConstants.BOTTOM, false);
- gbc.gridx = 0;
- gbc.gridy = gridy++;
- gbc.fill = GridBagConstraints.HORIZONTAL;
- gbc.anchor = GridBagConstraints.WEST;
- gbc.insets = new Insets(0, 40, 10, 10);
- mainPanel.add(noSecurityLabel, gbc);
-
- gbc.gridx = 0;
- gbc.gridy = gridy++;
- gbc.fill = GridBagConstraints.NONE;
- gbc.anchor = GridBagConstraints.WEST;
- gbc.insets = new Insets(5, 10, 0, 0);
- mainPanel.add(httpSecurityAuthNRadioButton, gbc);
-
- ActionListener usernamePasswordListener = new ActionListener() {
-
- public void actionPerformed(ActionEvent e) {
- // Get Credential Manager UI to get the username and password for the service
- if (credManagerUI == null) {
- credManagerUI = new CredentialManagerUI(credentialManager);
- }
- credManagerUI.newPasswordForService(URI.create(getJson().get("operation")
- .get("wsdl").textValue()));
- }
- };
-
- httpSecurityAuthNLabel = new JLabel(
- "Service requires HTTP username and password in order to authenticate the user");
- httpSecurityAuthNLabel.setFont(httpSecurityAuthNLabel.getFont().deriveFont(11f));
- gbc.gridx = 0;
- gbc.gridy = gridy++;
- gbc.fill = GridBagConstraints.HORIZONTAL;
- gbc.anchor = GridBagConstraints.WEST;
- gbc.insets = new Insets(0, 40, 10, 10);
- mainPanel.add(httpSecurityAuthNLabel, gbc);
-
- // Set username and password button;
- setHttpUsernamePasswordButton = new JButton("Set username and password");
- gbc.gridx = 0;
- gbc.gridy = gridy++;
- gbc.fill = GridBagConstraints.NONE;
- gbc.anchor = GridBagConstraints.EAST;
- gbc.insets = new Insets(0, 40, 10, 10);
- gbc.weightx = 1.0;
- gbc.weighty = 1.0; // add any vertical space to this component
- mainPanel.add(setHttpUsernamePasswordButton, gbc);
- setHttpUsernamePasswordButton.addActionListener(usernamePasswordListener);
-
- gbc.gridx = 0;
- gbc.gridy = gridy++;
- gbc.fill = GridBagConstraints.NONE;
- gbc.anchor = GridBagConstraints.WEST;
- gbc.insets = new Insets(5, 10, 0, 0);
- mainPanel.add(wsSecurityAuthNRadioButton, gbc);
-
- wsSecurityAuthNLabel = new JLabel(
- "Service requires WS-Security username and password in order to authenticate the user");
- wsSecurityAuthNLabel.setFont(wsSecurityAuthNLabel.getFont().deriveFont(11f));
- gbc.gridx = 0;
- gbc.gridy = gridy++;
- gbc.fill = GridBagConstraints.HORIZONTAL;
- gbc.anchor = GridBagConstraints.WEST;
- gbc.insets = new Insets(0, 40, 0, 0);
- mainPanel.add(wsSecurityAuthNLabel, gbc);
-
- // Password type list
- passwordTypeComboBox = new JComboBox<>(passwordTypes);
- passwordTypeComboBox.setRenderer(new ComboBoxTooltipRenderer());
- gbc.gridx = 0;
- gbc.gridy = gridy++;
- gbc.fill = GridBagConstraints.NONE;
- gbc.anchor = GridBagConstraints.WEST;
- gbc.insets = new Insets(10, 40, 0, 0);
- mainPanel.add(passwordTypeComboBox, gbc);
-
- // 'Add timestamp' checkbox
- addTimestampCheckBox = new JCheckBox("Add a timestamp to SOAP message");
- gbc.gridx = 0;
- gbc.gridy = gridy++;
- gbc.fill = GridBagConstraints.NONE;
- gbc.anchor = GridBagConstraints.WEST;
- gbc.insets = new Insets(5, 40, 10, 10);
- mainPanel.add(addTimestampCheckBox, gbc);
-
- // Set username and password button;
- setWsdlUsernamePasswordButton = new JButton("Set username and password");
- gbc.gridx = 0;
- gbc.gridy = gridy++;
- gbc.fill = GridBagConstraints.NONE;
- gbc.anchor = GridBagConstraints.EAST;
- gbc.insets = new Insets(0, 40, 10, 10);
- gbc.weightx = 1.0;
- gbc.weighty = 1.0; // add any vertical space to this component
- mainPanel.add(setWsdlUsernamePasswordButton, gbc);
- setWsdlUsernamePasswordButton.addActionListener(usernamePasswordListener);
-
- addDivider(mainPanel, SwingConstants.BOTTOM, true);
-
- // Enable/disable controls based on what is the current security profiles
- if (!getJson().has("securityProfile")) {
- noSecurityRadioButton.setSelected(true);
- } else {
- URI securityProfile = URI.create(getJson().get("securityProfile").textValue());
- if (securityProfile.equals(SecurityProfiles.WSSECURITY_USERNAMETOKEN_PLAINTEXTPASSWORD)
- || securityProfile
- .equals(SecurityProfiles.WSSECURITY_USERNAMETOKEN_DIGESTPASSWORD)
- || securityProfile
- .equals(SecurityProfiles.WSSECURITY_TIMESTAMP_USERNAMETOKEN_PLAINTEXTPASSWORD)
- || securityProfile
- .equals(SecurityProfiles.WSSECURITY_TIMESTAMP_USERNAMETOKEN_DIGESTPASSWORD)) {
- wsSecurityAuthNRadioButton.setSelected(true);
- }
- if (securityProfile.equals(SecurityProfiles.HTTP_BASIC_AUTHN)
- || securityProfile.equals(SecurityProfiles.HTTP_DIGEST_AUTHN)) {
- httpSecurityAuthNRadioButton.setSelected(true);
- }
- if (securityProfile.equals(SecurityProfiles.WSSECURITY_USERNAMETOKEN_PLAINTEXTPASSWORD)
- || securityProfile
- .equals(SecurityProfiles.WSSECURITY_TIMESTAMP_USERNAMETOKEN_PLAINTEXTPASSWORD)) {
- passwordTypeComboBox.setSelectedItem(PLAINTEXT_PASSWORD);
- } else if (securityProfile
- .equals(SecurityProfiles.WSSECURITY_USERNAMETOKEN_DIGESTPASSWORD)
- || securityProfile
- .equals(SecurityProfiles.WSSECURITY_TIMESTAMP_USERNAMETOKEN_DIGESTPASSWORD)) {
- passwordTypeComboBox.setSelectedItem(DIGEST_PASSWORD);
- }
- if (securityProfile
- .equals(SecurityProfiles.WSSECURITY_TIMESTAMP_USERNAMETOKEN_DIGESTPASSWORD)
- || securityProfile
- .equals(SecurityProfiles.WSSECURITY_TIMESTAMP_USERNAMETOKEN_PLAINTEXTPASSWORD)) {
- addTimestampCheckBox.setSelected(true);
- } else {
- addTimestampCheckBox.setSelected(false);
- }
- }
-
- // Put everything together
- JPanel layoutPanel = new JPanel(new BorderLayout());
- layoutPanel.add(titlePanel, BorderLayout.NORTH);
- layoutPanel.add(mainPanel, BorderLayout.CENTER);
- layoutPanel.setPreferredSize(new Dimension(550, 400));
-
- add(layoutPanel);
- }
-
- @Override
- public boolean checkValues() {
- return true;
- }
-
- @Override
- public void noteConfiguration() {
-
- if (noSecurityRadioButton.isSelected()) {
- getJson().remove("securityProfile"); // no security required
- } else if (httpSecurityAuthNRadioButton.isSelected()) {
- getJson().put("securityProfile", SecurityProfiles.HTTP_BASIC_AUTHN.toString());
- } else if (wsSecurityAuthNRadioButton.isSelected()) { // plaintext password
- if (passwordTypeComboBox.getSelectedItem().equals(PLAINTEXT_PASSWORD)) {
- if (addTimestampCheckBox.isSelected()) {
- getJson().put(
- "securityProfile",
- SecurityProfiles.WSSECURITY_TIMESTAMP_USERNAMETOKEN_PLAINTEXTPASSWORD
- .toString());
- } else {
- getJson().put("securityProfile",
- SecurityProfiles.WSSECURITY_USERNAMETOKEN_PLAINTEXTPASSWORD.toString());
- }
- } else { // digest password
- if (addTimestampCheckBox.isSelected()) {
- getJson().put(
- "securityProfile",
- SecurityProfiles.WSSECURITY_TIMESTAMP_USERNAMETOKEN_DIGESTPASSWORD
- .toString());
- } else {
- getJson().put("securityProfile",
- SecurityProfiles.WSSECURITY_USERNAMETOKEN_DIGESTPASSWORD.toString());
- }
- }
- }
- }
-
- /**
- * Disable/enable items on the panel based on this radio button
- * has been selected.
- */
- public void itemStateChanged(ItemEvent e) {
-
- Object source = e.getItemSelectable();
- if (source == noSecurityRadioButton) {
- httpSecurityAuthNLabel.setEnabled(false);
- wsSecurityAuthNLabel.setEnabled(false);
- passwordTypeComboBox.setEnabled(false);
- setHttpUsernamePasswordButton.setEnabled(false);
- setWsdlUsernamePasswordButton.setEnabled(false);
- addTimestampCheckBox.setEnabled(false);
-
- noSecurityLabel.setEnabled(true);
- } else if (source == httpSecurityAuthNRadioButton) {
- noSecurityLabel.setEnabled(false);
- httpSecurityAuthNLabel.setEnabled(true);
- wsSecurityAuthNLabel.setEnabled(false);
- passwordTypeComboBox.setEnabled(false);
- setHttpUsernamePasswordButton.setEnabled(true);
- setWsdlUsernamePasswordButton.setEnabled(false);
- addTimestampCheckBox.setEnabled(false);
- } else if (source == wsSecurityAuthNRadioButton) {
- noSecurityLabel.setEnabled(false);
- httpSecurityAuthNLabel.setEnabled(false);
- wsSecurityAuthNLabel.setEnabled(true);
- passwordTypeComboBox.setEnabled(true);
- setHttpUsernamePasswordButton.setEnabled(false);
- setWsdlUsernamePasswordButton.setEnabled(true);
- addTimestampCheckBox.setEnabled(true);
- }
- }
-
- /**
- * A renderer for JComboBox that will display a tooltip for
- * the selected item.
- */
- class ComboBoxTooltipRenderer extends BasicComboBoxRenderer {
- public Component getListCellRendererComponent(JList list, Object value, int index,
- boolean isSelected, boolean cellHasFocus) {
- if (isSelected) {
- setBackground(list.getSelectionBackground());
- setForeground(list.getSelectionForeground());
- if (-1 < index) {
- list.setToolTipText(tooltips[index]);
- }
- } else {
- setBackground(list.getBackground());
- setForeground(list.getForeground());
- }
- setFont(list.getFont());
- setText((value == null) ? "" : value.toString());
- return this;
- }
- }
-
- /**
- * Adds a light gray or etched border to the top or bottom of a JComponent.
- *
- * @author David Withers
- * @param component
- */
- protected void addDivider(JComponent component, final int position, final boolean etched) {
- component.setBorder(new Border() {
- private final Color borderColor = new Color(.6f, .6f, .6f);
-
- public Insets getBorderInsets(Component c) {
- if (position == SwingConstants.TOP) {
- return new Insets(5, 0, 0, 0);
- } else {
- return new Insets(0, 0, 5, 0);
- }
- }
-
- public boolean isBorderOpaque() {
- return false;
- }
-
- public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) {
- if (position == SwingConstants.TOP) {
- if (etched) {
- g.setColor(borderColor);
- g.drawLine(x, y, x + width, y);
- g.setColor(Color.WHITE);
- g.drawLine(x, y + 1, x + width, y + 1);
- } else {
- g.setColor(Color.LIGHT_GRAY);
- g.drawLine(x, y, x + width, y);
- }
- } else {
- if (etched) {
- g.setColor(borderColor);
- g.drawLine(x, y + height - 2, x + width, y + height - 2);
- g.setColor(Color.WHITE);
- g.drawLine(x, y + height - 1, x + width, y + height - 1);
- } else {
- g.setColor(Color.LIGHT_GRAY);
- g.drawLine(x, y + height - 1, x + width, y + height - 1);
- }
- }
- }
-
- });
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/WSDLActivityContextualView.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/WSDLActivityContextualView.java b/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/WSDLActivityContextualView.java
deleted file mode 100644
index ac129ec..0000000
--- a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/WSDLActivityContextualView.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007-2008 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.activities.wsdl.views;
-
-import java.awt.BorderLayout;
-import java.awt.FlowLayout;
-import java.awt.Frame;
-
-import javax.swing.Action;
-import javax.swing.JComponent;
-import javax.swing.JPanel;
-
-import net.sf.taverna.t2.activities.wsdl.actions.WSDLActivityConfigureAction;
-import net.sf.taverna.t2.security.credentialmanager.CredentialManager;
-import net.sf.taverna.t2.servicedescriptions.ServiceDescriptionRegistry;
-import net.sf.taverna.t2.workbench.activityicons.ActivityIconManager;
-import net.sf.taverna.t2.workbench.configuration.colour.ColourManager;
-import net.sf.taverna.t2.workbench.edits.EditManager;
-import net.sf.taverna.t2.workbench.file.FileManager;
-import net.sf.taverna.t2.workbench.selection.SelectionManager;
-import net.sf.taverna.t2.workbench.ui.actions.activity.HTMLBasedActivityContextualView;
-import uk.org.taverna.scufl2.api.activity.Activity;
-
-import com.fasterxml.jackson.databind.JsonNode;
-
-@SuppressWarnings("serial")
-public class WSDLActivityContextualView extends AbstractXMLSplitterActionView {
-
- private final ActivityIconManager activityIconManager;
- private final ServiceDescriptionRegistry serviceDescriptionRegistry;
- private final CredentialManager credentialManager;
- private final FileManager fileManager;
-
- public WSDLActivityContextualView(Activity activity, EditManager editManager, FileManager fileManager,
- SelectionManager selectionManager, ActivityIconManager activityIconManager,
- ColourManager colourManager, CredentialManager credentialManager,
- ServiceDescriptionRegistry serviceDescriptionRegistry) {
- super(activity, editManager, selectionManager, colourManager);
- this.fileManager = fileManager;
- this.activityIconManager = activityIconManager;
- this.credentialManager = credentialManager;
- this.serviceDescriptionRegistry = serviceDescriptionRegistry;
- }
-
- /**
- * Gets the component from the {@link HTMLBasedActivityContextualView} and adds buttons to it
- * allowing XML splitters to be added
- */
- @Override
- public JComponent getMainFrame() {
- final JComponent mainFrame = super.getMainFrame();
- JPanel flowPanel = new JPanel(new FlowLayout());
-
- addInputSplitter(mainFrame, flowPanel);
- addOutputSplitter(mainFrame, flowPanel);
-
- mainFrame.add(flowPanel, BorderLayout.SOUTH);
- return mainFrame;
- }
-
- @Override
- public String getViewTitle() {
- return "WSDL-based service";
- }
-
- @Override
- protected String getRawTableRowsHtml() {
- JsonNode operation = getConfigBean().getJson().get("operation");
- String summary = "<tr><td>WSDL</td><td>" + operation.get("wsdl").textValue();
- summary += "</td></tr><tr><td>Operation</td><td>" + operation.get("name").textValue()
- + "</td></tr>";
- boolean securityConfigured = getConfigBean().getJson().has("securityProfile");
- summary += "<tr><td>Secure</td><td>" + securityConfigured + "</td></tr>";
- summary += "</tr>";
- summary += describePorts();
- return summary;
- }
-
- @Override
- public Action getConfigureAction(Frame owner) {
- return new WSDLActivityConfigureAction(getActivity(), owner, editManager, fileManager,
- activityIconManager, serviceDescriptionRegistry, credentialManager);
- }
-
- @Override
- public int getPreferredPosition() {
- return 100;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/WSDLActivityViewFactory.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/WSDLActivityViewFactory.java b/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/WSDLActivityViewFactory.java
deleted file mode 100644
index b3fb8ed..0000000
--- a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/WSDLActivityViewFactory.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007-2008 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.activities.wsdl.views;
-
-import java.util.Arrays;
-import java.util.List;
-
-import net.sf.taverna.t2.activities.wsdl.servicedescriptions.WSDLServiceDescription;
-import net.sf.taverna.t2.security.credentialmanager.CredentialManager;
-import net.sf.taverna.t2.servicedescriptions.ServiceDescriptionRegistry;
-import net.sf.taverna.t2.workbench.activityicons.ActivityIconManager;
-import net.sf.taverna.t2.workbench.configuration.colour.ColourManager;
-import net.sf.taverna.t2.workbench.edits.EditManager;
-import net.sf.taverna.t2.workbench.file.FileManager;
-import net.sf.taverna.t2.workbench.selection.SelectionManager;
-import net.sf.taverna.t2.workbench.ui.views.contextualviews.ContextualView;
-import net.sf.taverna.t2.workbench.ui.views.contextualviews.activity.ContextualViewFactory;
-import uk.org.taverna.scufl2.api.activity.Activity;
-
-public class WSDLActivityViewFactory implements ContextualViewFactory<Activity> {
-
- private EditManager editManager;
- private ActivityIconManager activityIconManager;
- private ColourManager colourManager;
- private SelectionManager selectionManager;
- private ServiceDescriptionRegistry serviceDescriptionRegistry;
- private CredentialManager credentialManager;
- private FileManager fileManager;
-
- public boolean canHandle(Object object) {
- return object instanceof Activity
- && ((Activity) object).getType().equals(WSDLServiceDescription.ACTIVITY_TYPE);
- }
-
- public List<ContextualView> getViews(Activity activity) {
- return Arrays
- .asList(new ContextualView[] { new WSDLActivityContextualView(activity,
- editManager, fileManager, selectionManager, activityIconManager, colourManager,
- credentialManager, serviceDescriptionRegistry) });
- }
-
- public void setEditManager(EditManager editManager) {
- this.editManager = editManager;
- }
-
- public void setFileManager(FileManager fileManager) {
- this.fileManager = fileManager;
- }
-
- public void setSelectionManager(SelectionManager selectionManager) {
- this.selectionManager = selectionManager;
- }
-
- public void setActivityIconManager(ActivityIconManager activityIconManager) {
- this.activityIconManager = activityIconManager;
- }
-
- public void setColourManager(ColourManager colourManager) {
- this.colourManager = colourManager;
- }
-
- public void setServiceDescriptionRegistry(ServiceDescriptionRegistry serviceDescriptionRegistry) {
- this.serviceDescriptionRegistry = serviceDescriptionRegistry;
- }
-
- public void setCredentialManager(CredentialManager credentialManager) {
- this.credentialManager = credentialManager;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/XMLSplitterContextualView.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/XMLSplitterContextualView.java b/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/XMLSplitterContextualView.java
deleted file mode 100644
index 228edd4..0000000
--- a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/XMLSplitterContextualView.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007-2008 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.activities.wsdl.views;
-
-import java.awt.BorderLayout;
-import java.awt.FlowLayout;
-
-import javax.swing.JComponent;
-import javax.swing.JPanel;
-
-import net.sf.taverna.t2.workbench.configuration.colour.ColourManager;
-import net.sf.taverna.t2.workbench.edits.EditManager;
-import net.sf.taverna.t2.workbench.selection.SelectionManager;
-import net.sf.taverna.t2.workbench.ui.actions.activity.HTMLBasedActivityContextualView;
-
-import org.apache.log4j.Logger;
-
-import uk.org.taverna.scufl2.api.activity.Activity;
-
-@SuppressWarnings("serial")
-public class XMLSplitterContextualView extends AbstractXMLSplitterActionView {
-
- public XMLSplitterContextualView(Activity activity,
- EditManager editManager, SelectionManager selectionManager, ColourManager colourManager) {
- super(activity, editManager, selectionManager, colourManager);
- }
-
- static Logger logger = Logger.getLogger(XMLSplitterContextualView.class);
-
- /**
- * Gets the component from the {@link HTMLBasedActivityContextualView} and adds buttons to it
- * allowing XML splitters to be added
- */
- @Override
- public JComponent getMainFrame() {
- final JComponent mainFrame = super.getMainFrame();
- JPanel flowPanel = new JPanel(new FlowLayout());
-
- addInputSplitter(mainFrame, flowPanel);
- addOutputSplitter(mainFrame, flowPanel);
- mainFrame.add(flowPanel, BorderLayout.SOUTH);
- return mainFrame;
- }
-
- @Override
- public String getViewTitle() {
- return "XML splitter";
- }
-
- @Override
- protected String getRawTableRowsHtml() {
- return describePorts();
- }
-
- @Override
- public int getPreferredPosition() {
- return 100;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/XMLSplitterViewFactory.java
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/XMLSplitterViewFactory.java b/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/XMLSplitterViewFactory.java
deleted file mode 100644
index d0d5f8f..0000000
--- a/taverna-wsdl-activity-ui/src/main/java/net/sf/taverna/t2/activities/wsdl/views/XMLSplitterViewFactory.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007-2008 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.activities.wsdl.views;
-
-import java.util.Arrays;
-import java.util.List;
-
-import net.sf.taverna.t2.activities.wsdl.servicedescriptions.WSDLServiceDescription;
-import net.sf.taverna.t2.activities.wsdl.xmlsplitter.XMLInputSplitterActivity;
-import net.sf.taverna.t2.activities.wsdl.xmlsplitter.XMLOutputSplitterActivity;
-import net.sf.taverna.t2.workbench.configuration.colour.ColourManager;
-import net.sf.taverna.t2.workbench.edits.EditManager;
-import net.sf.taverna.t2.workbench.selection.SelectionManager;
-import net.sf.taverna.t2.workbench.ui.views.contextualviews.ContextualView;
-import net.sf.taverna.t2.workbench.ui.views.contextualviews.activity.ContextualViewFactory;
-import uk.org.taverna.scufl2.api.activity.Activity;
-
-public class XMLSplitterViewFactory implements ContextualViewFactory<Activity> {
-
- private EditManager editManager;
- private SelectionManager selectionManager;
- private ColourManager colourManager;
-
- public boolean canHandle(Object object) {
-
- return object instanceof Activity
- && (((Activity) object).getType().equals(WSDLServiceDescription.INPUT_SPLITTER_TYPE)
- || ((Activity) object).getType().equals(WSDLServiceDescription.OUTPUT_SPLITTER_TYPE));
- }
-
- public List<ContextualView> getViews(Activity activity) {
- return Arrays.asList(new ContextualView[] { new XMLSplitterContextualView(activity,
- editManager, selectionManager, colourManager) });
- }
-
- public void setEditManager(EditManager editManager) {
- this.editManager = editManager;
- }
-
- public void setSelectionManager(SelectionManager selectionManager) {
- this.selectionManager = selectionManager;
- }
-
- public void setColourManager(ColourManager colourManager) {
- this.colourManager = colourManager;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/resources/META-INF/services/net.sf.taverna.t2.servicedescriptions.ServiceDescriptionProvider
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/resources/META-INF/services/net.sf.taverna.t2.servicedescriptions.ServiceDescriptionProvider b/taverna-wsdl-activity-ui/src/main/resources/META-INF/services/net.sf.taverna.t2.servicedescriptions.ServiceDescriptionProvider
deleted file mode 100644
index 3bf8341..0000000
--- a/taverna-wsdl-activity-ui/src/main/resources/META-INF/services/net.sf.taverna.t2.servicedescriptions.ServiceDescriptionProvider
+++ /dev/null
@@ -1 +0,0 @@
-net.sf.taverna.t2.activities.wsdl.servicedescriptions.WSDLServiceProvider
http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-wsdl-activity-ui/src/main/resources/META-INF/services/net.sf.taverna.t2.ui.menu.MenuComponent
----------------------------------------------------------------------
diff --git a/taverna-wsdl-activity-ui/src/main/resources/META-INF/services/net.sf.taverna.t2.ui.menu.MenuComponent b/taverna-wsdl-activity-ui/src/main/resources/META-INF/services/net.sf.taverna.t2.ui.menu.MenuComponent
deleted file mode 100644
index 7b0e040..0000000
--- a/taverna-wsdl-activity-ui/src/main/resources/META-INF/services/net.sf.taverna.t2.ui.menu.MenuComponent
+++ /dev/null
@@ -1,5 +0,0 @@
-net.sf.taverna.t2.activities.wsdl.menu.AddXMLInputSplitterForWSDLActivityMenuAction
-net.sf.taverna.t2.activities.wsdl.menu.AddXMLInputSplitterForXMLInputSplitterMenuAction
-net.sf.taverna.t2.activities.wsdl.menu.AddXMLOutputSplitterForWSDLActivityMenuAction
-net.sf.taverna.t2.activities.wsdl.menu.AddXMLOutputSplitterForXMLOutputSplitterMenuAction
-net.sf.taverna.t2.activities.wsdl.menu.ConfigureWSDLMenuAction