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:42 UTC

[15/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-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/configuration/ToolInvocationConfiguration.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/configuration/ToolInvocationConfiguration.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/configuration/ToolInvocationConfiguration.java
deleted file mode 100644
index 0877045..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/configuration/ToolInvocationConfiguration.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- *
- */
-package net.sf.taverna.t2.activities.externaltool.configuration;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import uk.org.taverna.configuration.AbstractConfigurable;
-
-
-/**
- * @author alanrw
- *
- */
-public class ToolInvocationConfiguration extends AbstractConfigurable {
-
-	private static ToolInvocationConfiguration instance;
-
-	private Map<String, String> defaultPropertyMap;
-
-	public static ToolInvocationConfiguration getInstance() {
-		if (instance == null) {
-			instance = new ToolInvocationConfiguration();
-		}
-		return instance;
-	}
-
-	@Override
-	public String getCategory() {
-		return "general";
-	}
-
-	@Override
-	public Map<String, String> getDefaultPropertyMap() {
-		if (defaultPropertyMap == null) {
-			defaultPropertyMap = new HashMap<String, String>();
-		}
-		return defaultPropertyMap;
-	}
-
-	@Override
-	public String getDisplayName() {
-		return "Tool invocation";
-	}
-
-	@Override
-	public String getFilePrefix() {
-		return "ToolInvocation";
-	}
-
-	@Override
-	public String getUUID() {
-		return "B611F5C2-EB49-479E-B01A-7F3F56E6918A";
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/GroupPanel.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/GroupPanel.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/GroupPanel.java
deleted file mode 100644
index 8f62787..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/GroupPanel.java
+++ /dev/null
@@ -1,113 +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.externaltool.manager;
-
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.awt.Insets;
-
-import javax.swing.JComboBox;
-import javax.swing.JLabel;
-import javax.swing.JPanel;
-import javax.swing.JTextField;
-import javax.swing.border.EmptyBorder;
-
-import net.sf.taverna.t2.activities.externaltool.manager.impl.InvocationGroupManagerImpl;
-
-/**
- * UI for creating/editing dataflow input ports.
- *
- * @author David Withers
- */
-public class GroupPanel extends JPanel {
-
-	private static final long serialVersionUID = 1L;
-
-	private JTextField groupNameField;
-
-	private JComboBox mechanismComboBox;
-
-	private static InvocationGroupManager manager = InvocationGroupManagerImpl.getInstance();
-
-	public GroupPanel(Object[] mechanisms) {
-		super(new GridBagLayout());
-
-		groupNameField = new JTextField();
-
-
-		setBorder(new EmptyBorder(10, 10, 10, 10));
-
-		GridBagConstraints constraints = new GridBagConstraints();
-
-		constraints.anchor = GridBagConstraints.WEST;
-		constraints.gridx = 0;
-		constraints.gridy = 0;
-		constraints.ipadx = 10;
-		add(new JLabel("Name:"), constraints);
-
-		constraints.gridx = 1;
-		constraints.gridwidth = 2;
-		constraints.ipadx = 0;
-		constraints.weightx = 1d;
-		constraints.fill = GridBagConstraints.HORIZONTAL;
-		add(groupNameField, constraints);
-
-		constraints.gridx = 0;
-		constraints.gridy = 1;
-		constraints.gridwidth = 1;
-		constraints.weightx = 0d;
-		constraints.fill = GridBagConstraints.NONE;
-		constraints.ipadx = 10;
-		constraints.insets = new Insets(10, 0, 0, 0);
-		add(new JLabel("Explicit location:"), constraints);
-
-		mechanismComboBox = new JComboBox(mechanisms);
-		mechanismComboBox.setSelectedItem(manager.getDefaultMechanism());
-
-		constraints.gridx = 1;
-		constraints.gridwidth = 2;
-		constraints.ipadx = 0;
-		add(mechanismComboBox, constraints);
-	}
-
-	/**
-	 * Returns the portNameField.
-	 *
-	 * @return the portNameField
-	 */
-	public JTextField getGroupNameField() {
-		return groupNameField;
-	}
-
-	/**
-	 * Returns the group name.
-	 *
-	 * @return the group name
-	 */
-	public String getGroupName() {
-		return groupNameField.getText();
-	}
-
-	public InvocationMechanism getSelectedMechanism() {
-		return (InvocationMechanism) mechanismComboBox.getSelectedItem();
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/InvocationGroupManagerShutdownHook.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/InvocationGroupManagerShutdownHook.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/InvocationGroupManagerShutdownHook.java
deleted file mode 100644
index 3d54b26..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/InvocationGroupManagerShutdownHook.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/**
- * 
- */
-package net.sf.taverna.t2.activities.externaltool.manager;
-
-import net.sf.taverna.t2.activities.externaltool.manager.impl.InvocationGroupManagerImpl;
-import net.sf.taverna.t2.workbench.ShutdownSPI;
-
-/**
- * @author alanrw
- *
- */
-public class InvocationGroupManagerShutdownHook implements ShutdownSPI {
-
-	/* (non-Javadoc)
-	 * @see net.sf.taverna.t2.workbench.ShutdownSPI#positionHint()
-	 */
-	@Override
-	public int positionHint() {
-		return 710;
-	}
-
-	/* (non-Javadoc)
-	 * @see net.sf.taverna.t2.workbench.ShutdownSPI#shutdown()
-	 */
-	@Override
-	public boolean shutdown() {
-		InvocationGroupManager manager = InvocationGroupManagerImpl.getInstance();
-		manager.saveConfiguration();
-		manager.persistInvocations();
-		return true;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/InvocationGroupManagerStartupHook.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/InvocationGroupManagerStartupHook.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/InvocationGroupManagerStartupHook.java
deleted file mode 100644
index 43cf4df..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/InvocationGroupManagerStartupHook.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 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.activities.externaltool.manager;
-
-import net.sf.taverna.t2.activities.externaltool.manager.impl.InvocationGroupManagerImpl;
-import net.sf.taverna.t2.workbench.StartupSPI;
-
-/**
- * Load previously saved workflow ids that were scheduled to be deleted before
- * previous Taverna shutdown, and initiate deletion of them now.
- * 
- * @see StoreRunIdsToDeleteLaterShutdownHook
- * @see DatabaseCleanup
- * 
- * @author Stian Soiland-Reyes
- * 
- */
-public class InvocationGroupManagerStartupHook implements StartupSPI {
-
-	public int positionHint() {
-		return 900;
-	}
-
-	public boolean startup() {
-		InvocationGroupManagerImpl.getInstance().loadInvocations();
-		return true;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/InvocationMechanismEditor.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/InvocationMechanismEditor.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/InvocationMechanismEditor.java
deleted file mode 100644
index 495d22b..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/InvocationMechanismEditor.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/**
- *
- */
-package net.sf.taverna.t2.activities.externaltool.manager;
-
-import javax.swing.JPanel;
-
-/**
- * @author alanrw
- *
- */
-public abstract class InvocationMechanismEditor<T extends InvocationMechanism> extends JPanel {
-
-	public abstract String getName();
-
-	public abstract boolean canShow(Class<?> c);
-
-	public abstract void show(T invocationMechanism);
-
-	public abstract T updateInvocationMechanism();
-
-	public abstract InvocationMechanism createMechanism(String mechanismName);
-
-	public boolean isSingleton() {
-		return false;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/MechanismPanel.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/MechanismPanel.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/MechanismPanel.java
deleted file mode 100644
index c068d56..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/MechanismPanel.java
+++ /dev/null
@@ -1,121 +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.externaltool.manager;
-
-import java.awt.Component;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.awt.Insets;
-import java.util.List;
-
-import javax.swing.JComboBox;
-import javax.swing.JLabel;
-import javax.swing.JPanel;
-import javax.swing.JTextField;
-import javax.swing.border.EmptyBorder;
-
-/**
- * UI for creating/editing dataflow input ports.
- *
- * @author David Withers
- */
-public class MechanismPanel extends JPanel {
-
-	private static final long serialVersionUID = 1L;
-
-	private JTextField mechanismNameField;
-
-	private JComboBox mechanismTypeSelector;
-
-	public MechanismPanel(List<InvocationMechanismEditor<?>> invocationMechanismEditors) {
-		super(new GridBagLayout());
-
-		mechanismNameField = new JTextField();
-
-
-		setBorder(new EmptyBorder(10, 10, 10, 10));
-
-		GridBagConstraints constraints = new GridBagConstraints();
-
-		constraints.anchor = GridBagConstraints.WEST;
-		constraints.gridx = 0;
-		constraints.gridy = 0;
-		constraints.ipadx = 10;
-		add(new JLabel("Name:"), constraints);
-
-		constraints.gridx = 1;
-		constraints.gridwidth = 2;
-		constraints.ipadx = 0;
-		constraints.weightx = 1d;
-		constraints.fill = GridBagConstraints.HORIZONTAL;
-		add(mechanismNameField, constraints);
-
-		constraints.gridx = 0;
-		constraints.gridy = 1;
-		constraints.gridwidth = 1;
-		constraints.weightx = 0d;
-		constraints.fill = GridBagConstraints.NONE;
-		constraints.ipadx = 10;
-		constraints.insets = new Insets(10, 0, 0, 0);
-		add(new JLabel("Type:"), constraints);
-
-		mechanismTypeSelector = new JComboBox();
-		for (InvocationMechanismEditor<?> ime : invocationMechanismEditors) {
-			if (!ime.isSingleton()) {
-				mechanismTypeSelector.addItem(ime.getName());
-			}
-		}
-		constraints.gridx = 1;
-		constraints.gridwidth = 2;
-		constraints.ipadx = 0;
-		add(mechanismTypeSelector, constraints);
-
-
-	}
-
-	/**
-	 * Returns the portNameField.
-	 *
-	 * @return the portNameField
-	 */
-	public JTextField getMechanismNameField() {
-		return mechanismNameField;
-	}
-
-	/**
-	 * Returns the port name.
-	 *
-	 * @return the port name
-	 */
-	public String getMechanismName() {
-		return mechanismNameField.getText();
-	}
-
-	public String getMechanismTypeName() {
-		return (String) mechanismTypeSelector.getSelectedItem();
-	}
-
-	public Component getMechanismTypeSelector() {
-		return mechanismTypeSelector;
-	}
-
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ToolInvocationConfigurationPanel.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ToolInvocationConfigurationPanel.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ToolInvocationConfigurationPanel.java
deleted file mode 100644
index 22500cd..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ToolInvocationConfigurationPanel.java
+++ /dev/null
@@ -1,379 +0,0 @@
-/**
- *
- */
-package net.sf.taverna.t2.activities.externaltool.manager;
-
-import java.awt.BorderLayout;
-import java.awt.Component;
-import java.awt.Dimension;
-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.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import javax.swing.AbstractAction;
-import javax.swing.DefaultListCellRenderer;
-import javax.swing.DefaultListModel;
-import javax.swing.JButton;
-import javax.swing.JComboBox;
-import javax.swing.JLabel;
-import javax.swing.JList;
-import javax.swing.JOptionPane;
-import javax.swing.JPanel;
-import javax.swing.JScrollPane;
-import javax.swing.JTextArea;
-import javax.swing.ListSelectionModel;
-import javax.swing.SwingUtilities;
-import javax.swing.border.EmptyBorder;
-
-import net.sf.taverna.t2.activities.externaltool.manager.impl.InvocationGroupManagerImpl;
-import net.sf.taverna.t2.lang.observer.Observable;
-import net.sf.taverna.t2.lang.observer.Observer;
-import net.sf.taverna.t2.lang.ui.DeselectingButton;
-import net.sf.taverna.t2.lang.ui.ValidatingUserInputDialog;
-import net.sf.taverna.t2.workbench.helper.Helper;
-
-/**
- * @author alanrw
- *
- */
-public class ToolInvocationConfigurationPanel extends JPanel implements
-		Observer<InvocationManagerEvent> {
-
-	public static final String HEADER_TEXT = "A tool can be set to run at an explicit location (e.g. on a specificic machine or one of a set of machines). Alternatively, it can be set to run at a symbolic location, which means the tool will then be run at the explicit location pointed to by the symbolic location.";
-
-	private static InvocationGroupManagerImpl manager = InvocationGroupManagerImpl.getInstance();
-
-	private final List<InvocationMechanismEditor<?>> invocationMechanismEditors;
-
-	private JTextArea headerText;
-
-	private static String EXPLICIT_LOCATIONS = "explicit locations";
-	private static String SYMBOLIC_LOCATIONS = "symbolic locations";
-
-	private List<MechanismCreator> mechanismCreators;
-
-	JList locationList = new JList();
-
-	DefaultListModel groupListModel = new DefaultListModel();
-	DefaultListModel mechanismListModel = new DefaultListModel();
-	JComboBox locationTypeCombo = new JComboBox(new String[] { EXPLICIT_LOCATIONS,
-			SYMBOLIC_LOCATIONS });
-
-	public ToolInvocationConfigurationPanel(List<MechanismCreator> mechanismCreators,
-			List<InvocationMechanismEditor<?>> invocationMechanismEditors) {
-		super();
-		this.mechanismCreators = mechanismCreators;
-		this.invocationMechanismEditors = invocationMechanismEditors;
-		manager.addObserver(this);
-
-		this.setLayout(new GridBagLayout());
-		GridBagConstraints gbc = new GridBagConstraints();
-
-		headerText = new JTextArea(HEADER_TEXT);
-		headerText.setLineWrap(true);
-		headerText.setWrapStyleWord(true);
-		headerText.setEditable(false);
-		headerText.setFocusable(false);
-		headerText.setBorder(new EmptyBorder(10, 10, 10, 10));
-
-		gbc.anchor = GridBagConstraints.WEST;
-		gbc.insets = new Insets(0, 0, 10, 0);
-		gbc.gridx = 0;
-		gbc.gridy = 0;
-		gbc.gridwidth = 1;
-		gbc.weightx = 1.0;
-		gbc.weighty = 0.0;
-		gbc.fill = GridBagConstraints.HORIZONTAL;
-		add(headerText, gbc);
-
-		JPanel locationPanel = new JPanel(new BorderLayout());
-		JPanel subPanel = new JPanel(new FlowLayout());
-		JLabel modify = new JLabel("Modify:");
-
-		locationTypeCombo.setSelectedItem(EXPLICIT_LOCATIONS);
-		locationTypeCombo.addActionListener(new ActionListener() {
-
-			@Override
-			public void actionPerformed(ActionEvent e) {
-				switchList();
-			}
-		});
-		subPanel.add(modify);
-		subPanel.add(locationTypeCombo);
-
-		populateLists();
-		switchList();
-		locationList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
-		locationList.setCellRenderer(new DefaultListCellRenderer() {
-			public Component getListCellRendererComponent(JList list, Object value, int index,
-					boolean isSelected, boolean cellHasFocus) {
-				Object toShow = value;
-				if (value instanceof InvocationGroup) {
-					InvocationGroup invocationGroup = (InvocationGroup) value;
-					toShow = invocationGroup.getName() + "  -->  "
-							+ invocationGroup.getMechanismName();
-				}
-				return super.getListCellRendererComponent(list, toShow, index, isSelected,
-						cellHasFocus);
-			}
-		});
-		locationPanel.add(new JScrollPane(locationList), BorderLayout.CENTER);
-		locationPanel.add(subPanel, BorderLayout.NORTH);
-
-		JPanel buttonPanel = new JPanel(new FlowLayout());
-		JButton helpButton = new DeselectingButton("Help", new AbstractAction() {
-
-			public void actionPerformed(ActionEvent e) {
-				Helper.showHelp(ToolInvocationConfigurationPanel.this);
-			}
-		});
-
-		buttonPanel.add(helpButton);
-
-		buttonPanel.add(addLocationButton());
-		buttonPanel.add(removeLocationButton());
-		buttonPanel.add(editLocationButton());
-		locationPanel.add(buttonPanel, BorderLayout.SOUTH);
-
-		gbc.gridy++;
-		gbc.weighty = 1;
-
-		gbc.fill = GridBagConstraints.BOTH;
-		gbc.anchor = GridBagConstraints.SOUTH;
-		gbc.insets = new Insets(10, 0, 0, 0);
-		this.add(locationPanel, gbc);
-	}
-
-	private void switchList() {
-		if (isShowingGroups()) {
-			locationList.setModel(groupListModel);
-		} else {
-			locationList.setModel(mechanismListModel);
-		}
-	}
-
-	private void populateLists() {
-		poopulateGroupList();
-		populateMechanismList();
-	}
-
-	private void populateMechanismList() {
-		Object currentSelection = locationList.getSelectedValue();
-		ArrayList<InvocationMechanism> mechanisms = new ArrayList<InvocationMechanism>();
-		mechanisms.addAll(manager.getMechanisms());
-		Collections.sort(mechanisms, new Comparator<InvocationMechanism>() {
-
-			@Override
-			public int compare(InvocationMechanism o1, InvocationMechanism o2) {
-				return o1.getName().compareTo(o2.getName());
-			}
-		});
-		mechanismListModel.clear();
-		for (InvocationMechanism m : mechanisms) {
-			mechanismListModel.addElement(m);
-		}
-		if ((currentSelection != null) && !isShowingGroups()) {
-			locationList.setSelectedValue(currentSelection, true);
-		}
-	}
-
-	private void poopulateGroupList() {
-		Object currentSelection = locationList.getSelectedValue();
-		ArrayList<InvocationGroup> groups = new ArrayList<InvocationGroup>();
-		groups.addAll(manager.getInvocationGroups());
-		Collections.sort(groups, new Comparator<InvocationGroup>() {
-
-			@Override
-			public int compare(InvocationGroup o1, InvocationGroup o2) {
-				return o1.getName().compareTo(o2.getName());
-			}
-		});
-		groupListModel.clear();
-		for (InvocationGroup g : groups) {
-			groupListModel.addElement(g);
-		}
-		if ((currentSelection != null) && isShowingGroups()) {
-			locationList.setSelectedValue(currentSelection, true);
-		}
-	}
-
-	private boolean isShowingGroups() {
-		return (locationTypeCombo.getSelectedItem().equals(SYMBOLIC_LOCATIONS));
-	}
-
-	private JButton addLocationButton() {
-		final JButton result = new DeselectingButton("Add", new AbstractAction() {
-
-			@Override
-			public void actionPerformed(ActionEvent e) {
-				if (isShowingGroups()) {
-					Set<String> usedGroupNames = new HashSet<String>();
-					for (InvocationGroup g : manager.getInvocationGroups()) {
-						usedGroupNames.add(g.getName());
-					}
-
-					GroupPanel inputPanel = new GroupPanel(mechanismListModel.toArray());
-
-					ValidatingUserInputDialog vuid = new ValidatingUserInputDialog(
-							"Add symbolic location", inputPanel);
-					vuid.addTextComponentValidation(inputPanel.getGroupNameField(),
-							"Set the symbolic location name.", usedGroupNames,
-							"Duplicate symbolic location name.", "[\\p{L}\\p{Digit}_.]+",
-							"Invalid symbolic location name.");
-					vuid.setSize(new Dimension(400, 250));
-
-					if (vuid.show(ToolInvocationConfigurationPanel.this)) {
-						String groupName = inputPanel.getGroupName();
-						InvocationGroup newGroup = new InvocationGroup(mechanismCreators);
-						newGroup.setName(groupName);
-						newGroup.setMechanism(inputPanel.getSelectedMechanism());
-						manager.addInvocationGroup(newGroup);
-						locationList.setSelectedValue(newGroup, true);
-					}
-				} else {
-					Set<String> usedNames = new HashSet<String>();
-					for (InvocationMechanism m : manager.getMechanisms()) {
-						usedNames.add(m.getName());
-					}
-
-					MechanismPanel inputPanel = new MechanismPanel(invocationMechanismEditors);
-
-					ValidatingUserInputDialog vuid = new ValidatingUserInputDialog(
-							"Add explicit location", inputPanel);
-					vuid.addTextComponentValidation(inputPanel.getMechanismNameField(),
-							"Set the explicit location name.", usedNames,
-							"Duplicate explicit location name.", "[\\p{L}\\p{Digit}_.]+",
-							"Invalid explicit location name.");
-					vuid.addMessageComponent(inputPanel.getMechanismTypeSelector(),
-							"Set the location name and type.");
-					vuid.setSize(new Dimension(400, 250));
-
-					if (vuid.show(ToolInvocationConfigurationPanel.this)) {
-						String mechanismName = inputPanel.getMechanismName();
-						String mechanismTypeName = inputPanel.getMechanismTypeName();
-						InvocationMechanismEditor ime = findEditor(mechanismTypeName);
-						InvocationMechanism newMechanism = ime.createMechanism(mechanismName);
-						manager.addMechanism(newMechanism);
-						ime.show(newMechanism);
-						ime.setPreferredSize(new Dimension(550, 500));
-						int answer = JOptionPane.showConfirmDialog(
-								ToolInvocationConfigurationPanel.this, ime,
-								"New explicit location", JOptionPane.OK_CANCEL_OPTION,
-								JOptionPane.PLAIN_MESSAGE, null);
-						if (answer == JOptionPane.OK_OPTION) {
-							ime.updateInvocationMechanism();
-							InvocationGroupManagerImpl.getInstance().mechanismChanged(newMechanism);
-						}
-						locationList.setSelectedValue(newMechanism, true);
-					}
-				}
-			}
-		});
-		return result;
-	}
-
-	private JButton removeLocationButton() {
-		JButton result = new DeselectingButton("Remove", new AbstractAction() {
-
-			@Override
-			public void actionPerformed(ActionEvent e) {
-				if (isShowingGroups()) {
-					InvocationGroup toRemove = (InvocationGroup) locationList.getSelectedValue();
-					if ((toRemove != null) && !toRemove.equals(manager.getDefaultGroup())) {
-						manager.removeInvocationGroup(toRemove);
-					}
-					locationList.setSelectedValue(manager.getDefaultGroup(), true);
-				} else {
-					InvocationMechanism toRemove = (InvocationMechanism) locationList
-							.getSelectedValue();
-					if ((toRemove != null) && !toRemove.equals(manager.getDefaultMechanism())) {
-						manager.removeMechanism(toRemove);
-						locationList.setSelectedValue(manager.getDefaultMechanism(), true);
-					}
-				}
-			}
-		});
-		return result;
-	}
-
-	private JButton editLocationButton() {
-		final JButton result = new DeselectingButton("Edit", new AbstractAction() {
-
-			@Override
-			public void actionPerformed(ActionEvent e) {
-				if (isShowingGroups()) {
-					InvocationGroup toEdit = (InvocationGroup) locationList.getSelectedValue();
-					if (toEdit != null) {
-						InvocationMechanism chosenMechanism = (InvocationMechanism) JOptionPane
-								.showInputDialog(ToolInvocationConfigurationPanel.this,
-										"Select an explicit location", "Edit symbolic location",
-										JOptionPane.PLAIN_MESSAGE, null,
-										mechanismListModel.toArray(), toEdit.getMechanism());
-						if (chosenMechanism != null) {
-							toEdit.setMechanism(chosenMechanism);
-							manager.groupChanged(toEdit);
-						}
-					}
-				} else {
-					InvocationMechanism toEdit = (InvocationMechanism) locationList
-							.getSelectedValue();
-					if (toEdit != null) {
-						InvocationMechanismEditor ime = findEditor(toEdit.getClass());
-						ime.show(toEdit);
-						ime.setPreferredSize(new Dimension(550, 500));
-						int answer = JOptionPane.showConfirmDialog(
-								ToolInvocationConfigurationPanel.this, ime,
-								"Edit explicit location", JOptionPane.OK_CANCEL_OPTION,
-								JOptionPane.PLAIN_MESSAGE, null);
-						if (answer == JOptionPane.OK_OPTION) {
-							ime.updateInvocationMechanism();
-							InvocationGroupManagerImpl.getInstance().mechanismChanged(toEdit);
-						}
-					}
-				}
-			}
-		});
-		return result;
-	}
-
-	protected InvocationMechanismEditor findEditor(String name) {
-		for (InvocationMechanismEditor ime : invocationMechanismEditors) {
-			if (ime.getName().equalsIgnoreCase(name)) {
-				return ime;
-			}
-		}
-		return null;
-	}
-
-	protected InvocationMechanismEditor findEditor(Class c) {
-		for (InvocationMechanismEditor ime : invocationMechanismEditors) {
-			if (ime.canShow(c)) {
-				return ime;
-			}
-		}
-		return null;
-	}
-
-	@Override
-	public void notify(Observable<InvocationManagerEvent> arg0, InvocationManagerEvent arg1)
-			throws Exception {
-		if (SwingUtilities.isEventDispatchThread()) {
-			populateLists();
-		} else {
-			SwingUtilities.invokeLater(new Runnable() {
-				public void run() {
-					populateLists();
-				}
-			});
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ToolInvocationConfigurationUIFactory.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ToolInvocationConfigurationUIFactory.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ToolInvocationConfigurationUIFactory.java
deleted file mode 100644
index 82dd443..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ToolInvocationConfigurationUIFactory.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- *
- */
-package net.sf.taverna.t2.activities.externaltool.manager;
-
-import java.util.List;
-
-import javax.swing.JPanel;
-
-import uk.org.taverna.configuration.Configurable;
-import uk.org.taverna.configuration.ConfigurationUIFactory;
-
-import net.sf.taverna.t2.activities.externaltool.configuration.ToolInvocationConfiguration;
-
-/**
- * @author alanrw
- *
- */
-public class ToolInvocationConfigurationUIFactory implements ConfigurationUIFactory {
-
-	private List<MechanismCreator> mechanismCreators;
-	private List<InvocationMechanismEditor<?>> invocationMechanismEditors;
-
-	private ToolInvocationConfigurationPanel configPanel;
-
-	@Override
-	public boolean canHandle(String uuid) {
-		return uuid.equals(getConfigurable().getUUID());
-	}
-
-	@Override
-	public Configurable getConfigurable() {
-		return ToolInvocationConfiguration.getInstance();
-	}
-
-	@Override
-	public JPanel getConfigurationPanel() {
-		if (configPanel == null) {
-			configPanel = new ToolInvocationConfigurationPanel(mechanismCreators,
-					invocationMechanismEditors);
-		}
-		return configPanel;
-	}
-
-	public void setMechanismCreators(List<MechanismCreator> mechanismCreators) {
-		this.mechanismCreators = mechanismCreators;
-	}
-
-	public void setInvocationMechanismEditors(
-			List<InvocationMechanismEditor<?>> invocationMechanismEditors) {
-		this.invocationMechanismEditors = invocationMechanismEditors;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/local/LocalInvocationMechanismEditor.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/local/LocalInvocationMechanismEditor.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/local/LocalInvocationMechanismEditor.java
deleted file mode 100644
index 64fcc36..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/local/LocalInvocationMechanismEditor.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/**
- * 
- */
-package net.sf.taverna.t2.activities.externaltool.manager.local;
-
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-
-import javax.swing.JCheckBox;
-import javax.swing.JLabel;
-import javax.swing.JPanel;
-import javax.swing.JTextField;
-
-import net.sf.taverna.t2.activities.externaltool.local.ExternalToolLocalInvocationMechanism;
-import net.sf.taverna.t2.activities.externaltool.manager.InvocationMechanism;
-import net.sf.taverna.t2.activities.externaltool.manager.InvocationMechanismEditor;
-
-/**
- * @author alanrw
- *
- */
-public final class LocalInvocationMechanismEditor extends
-		InvocationMechanismEditor<ExternalToolLocalInvocationMechanism> {
-
-	private ExternalToolLocalInvocationMechanism invocationMechanism;
-	
-	private JTextField directoryField = new JTextField(30);
-	
-	private JTextField shellPrefixField = new JTextField(30);
-	
-	private JTextField linkCommandField = new JTextField(30);
-	
-	private JCheckBox retrieveDataField = new JCheckBox();
-	
-
-	@Override
-	public boolean canShow(Class<?> c) {
-		return ExternalToolLocalInvocationMechanism.class.isAssignableFrom(c);
-	}
-
-	@Override
-	public String getName() {
-		return ("Local");
-	}
-
-	@Override
-	public void show(ExternalToolLocalInvocationMechanism invocationMechanism) {
-		this.invocationMechanism = invocationMechanism;
-		this.removeAll();
-		final JPanel innerPanel = new JPanel(new GridBagLayout());
-		final GridBagConstraints inputConstraint = new GridBagConstraints();
-//		inputConstraint.insets = new Insets(5,5,5,5);
-		inputConstraint.anchor = GridBagConstraints.FIRST_LINE_START;
-		inputConstraint.gridx = 0;
-		inputConstraint.gridy = 0;
-		inputConstraint.weightx = 0.1;
-		inputConstraint.fill = GridBagConstraints.BOTH;
-		innerPanel.add(new JLabel("Working directory: "), inputConstraint);
-		inputConstraint.gridx++;
-		directoryField.setText(invocationMechanism.getDirectory());
-		innerPanel.add(directoryField, inputConstraint);
-		inputConstraint.gridx = 0;
-		inputConstraint.gridy++;
-		innerPanel.add(new JLabel("Shell: "), inputConstraint);
-		inputConstraint.gridx++;
-		shellPrefixField.setText(invocationMechanism.getShellPrefix());
-		innerPanel.add(shellPrefixField, inputConstraint);
-		
-		inputConstraint.gridx = 0;
-		inputConstraint.gridy++;
-		innerPanel.add(new JLabel("Link command: "), inputConstraint);
-		inputConstraint.gridx++;
-		linkCommandField.setText(invocationMechanism.getLinkCommand());
-		innerPanel.add(linkCommandField, inputConstraint);
-		
-		inputConstraint.gridx = 0;
-		inputConstraint.gridy++;
-		innerPanel.add(new JLabel("Fetch data: "), inputConstraint);
-		inputConstraint.gridx++;
-		retrieveDataField.setSelected(invocationMechanism.isRetrieveData());
-		innerPanel.add(retrieveDataField, inputConstraint);
-		
-		this.add(innerPanel);
-	}
-
-	@Override
-	public ExternalToolLocalInvocationMechanism updateInvocationMechanism() {
-		if ((directoryField.getText() == null) || (directoryField.getText().length() == 0)) {
-			invocationMechanism.setDirectory(null);
-		} else {
-			invocationMechanism.setDirectory(directoryField.getText());
-		}
-		if ((shellPrefixField.getText() == null) || (shellPrefixField.getText().length() == 0)) {
-			invocationMechanism.setShellPrefix(null);
-		} else {
-			invocationMechanism.setShellPrefix(shellPrefixField.getText());
-		}
-		if ((shellPrefixField.getText() == null) || (shellPrefixField.getText().length() == 0)) {
-			invocationMechanism.setShellPrefix(null);
-		} else {
-			invocationMechanism.setShellPrefix(shellPrefixField.getText());
-		}
-		if ((linkCommandField.getText() == null) || (linkCommandField.getText().length() == 0)) {
-			invocationMechanism.setLinkCommand(null);
-		} else {
-			invocationMechanism.setLinkCommand(linkCommandField.getText());
-		}
-		invocationMechanism.setRetrieveData(retrieveDataField.isSelected());
-		return invocationMechanism;
-	}
-
-	@Override
-	public InvocationMechanism createMechanism(String mechanismName) {
-		ExternalToolLocalInvocationMechanism result = new ExternalToolLocalInvocationMechanism();
-		result.setName(mechanismName);
-		return(result);
-	}
-
-	public boolean isSingleton() {
-		return true;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ssh/ExternalToolSshNodeViewer.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ssh/ExternalToolSshNodeViewer.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ssh/ExternalToolSshNodeViewer.java
deleted file mode 100644
index fb837c5..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ssh/ExternalToolSshNodeViewer.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/**
- * 
- */
-package net.sf.taverna.t2.activities.externaltool.manager.ssh;
-
-import javax.swing.JCheckBox;
-import javax.swing.JTextField;
-
-import net.sf.taverna.t2.activities.externaltool.manager.InvocationMechanism;
-
-import de.uni_luebeck.inb.knowarc.usecases.invocation.ssh.SshNode;
-
-
-
-/**
- * @author alanrw
- *
- */
-public class ExternalToolSshNodeViewer {
-	
-	private JTextField hostnameField;
-	private JTextField portField;
-	private JTextField directoryField;
-	private JTextField linkCommandField;
-	private JTextField copyCommandField;
-	private JCheckBox retrieveDataField;
-
-	public ExternalToolSshNodeViewer(SshNode node) {
-		this();
-		hostnameField.setText(node.getHost());
-		portField.setText(Integer.toString(node.getPort()));
-		if (node.getDirectory() != null) {
-			directoryField.setText(node.getDirectory());
-		} else {
-			directoryField.setText("");
-		}
-		if (node.getLinkCommand() != null) {
-			linkCommandField.setText(node.getLinkCommand());
-		} else {
-			linkCommandField.setText("");
-		}
-		if (node.getCopyCommand() != null) {
-			copyCommandField.setText(node.getCopyCommand());
-		} else {
-			copyCommandField.setText("");
-		}
-		retrieveDataField.setSelected(node.isRetrieveData());
-	}
-
-	public ExternalToolSshNodeViewer() {
-		hostnameField = new JTextField(30);
-		hostnameField.setText(SshNode.DEFAULT_HOST);
-		portField = new JTextField(3);
-		portField.setText("" + SshNode.DEFAULT_PORT);
-		directoryField = new JTextField(30);
-		directoryField.setText(SshNode.DEFAULT_DIRECTORY);
-		linkCommandField = new JTextField(30);
-		linkCommandField.setText(InvocationMechanism.UNIX_LINK);
-		copyCommandField = new JTextField(30);
-		copyCommandField.setText(InvocationMechanism.UNIX_COPY);
-		retrieveDataField = new JCheckBox();
-	}
-
-	public JTextField getHostnameField() {
-		return hostnameField;
-	}
-
-	public JTextField getPortField() {
-		return portField;
-	}
-	
-	public JTextField getDirectoryField() {
-		return directoryField;
-	}
-
-	public JTextField getLinkCommandField() {
-		return linkCommandField;
-	}
-
-	public JTextField getCopyCommandField() {
-		return copyCommandField;
-	}
-
-	public String getHostname() {
-		return hostnameField.getText();
-	}
-
-	public int getPort() {
-		return Integer.parseInt(portField.getText());
-	}
-	
-	public String getDirectory() {
-		return directoryField.getText();
-	}
-	
-	public String getLinkCommand() {
-		return linkCommandField.getText();
-	}
-	
-	public String getCopyCommand() {
-		return copyCommandField.getText();
-	}
-
-	/**
-	 * @return the retrieveDataField
-	 */
-	public JCheckBox getRetrieveDataField() {
-		return retrieveDataField;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ssh/SshInvocationMechanismEditor.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ssh/SshInvocationMechanismEditor.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ssh/SshInvocationMechanismEditor.java
deleted file mode 100644
index e8291ed..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/manager/ssh/SshInvocationMechanismEditor.java
+++ /dev/null
@@ -1,234 +0,0 @@
-/**
- * 
- */
-package net.sf.taverna.t2.activities.externaltool.manager.ssh;
-
-import java.awt.Color;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.awt.Insets;
-import java.awt.event.ActionEvent;
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.swing.AbstractAction;
-import javax.swing.BorderFactory;
-import javax.swing.JButton;
-import javax.swing.JCheckBox;
-import javax.swing.JLabel;
-import javax.swing.JPanel;
-import javax.swing.JScrollPane;
-import javax.swing.JTextField;
-import javax.swing.border.CompoundBorder;
-
-import net.sf.taverna.t2.activities.externaltool.manager.InvocationMechanism;
-import net.sf.taverna.t2.activities.externaltool.manager.InvocationMechanismEditor;
-import net.sf.taverna.t2.activities.externaltool.ssh.ExternalToolSshInvocationMechanism;
-import net.sf.taverna.t2.lang.ui.DeselectingButton;
-import de.uni_luebeck.inb.knowarc.usecases.invocation.ssh.SshNode;
-import de.uni_luebeck.inb.knowarc.usecases.invocation.ssh.SshNodeFactory;
-
-/**
- * @author alanrw
- *
- */
-public final class SshInvocationMechanismEditor extends
-		InvocationMechanismEditor<ExternalToolSshInvocationMechanism> {
-	
-	private ArrayList<ExternalToolSshNodeViewer> nodeViewers = new ArrayList<ExternalToolSshNodeViewer>();
-	private int inputGridy = 0;
-	
-	private ExternalToolSshInvocationMechanism mechanism = null;
-	
-	private static Insets insets = new Insets(1,5,1,5);
-	
-	private static CompoundBorder border = BorderFactory.createCompoundBorder(BorderFactory.createEmptyBorder(5,5,5,5), BorderFactory.createLineBorder(Color.BLACK, 1));
-
-	@Override
-	public boolean canShow(Class<?> c) {
-		return ExternalToolSshInvocationMechanism.class.isAssignableFrom(c);
-	}
-
-	@Override
-	public void show(ExternalToolSshInvocationMechanism invocationMechanism) {
-		mechanism = invocationMechanism;
-		this.removeAll();
-		inputGridy = 1;
-		final JPanel innerPanel = new JPanel(new GridBagLayout());
-
-		final GridBagConstraints inputConstraint = new GridBagConstraints();
-		inputConstraint.anchor = GridBagConstraints.FIRST_LINE_START;
-		inputConstraint.gridx = 0;
-		inputConstraint.gridy = 0;
-		inputConstraint.weightx = 0.1;
-		inputConstraint.fill = GridBagConstraints.BOTH;
-
-		inputConstraint.gridx = 0;
-			nodeViewers.clear();
-			for (SshNode node : invocationMechanism.getNodes()) {
-				ExternalToolSshNodeViewer nodeViewer = new ExternalToolSshNodeViewer(node);
-				addNodeViewer(this, innerPanel, nodeViewer);
-			}
-
-		this.setLayout(new GridBagLayout());
-		GridBagConstraints outerPanelConstraint = new GridBagConstraints();
-		outerPanelConstraint.gridx = 0;
-		outerPanelConstraint.gridy = 0;
-		outerPanelConstraint.weightx = 0.1;
-		outerPanelConstraint.weighty = 0.1;
-		outerPanelConstraint.fill = GridBagConstraints.BOTH;
-		this.add(new JScrollPane(innerPanel),
-				outerPanelConstraint);
-		outerPanelConstraint.weighty = 0;
-		final JButton addHostButton = new DeselectingButton("Add host",
-				new AbstractAction() {
-			public void actionPerformed(ActionEvent e) {
-
-				ExternalToolSshNodeViewer newViewer = new ExternalToolSshNodeViewer();
-
-					addNodeViewer(SshInvocationMechanismEditor.this, innerPanel, newViewer);
-					innerPanel.revalidate();
-					innerPanel.repaint();
-			}
-
-		});
-		JPanel buttonPanel = new JPanel();
-		buttonPanel.setLayout(new GridBagLayout());
-
-		JPanel filler = new JPanel();
-		outerPanelConstraint.weightx = 0.1;
-		outerPanelConstraint.weighty = 0;
-		outerPanelConstraint.gridx = 0;
-		outerPanelConstraint.gridy = 0;
-
-		buttonPanel.add(filler, outerPanelConstraint);
-
-		outerPanelConstraint.weightx = 0;
-		outerPanelConstraint.weighty = 0;
-		outerPanelConstraint.gridx = 1;
-		outerPanelConstraint.gridy = 0;
-
-		buttonPanel.add(addHostButton, outerPanelConstraint);
-
-		outerPanelConstraint.weightx = 0;
-		outerPanelConstraint.weighty = 0;
-		outerPanelConstraint.gridx = 0;
-		outerPanelConstraint.gridy = 1;
-		outerPanelConstraint.fill = GridBagConstraints.BOTH;
-		this.add(buttonPanel, outerPanelConstraint);
-	}
-
-	protected void addNodeViewer(final JPanel result, final JPanel innerPanel,
-			ExternalToolSshNodeViewer viewer) {
-		final JPanel subPanel = new JPanel();
-		subPanel.setLayout(new GridBagLayout());
-		subPanel.setBorder(border);
-		final GridBagConstraints inputConstraint = new GridBagConstraints();
-		inputConstraint.insets = insets;
-		inputConstraint.anchor = GridBagConstraints.FIRST_LINE_START;
-		inputConstraint.weightx = 0.1;
-		inputConstraint.fill = GridBagConstraints.BOTH;
-
-		inputConstraint.gridy = 0 ;
-		inputConstraint.gridx = 0;
-		
-		subPanel.add(new JLabel("Host: "), inputConstraint);
-		final JTextField hostnameField = viewer.getHostnameField();
-		inputConstraint.gridx++;
-		subPanel.add(hostnameField, inputConstraint);
-
-		inputConstraint.gridy++ ;
-		inputConstraint.gridx = 0;
-		subPanel.add(new JLabel("Port: "), inputConstraint);
-		final JTextField portField = viewer.getPortField();
-		inputConstraint.gridx++;
-		subPanel.add(portField ,inputConstraint);
-		
-		inputConstraint.gridy++ ;
-		inputConstraint.gridx = 0;
-		subPanel.add(new JLabel("Working directory: "), inputConstraint);
-		final JTextField directoryField = viewer.getDirectoryField();
-		inputConstraint.gridx++;
-		subPanel.add(directoryField ,inputConstraint);
-		
-		inputConstraint.gridy++ ;
-		inputConstraint.gridx = 0;
-		subPanel.add(new JLabel("Link command: "), inputConstraint);
-		final JTextField linkCommandField = viewer.getLinkCommandField();
-		inputConstraint.gridx++;
-		subPanel.add(linkCommandField ,inputConstraint);
-
-		inputConstraint.gridy++ ;
-		inputConstraint.gridx = 0;
-		subPanel.add(new JLabel("Copy command: "), inputConstraint);
-		final JTextField copyCommandField = viewer.getCopyCommandField();
-		inputConstraint.gridx++;
-		subPanel.add(copyCommandField ,inputConstraint);
-
-		inputConstraint.gridy++ ;
-		inputConstraint.gridx = 0;
-		subPanel.add(new JLabel("Fetch data: "), inputConstraint);
-		inputConstraint.gridx++;
-		final JCheckBox retrieveDataField = viewer.getRetrieveDataField();
-		subPanel.add(retrieveDataField ,inputConstraint);
-
-		inputConstraint.gridy++ ;
-		inputConstraint.gridx = 1;
-		inputConstraint.fill = GridBagConstraints.NONE;
-		inputConstraint.anchor = GridBagConstraints.EAST;
-		final ExternalToolSshNodeViewer v = viewer;
-		final JButton removeButton = new DeselectingButton("Remove",
-				new AbstractAction() {
-
-			public void actionPerformed(ActionEvent e) {
-				synchronized(nodeViewers) {
-					nodeViewers.remove(v);
-				}
-				innerPanel.remove(subPanel);
-				innerPanel.revalidate();
-				innerPanel.repaint();
-				result.revalidate();
-				result.repaint();
-			}
-
-		});
-		subPanel.add(removeButton, inputConstraint);
-		
-		inputConstraint.gridy = ++inputGridy;
-		innerPanel.add(subPanel, inputConstraint);
-
-		nodeViewers.add(viewer);
-		inputGridy++;		
-	}
-
-	private List<SshNode> getNodeList() {
-		List<SshNode> result = new ArrayList<SshNode>();
-		for (ExternalToolSshNodeViewer viewer : nodeViewers) {
-			SshNode node = SshNodeFactory.getInstance().getSshNode(viewer.getHostname(), viewer.getPort(), viewer.getDirectory());
-			node.setLinkCommand(viewer.getLinkCommand());
-			node.setCopyCommand(viewer.getCopyCommand());
-			node.setRetrieveData(viewer.getRetrieveDataField().isSelected());
-			result.add(node);
-		}
-		return result;
-	}
-
-	@Override
-	public ExternalToolSshInvocationMechanism updateInvocationMechanism() {
-		mechanism.setNodes(getNodeList());
-		return mechanism;
-	}
-
-	@Override
-	public InvocationMechanism createMechanism(String mechanismName) {
-		ExternalToolSshInvocationMechanism result = new ExternalToolSshInvocationMechanism();
-		result.setName(mechanismName);
-		return result;
-	}
-
-	@Override
-	public String getName() {
-		return ("SSH");
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/AddExternalToolContextualMenuAction.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/AddExternalToolContextualMenuAction.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/AddExternalToolContextualMenuAction.java
deleted file mode 100644
index 505546d..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/AddExternalToolContextualMenuAction.java
+++ /dev/null
@@ -1,111 +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.externaltool.menu;
-
-import java.awt.event.ActionEvent;
-import java.net.URI;
-
-import javax.swing.AbstractAction;
-import javax.swing.Action;
-
-import net.sf.taverna.t2.activities.externaltool.ExternalToolActivity;
-import net.sf.taverna.t2.activities.externaltool.servicedescriptions.ExternalToolTemplateServiceDescription;
-import net.sf.taverna.t2.ui.menu.AbstractContextualMenuAction;
-import net.sf.taverna.t2.ui.menu.MenuManager;
-import net.sf.taverna.t2.workbench.activityicons.ActivityIconManager;
-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.workflowview.WorkflowView;
-import net.sf.taverna.t2.workflowmodel.Dataflow;
-
-import org.apache.log4j.Logger;
-
-/**
- * An action to add an external tool + a wrapping processor to the workflow.
- *
- * @author Alex Nenadic
- * @author Alan Williamns
- *
- */
-@SuppressWarnings("serial")
-public class AddExternalToolContextualMenuAction extends AbstractContextualMenuAction {
-
-	private static final String ADD_EXTERNAL_TOOL = "Tool";
-
-	private static final URI insertSection = URI
-			.create("http://taverna.sf.net/2009/contextMenu/insert");
-
-	private static Logger logger = Logger.getLogger(AddExternalToolMenuAction.class);
-
-	private EditManager editManager;
-
-	private MenuManager menuManager;
-
-	private SelectionManager selectionManager;
-
-	private ActivityIconManager activityIconManager;
-
-	public AddExternalToolContextualMenuAction() {
-		super(insertSection, 900);
-	}
-
-	@Override
-	public boolean isEnabled() {
-		return super.isEnabled() && getContextualSelection().getSelection() instanceof Dataflow;
-	}
-
-	@Override
-	protected Action createAction() {
-
-		return new AddExternalToolAction();
-	}
-
-	protected class AddExternalToolAction extends AbstractAction {
-		AddExternalToolAction() {
-			super(ADD_EXTERNAL_TOOL, activityIconManager.iconForActivity(
-					new ExternalToolActivity()));
-		}
-
-		public void actionPerformed(ActionEvent e) {
-			WorkflowView.importServiceDescription(
-					ExternalToolTemplateServiceDescription.getServiceDescription(), false,
-					editManager, menuManager, selectionManager);
-		}
-	}
-
-	public void setEditManager(EditManager editManager) {
-		this.editManager = editManager;
-	}
-
-	public void setMenuManager(MenuManager menuManager) {
-		this.menuManager = menuManager;
-	}
-
-	public void setSelectionManager(SelectionManager selectionManager) {
-		this.selectionManager = selectionManager;
-	}
-
-	public void setActivityIconManager(ActivityIconManager activityIconManager) {
-		this.activityIconManager = activityIconManager;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/AddExternalToolMenuAction.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/AddExternalToolMenuAction.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/AddExternalToolMenuAction.java
deleted file mode 100644
index ff1f11e..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/AddExternalToolMenuAction.java
+++ /dev/null
@@ -1,111 +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.externaltool.menu;
-
-import java.awt.event.ActionEvent;
-import java.awt.event.InputEvent;
-import java.awt.event.KeyEvent;
-import java.net.URI;
-
-import javax.swing.Action;
-import javax.swing.KeyStroke;
-
-import net.sf.taverna.t2.activities.externaltool.ExternalToolActivity;
-import net.sf.taverna.t2.activities.externaltool.servicedescriptions.ExternalToolTemplateServiceDescription;
-import net.sf.taverna.t2.ui.menu.AbstractMenuAction;
-import net.sf.taverna.t2.ui.menu.DesignOnlyAction;
-import net.sf.taverna.t2.ui.menu.MenuManager;
-import net.sf.taverna.t2.workbench.activityicons.ActivityIconManager;
-import net.sf.taverna.t2.workbench.edits.EditManager;
-import net.sf.taverna.t2.workbench.selection.SelectionManager;
-import net.sf.taverna.t2.workbench.ui.workflowview.WorkflowView;
-import net.sf.taverna.t2.workbench.views.graph.menu.InsertMenu;
-
-import org.apache.log4j.Logger;
-
-/**
- * An action to add a externaltool activity + a wrapping processor to the workflow.
- *
- * @author Alex Nenadic
- * @author alanrw
- *
- */
-@SuppressWarnings("serial")
-public class AddExternalToolMenuAction extends AbstractMenuAction {
-
-	private static final String ADD_EXTERNAL_TOOL = "Tool";
-
-	private static final URI ADD_EXTERNAL_TOOL_URI = URI
-	.create("http://taverna.sf.net/2008/t2workbench/menu#graphMenuAddExternalTool");
-
-	private static Logger logger = Logger
-			.getLogger(AddExternalToolMenuAction.class);
-
-	private EditManager editManager;
-	private MenuManager menuManager;
-	private SelectionManager selectionManager;
-
-	private ActivityIconManager activityIconManager;
-
-	public AddExternalToolMenuAction() {
-		super(InsertMenu.INSERT, 900, ADD_EXTERNAL_TOOL_URI);
-	}
-
-	@Override
-	protected Action createAction() {
-
-		return new AddExternalToolAction();
-	}
-
-	protected class AddExternalToolAction extends DesignOnlyAction {
-		AddExternalToolAction () {
-			super ();
-			putValue(SMALL_ICON, activityIconManager.iconForActivity(
-					new ExternalToolActivity()));
-			putValue(NAME, ADD_EXTERNAL_TOOL);
-			putValue(SHORT_DESCRIPTION, "Tool");
-			putValue(Action.ACCELERATOR_KEY,
-					KeyStroke.getKeyStroke(KeyEvent.VK_T, InputEvent.SHIFT_DOWN_MASK | InputEvent.ALT_DOWN_MASK));
-		}
-
-		public void actionPerformed(ActionEvent e) {
-			WorkflowView.importServiceDescription(ExternalToolTemplateServiceDescription.getServiceDescription(),
-			false, editManager, menuManager, selectionManager);
-		}
-	}
-
-	public void setEditManager(EditManager editManager) {
-		this.editManager = editManager;
-	}
-
-	public void setMenuManager(MenuManager menuManager) {
-		this.menuManager = menuManager;
-	}
-
-	public void setSelectionManager(SelectionManager selectionManager) {
-		this.selectionManager = selectionManager;
-	}
-
-	public void setActivityIconManager(ActivityIconManager activityIconManager) {
-		this.activityIconManager = activityIconManager;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/ConfigureExternalToolMenuAction.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/ConfigureExternalToolMenuAction.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/ConfigureExternalToolMenuAction.java
deleted file mode 100644
index f57b25c..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/ConfigureExternalToolMenuAction.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2010 Hajo Nils Krabbenhoeft, spratpix GmbH & Co. KG
- *
- *  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.externaltool.menu;
-
-import javax.swing.Action;
-
-import net.sf.taverna.t2.activities.externaltool.ExternalToolActivity;
-import net.sf.taverna.t2.activities.externaltool.actions.ExternalToolActivityConfigureAction;
-import net.sf.taverna.t2.workbench.activityicons.ActivityIconManager;
-import net.sf.taverna.t2.workbench.activitytools.AbstractConfigureActivityMenuAction;
-import net.sf.taverna.t2.workbench.edits.EditManager;
-import net.sf.taverna.t2.workbench.file.FileManager;
-
-/**
- * This class adds the plugin configuration action to the context menu of every use case activity.
- *
- * @author Hajo Nils Krabbenhoeft
- */
-public class ConfigureExternalToolMenuAction extends
-		AbstractConfigureActivityMenuAction<ExternalToolActivity> {
-
-	private EditManager editManager;
-	private FileManager fileManager;
-	private ActivityIconManager activityIconManager;
-
-	public ConfigureExternalToolMenuAction() {
-		super(ExternalToolActivity.class);
-	}
-
-	@Override
-	protected Action createAction() {
-		ExternalToolActivityConfigureAction configAction = new ExternalToolActivityConfigureAction(
-				findActivity(), getParentFrame(), editManager, fileManager, activityIconManager);
-		addMenuDots(configAction);
-		return configAction;
-	}
-
-	public void setEditManager(EditManager editManager) {
-		this.editManager = editManager;
-	}
-
-	public void setFileManager(FileManager fileManager) {
-		this.fileManager = fileManager;
-	}
-
-	public void setActivityIconManager(ActivityIconManager activityIconManager) {
-		this.activityIconManager = activityIconManager;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/FeedbackMenuAction.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/FeedbackMenuAction.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/FeedbackMenuAction.java
deleted file mode 100644
index 8c7a284..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/menu/FeedbackMenuAction.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2010 Hajo Nils Krabbenhoeft, spratpix GmbH & Co. KG
- *
- *  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.externaltool.menu;
-
-import java.awt.Desktop;
-import java.awt.event.ActionEvent;
-import java.io.IOException;
-import java.net.URI;
-
-import javax.swing.AbstractAction;
-import javax.swing.Action;
-import javax.swing.Icon;
-import javax.swing.JOptionPane;
-
-import net.sf.taverna.t2.ui.menu.AbstractMenuAction;
-
-import org.apache.log4j.Logger;
-
-/**
- * This class adds the feedback item to the context menu of every use case
- * activity.
- *
- * @author Hajo Nils Krabbenhoeft
- */
-public class FeedbackMenuAction extends AbstractMenuAction {
-
-	private static Logger logger = Logger.getLogger(FeedbackMenuAction.class);
-
-
-	private static final URI feedbackSection = URI.create("http://taverna.sf.net/2009/contextMenu/configure");
-
-	public FeedbackMenuAction() {
-		super(feedbackSection, 51);
-	}
-
-	protected Action createAction() {
-	    // final ImageIcon icon = KnowARCConfigurationFactory.getConfiguration().getIcon();
-		return new SendFeedbackAction("Send Feedback...", null);
-	}
-
-	private final class SendFeedbackAction extends AbstractAction {
-		private static final long serialVersionUID = 1L;
-
-		private static final String errTitle = "Could not open web browser for feedback:";
-		private static final String feedbackUrl = "http://www.taverna.org.uk/about/contact-us/feedback?product=ExternalToolService";
-
-		private SendFeedbackAction(String name, Icon icon) {
-			super(name, icon);
-		}
-
-		public void actionPerformed(ActionEvent e) {
-			if (Desktop.isDesktopSupported()) {
-				try {
-					Desktop.getDesktop().browse(URI.create(feedbackUrl));
-				} catch (IOException e1) {
-					JOptionPane.showMessageDialog(null, feedbackUrl + "\n" + e1.getLocalizedMessage(), errTitle, JOptionPane.ERROR_MESSAGE);
-				}
-			} else {
-				JOptionPane.showMessageDialog(null, "Go to " + feedbackUrl, errTitle, JOptionPane.ERROR_MESSAGE);
-			}
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/AddExternalToolServiceDialog.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/AddExternalToolServiceDialog.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/AddExternalToolServiceDialog.java
deleted file mode 100644
index 86b0882..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/AddExternalToolServiceDialog.java
+++ /dev/null
@@ -1,189 +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.externaltool.servicedescriptions;
-
-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.KeyEvent;
-import java.io.IOException;
-import java.net.URL;
-import java.net.URLConnection;
-
-import javax.swing.JButton;
-import javax.swing.JDialog;
-import javax.swing.JLabel;
-import javax.swing.JOptionPane;
-import javax.swing.JPanel;
-import javax.swing.JTextField;
-import javax.swing.border.EmptyBorder;
-
-import net.sf.taverna.t2.workbench.MainWindow;
-import net.sf.taverna.t2.workbench.helper.HelpEnabledDialog;
-
-import org.apache.log4j.Logger;
-
-/**
- * Dialog that lets user specify a URL of a Tool service they want 
- * to add to the Service Panel. In the case the Tool URL is behind
- * HTTPS or service's endpoints require HTTPS it will ask user to confirm
- * if they want to trust it. 
- * 
- * @author Alex Nenadic
- *
- */
-@SuppressWarnings("serial")
-public abstract class AddExternalToolServiceDialog extends HelpEnabledDialog {
-
-	private JTextField toolLocationField;
-	private Logger logger = Logger.getLogger(AddExternalToolServiceDialog.class);
-
-	public AddExternalToolServiceDialog()  {
-		super(MainWindow.getMainWindow(), "Add tool service", true, null); // create a non-modal dialog
-		initComponents();
-		setLocationRelativeTo(getParent());
-	}
-
-	private void initComponents() {
-		JPanel mainPanel = new JPanel(new GridBagLayout());
-		mainPanel.setBorder(new EmptyBorder(10,10,10,10));
-		
-		JLabel toolLocatitionLabel = new JLabel("Tool registry location",ExternalToolActivityIcon.getExternalToolIcon(), JLabel.LEFT);		
-		GridBagConstraints gbc = new GridBagConstraints();
-		gbc.weighty = 0.0;
-		
-		gbc.weightx = 0.0;
-		gbc.gridx = 0;
-		gbc.gridy = 0;
-		gbc.fill = GridBagConstraints.NONE;
-		gbc.anchor = GridBagConstraints.WEST;
-		gbc.insets = new Insets(5, 10, 0, 0);
-		mainPanel.add(toolLocatitionLabel, gbc);
-        
-		toolLocationField = new JTextField("http://taverna.nordugrid.org/sharedRepository/xml.php");
-		gbc.weightx = 1.0;
-		gbc.gridx = 1;
-		gbc.gridy = 0;
-		gbc.fill = GridBagConstraints.HORIZONTAL;
-		gbc.anchor = GridBagConstraints.WEST;
-		gbc.insets = new Insets(5, 10, 0, 5);		
-		mainPanel.add(toolLocationField, gbc);
-		
-	    final JButton addServiceButton = new JButton("Add");
-	    addServiceButton.addActionListener(new ActionListener()
-	        {
-	            public void actionPerformed(ActionEvent evt)
-	            {
-	                addPressed();
-	            }
-	        });
-	    
-	    // When user presses "Return" key fire the action on the "Add" button
-	    addServiceButton.addKeyListener(new java.awt.event.KeyAdapter() {
-			public void keyPressed(java.awt.event.KeyEvent evt) {
-				if (evt.getKeyCode() == KeyEvent.VK_ENTER) {
-					addPressed();
-				}
-			}
-		});
-		getRootPane().setDefaultButton(addServiceButton);
-	    
-        JPanel buttonsPanel = new JPanel(new FlowLayout(FlowLayout.CENTER));
-        buttonsPanel.add(addServiceButton);
-        
-        getContentPane().setLayout(new BorderLayout());
-        getContentPane().add(mainPanel, BorderLayout.CENTER);
-        getContentPane().add(buttonsPanel, BorderLayout.SOUTH);
-        
-		setSize(getPreferredSize());
-        pack();
-	}
-	
-    /**
-     * 'Add service' button pressed or otherwise activated.
-     */
-    private void addPressed()
-    {
-		final String toolURLString = toolLocationField.getText().trim();
-		new Thread("Adding tool " + toolURLString) {
-			public void run() {
-				// Only add the service provider for this service if service URL
-				// starts with 'http'
-				// or if it starts with 'https' and user explicitly said they
-				// wanted to trust this service.
-				/*
-				 * if (shouldTrust(toolURLString)){ addRegistry(toolURLString);
-				 * }
-				 */
-				try {
-					URL url = new URL(toolURLString);
-					URLConnection connection = url.openConnection();
-					try {
-						// If the url starts with 'https' - security hook for
-						// https connection's trust manager
-						// will be engaged and user will be asked automatically
-						// if they want
-						// to trust the connection (if it is not already
-						// trusted). If the urls starts with 'http' -
-						// this will not have any effect apart from checking if
-						// we can open a connection.
-						connection.connect(); // if this does not fail - add the
-						// tool
-						// service provider for this service to
-						// the registry
-					} finally {
-						try {
-							connection.getInputStream().close();
-						} catch (IOException ex) {
-						}
-					}
-					addRegistry(toolURLString);
-				} catch (Exception ex) { // anything failed
-					JOptionPane.showMessageDialog(null,
-							"Could not read the tool descriptions from "
-									+ toolURLString + ":\n" + ex,
-							"Could not add tool service",
-							JOptionPane.ERROR_MESSAGE);
-
-					logger.error(
-							"Failed to add tool description provider for service: "
-									+ toolURLString, ex);
-
-				}
-			};
-		}.start();
-		closeDialog();
-    }
-
-	protected abstract void addRegistry(String tool);	
-	
-	/**
-	 * Closes the dialog.
-	 */
-	private void closeDialog() {
-		setVisible(false);
-		dispose();
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/ExternalToolActivityIcon.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/ExternalToolActivityIcon.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/ExternalToolActivityIcon.java
deleted file mode 100644
index f91755f..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/ExternalToolActivityIcon.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2009 Hajo Nils Krabbenhoeft, INB, University of Luebeck
- *
- *  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.externaltool.servicedescriptions;
-
-import java.awt.Color;
-
-import javax.swing.Icon;
-import javax.swing.ImageIcon;
-
-import net.sf.taverna.t2.activities.externaltool.ExternalToolActivity;
-import net.sf.taverna.t2.workbench.activityicons.ActivityIconSPI;
-import net.sf.taverna.t2.workbench.configuration.colour.ColourManager;
-import net.sf.taverna.t2.workflowmodel.processor.activity.Activity;
-
-/**
- * This class provides an icon for the use case activity.
- *
- * @author Hajo Nils Krabbenhoeft
- */
-public class ExternalToolActivityIcon implements ActivityIconSPI {
-
-	private static final String PROCESSOR_COLOUR_STRING = "#F28C55";
-
-	private static Icon icon;
-
-	public int canProvideIconScore(Activity<?> activity) {
-		if (activity.getClass().getName().equals(ExternalToolActivity.class.getName()))
-			return DEFAULT_ICON + 1;
-		else
-			return NO_ICON;
-	}
-
-	public Icon getIcon(Activity<?> activity) {
-		return getExternalToolIcon();
-	}
-
-	public static Icon getExternalToolIcon() {
-		if (icon == null) {
-			icon = new ImageIcon(ExternalToolActivityIcon.class.getResource("/externaltool.png"));
-		}
-		return icon;
-	}
-
-	public static String getColourString() {
-		return PROCESSOR_COLOUR_STRING;
-	}
-
-	public void setColourManager(ColourManager colourManager) {
-		// set colour for XPath processors in the workflow diagram
-		colourManager.setPreferredColour(ExternalToolActivity.class.getCanonicalName(),
-				Color.decode(PROCESSOR_COLOUR_STRING));
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/ExternalToolServiceDescription.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/ExternalToolServiceDescription.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/ExternalToolServiceDescription.java
deleted file mode 100644
index 02c2bf6..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/ExternalToolServiceDescription.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2009 Hajo Nils Krabbenhoeft, INB, University of Luebeck   
- * 
- *  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.externaltool.servicedescriptions;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import javax.swing.Icon;
-import javax.swing.ImageIcon;
-
-import org.apache.log4j.Logger;
-
-import net.sf.taverna.t2.activities.externaltool.ExternalToolActivity;
-import net.sf.taverna.t2.activities.externaltool.ExternalToolActivityConfigurationBean;
-import net.sf.taverna.t2.activities.externaltool.manager.InvocationGroupManager;
-import net.sf.taverna.t2.activities.externaltool.manager.impl.InvocationGroupManagerImpl;
-import net.sf.taverna.t2.activities.externaltool.views.ExternalToolConfigView;
-import net.sf.taverna.t2.servicedescriptions.ServiceDescription;
-import net.sf.taverna.t2.workflowmodel.processor.activity.Activity;
-import de.uni_luebeck.inb.knowarc.usecases.UseCaseDescription;
-
-/**
- * ExternalToolServiceDescription stores the repository URL and the use case id so
- * that it can create an ExternalToolActivityConfigurationBean
- * 
- * @author Hajo Nils Krabbenhoeft
- */
-public class ExternalToolServiceDescription extends ServiceDescription<ExternalToolActivityConfigurationBean> {
-	
-	private static Logger logger = Logger
-	.getLogger(ExternalToolServiceDescription.class);
-
-	
-	private static InvocationGroupManager manager = InvocationGroupManagerImpl.getInstance();
-
-	private String repositoryUrl;
-	private String externaltoolid;
-	private UseCaseDescription useCaseDescription;
-
-	public String getRepositoryUrl() {
-		return repositoryUrl;
-	}
-
-	public void setRepositoryUrl(String repositoryUrl) {
-		this.repositoryUrl = repositoryUrl;
-	}
-
-	public String getExternaltoolid() {
-		return externaltoolid;
-	}
-
-	public void setExternaltoolid(String externaltoolid) {
-		this.externaltoolid = externaltoolid;
-	}
-
-	public Icon getIcon() {
-		if (useCaseDescription != null) {
-			String icon_url = useCaseDescription.getIcon_url();
-			if ((icon_url != null) && !icon_url.isEmpty() && !icon_url.endsWith(".ico"))
-				try {
-					ImageIcon result = new ImageIcon(new URL(icon_url));
-					if ((result != null) && (result.getIconHeight() != 0) && (result.getIconWidth() != 0)){
-						return result;
-					}
-				} catch (MalformedURLException e) {
-					logger.error("Problematic URL" + icon_url, e);
-				}
-		}
-		return ExternalToolActivityIcon.getExternalToolIcon();
-	}
-
-	public Class<? extends Activity<ExternalToolActivityConfigurationBean>> getActivityClass() {
-		return ExternalToolActivity.class;
-	}
-
-	public ExternalToolActivityConfigurationBean getActivityConfiguration() {
-		ExternalToolActivityConfigurationBean bean = new ExternalToolActivityConfigurationBean();
-		bean.setRepositoryUrl(repositoryUrl);
-		bean.setExternaltoolid(externaltoolid);
-		bean.setUseCaseDescription(useCaseDescription);
-		bean.setMechanism(manager.getDefaultMechanism());
-
-		return bean;
-	}
-
-	public String getName() {
-		return externaltoolid;
-	}
-
-	@SuppressWarnings("unchecked")
-	public List<? extends Comparable> getPath() {
-		List<String> result = new ArrayList<String>();
-		result.add("Tools decribed @ " + repositoryUrl);
-		String group = useCaseDescription.getGroup();
-		if ((group != null) && !group.isEmpty()) {
-			String[] groups = group.split(":");
-			for (String g : groups) {
-				result.add(g);
-			}
-		}
-		return result;
-	}
-
-	protected List<Object> getIdentifyingData() {
-		// we require use cases inside one XML file to have unique IDs, which
-		// means every externaltool is uniquely identified by its repository URL and
-		// its use case ID.
-		return Arrays.<Object> asList(repositoryUrl, externaltoolid);
-	}
-	
-	public String getDescription() {
-		if (useCaseDescription != null) {
-			String description = useCaseDescription.getDescription();
-			if (description == null) {
-				return "";
-			}
-			return description;
-		}
-		return "";
-	}
-
-	public void setUseCaseDescription(UseCaseDescription usecase) {
-		this.useCaseDescription = usecase;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench-common-activities/blob/b4725724/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/ExternalToolServiceProvider.java
----------------------------------------------------------------------
diff --git a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/ExternalToolServiceProvider.java b/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/ExternalToolServiceProvider.java
deleted file mode 100644
index 4f3cbf2..0000000
--- a/taverna-external-tool-activity-ui/src/main/java/net/sf/taverna/t2/activities/externaltool/servicedescriptions/ExternalToolServiceProvider.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2009 Hajo Nils Krabbenhoeft, INB, University of Luebeck   
- * 
- *  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.externaltool.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 net.sf.taverna.t2.servicedescriptions.AbstractConfigurableServiceProvider;
-import net.sf.taverna.t2.servicedescriptions.CustomizedConfigurePanelProvider;
-import net.sf.taverna.t2.servicedescriptions.ServiceDescriptionRegistry;
-import de.uni_luebeck.inb.knowarc.usecases.UseCaseDescription;
-import de.uni_luebeck.inb.knowarc.usecases.UseCaseEnumeration;
-
-/**
- * ExternalToolServiceProvider searches an use case repository XML for use case
- * descriptions.
- * 
- * @author Hajo Nils Krabbenhoeft
- */
-public class ExternalToolServiceProvider extends AbstractConfigurableServiceProvider<ExternalToolServiceProviderConfig>  implements
-CustomizedConfigurePanelProvider<ExternalToolServiceProviderConfig>{
-
-	private static final URI providerId = URI
-	.create("http://taverna.sf.net/2010/service-provider/externaltool");
-	
-	public ExternalToolServiceProvider() {
-		super(new ExternalToolServiceProviderConfig("http://taverna.nordugrid.org/sharedRepository/xml.php"));
-	}
-
-	public String getName() {
-		return "Tool service";
-	}
-
-	public List<ExternalToolServiceProviderConfig> getDefaultConfigurations() {
-		List<ExternalToolServiceProviderConfig> defaults = new ArrayList<ExternalToolServiceProviderConfig>();
-		// Disabled until sensible set
-//		defaults.add(new ExternalToolServiceProviderConfig("http://taverna.nordugrid.org/sharedRepository/xml.php"));
-		return defaults;
-	}
-
-	public void findServiceDescriptionsAsync(FindServiceDescriptionsCallBack callBack) {
-		String repositoryUrl = serviceProviderConfig.getRepositoryUrl();
-		callBack.status("Parsing use case repository:" + repositoryUrl);
-			// prepare a list of all use case descriptions which are stored in
-			// the given repository URL
-			List<UseCaseDescription> usecases = new ArrayList<UseCaseDescription> ();
-			try {
-				usecases = UseCaseEnumeration.readDescriptionsFromUrl(
-						repositoryUrl);
-			} catch (IOException e) {
-				callBack.fail("Unable to read tool descriptions", e);
-			}
-			callBack.status("Found " + usecases.size() + " use cases:" + repositoryUrl);
-			// convert all the UseCaseDescriptions in the XML file into
-			// ExternalToolServiceDescription items
-			List<ExternalToolServiceDescription> items = new ArrayList<ExternalToolServiceDescription>();
-			for (UseCaseDescription usecase : usecases) {
-				ExternalToolServiceDescription item = new ExternalToolServiceDescription();
-				item.setRepositoryUrl(repositoryUrl);
-				item.setExternaltoolid(usecase.getUsecaseid());
-				item.setUseCaseDescription(usecase);
-				items.add(item);
-			}
-			// we dont have streaming data loading or partial results, so return
-			// results and finish
-			callBack.partialResults(items);
-			callBack.finished();
-	}
-
-	@Override
-	public String toString() {
-		return getName() + " " + getConfiguration().getRepositoryUrl();
-	}
-
-	public Icon getIcon() {
-	    return ExternalToolActivityIcon.getExternalToolIcon();
-	}
-
-	@Override
-	protected List<? extends Object> getIdentifyingData() {
-		List<String> result;
-		// one can fully identify an use case repository by its URL
-		result = Arrays.asList(getConfiguration().getRepositoryUrl());
-		return result;
-	}
-
-	public void setServiceDescriptionRegistry(ServiceDescriptionRegistry registry) {
-	}
-	
-	@SuppressWarnings("serial")
-	public void createCustomizedConfigurePanel(final CustomizedConfigureCallBack<ExternalToolServiceProviderConfig> callBack) {
-			
-		AddExternalToolServiceDialog addWSDLServiceDialog = new AddExternalToolServiceDialog() {
-				@Override
-				protected void addRegistry(String externalToolURL) {
-					
-					ExternalToolServiceProviderConfig providerConfig = new ExternalToolServiceProviderConfig(externalToolURL);					
-					callBack.newProviderConfiguration(providerConfig);
-				}
-			};
-			addWSDLServiceDialog.setVisible(true);		
-	}
-
-
-	public String getId() {
-		return providerId.toString();
-	}
-}