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 12:45:41 UTC

[17/52] [abbrv] incubator-taverna-workbench git commit: taverna-ui-impl/

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/plugins-gui/src/main/java/net/sf/taverna/raven/plugins/ui/PluginRepositoryListener.java
----------------------------------------------------------------------
diff --git a/plugins-gui/src/main/java/net/sf/taverna/raven/plugins/ui/PluginRepositoryListener.java b/plugins-gui/src/main/java/net/sf/taverna/raven/plugins/ui/PluginRepositoryListener.java
deleted file mode 100644
index c952e9c..0000000
--- a/plugins-gui/src/main/java/net/sf/taverna/raven/plugins/ui/PluginRepositoryListener.java
+++ /dev/null
@@ -1,148 +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
- ******************************************************************************/
-/*
- * Copyright (C) 2003 The University of Manchester 
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate.  Authorship
- * of the modifications may be determined from the ChangeLog placed at
- * the end of this file.
- *
- * 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
- * USA.
- *
- ****************************************************************
- * Source code information
- * -----------------------
- * Filename           $RCSfile: PluginRepositoryListener.java,v $
- * Revision           $Revision: 1.2 $
- * Release status     $State: Exp $
- * Last modified on   $Date: 2008/09/04 14:51:52 $
- *               by   $Author: sowen70 $
- * Created on 7 Dec 2006
- *****************************************************************/
-package net.sf.taverna.raven.plugins.ui;
-
-import javax.swing.JProgressBar;
-import javax.swing.SwingUtilities;
-
-import net.sf.taverna.raven.RavenException;
-import net.sf.taverna.raven.plugins.PluginManager;
-import net.sf.taverna.raven.repository.Artifact;
-import net.sf.taverna.raven.repository.ArtifactStatus;
-import net.sf.taverna.raven.repository.DownloadStatus;
-import net.sf.taverna.raven.repository.RepositoryListener;
-
-import org.apache.log4j.Logger;
-
-@SuppressWarnings("serial")
-public class PluginRepositoryListener implements
-		RepositoryListener {
-	
-	private final JProgressBar bar = new JProgressBar();
-
-	private static Logger logger = Logger
-			.getLogger(PluginRepositoryListener.class);
-
-	public PluginRepositoryListener() {
-		bar.setMaximum(100);
-		bar.setMinimum(0);
-		bar.setStringPainted(true);
-	}
-
-	public void statusChanged(final Artifact a, ArtifactStatus oldStatus,
-			ArtifactStatus newStatus) {
-
-		bar.setString(a.getArtifactId() + "-" + a.getVersion() + " : "
-				+ newStatus.toString());
-
-		if (newStatus.equals(ArtifactStatus.JarFetching)) {
-
-			final DownloadStatus dls;
-			try {
-				dls = PluginManager.getInstance().getRepository()
-						.getDownloadStatus(a);
-			} catch (RavenException ex) {
-				logger.warn("Could not get download status for: " + a, ex);
-				return;
-			}
-
-			Thread progressThread = new Thread(new Runnable() {
-				public void run() {
-					while (true) {
-						try {
-							Thread.sleep(100);
-						} catch (InterruptedException e) {
-							logger.warn("Progress thread interrupted", e);
-							return;
-						}
-						int progress = Math.min(100, (dls.getReadBytes() * 100)
-								/ dls.getTotalBytes());						
-						setProgress(progress);
-						if (dls.isFinished()) {
-							return;
-						}
-					}
-				}
-			}, "Update repository progress bar");
-			progressThread.start();
-		}
-	}
-	
-
-	public JProgressBar getProgressBar() {
-		return bar;
-	}
-	
-	public void setVisible(final boolean val) {
-		SwingUtilities.invokeLater(new Runnable() {
-			public void run() {				
-				bar.setVisible(val);
-			}			
-		});
-		
-	}
-	
-	public void setProgress(final int percentage) {
-		SwingUtilities.invokeLater(new Runnable() {
-			public void run() {				
-				if (percentage > 0) {
-					bar.setValue(percentage);
-				} else {
-					bar.setValue(0);
-				}	
-			}			
-		});
-					
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/plugins-gui/src/main/java/net/sf/taverna/raven/plugins/ui/PluginSiteFrame.java
----------------------------------------------------------------------
diff --git a/plugins-gui/src/main/java/net/sf/taverna/raven/plugins/ui/PluginSiteFrame.java b/plugins-gui/src/main/java/net/sf/taverna/raven/plugins/ui/PluginSiteFrame.java
deleted file mode 100644
index ecdb06e..0000000
--- a/plugins-gui/src/main/java/net/sf/taverna/raven/plugins/ui/PluginSiteFrame.java
+++ /dev/null
@@ -1,542 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007-2010 The University of Manchester
- *
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-/*
- * Copyright (C) 2003 The University of Manchester
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate.  Authorship
- * of the modifications may be determined from the ChangeLog placed at
- * the end of this file.
- *
- * 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
- * USA.
- *
- ****************************************************************
- * Source code information
- * -----------------------
- * Filename           $RCSfile: PluginSiteFrame.java,v $
- * Revision           $Revision: 1.3 $
- * Release status     $State: Exp $
- * Last modified on   $Date: 2008/10/27 13:39:56 $
- *               by   $Author: stain $
- * Created on 29 Nov 2006
- *****************************************************************/
-package net.sf.taverna.raven.plugins.ui;
-
-import java.awt.Color;
-import java.awt.Font;
-import java.awt.Frame;
-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.MouseAdapter;
-import java.awt.event.MouseEvent;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.swing.JButton;
-import javax.swing.JCheckBox;
-import javax.swing.JDialog;
-import javax.swing.JLabel;
-import javax.swing.JMenuItem;
-import javax.swing.JOptionPane;
-import javax.swing.JPanel;
-import javax.swing.JPopupMenu;
-import javax.swing.JProgressBar;
-import javax.swing.JScrollPane;
-import javax.swing.border.EtchedBorder;
-
-import uk.org.taverna.commons.plugin.PluginManager;
-
-import net.sf.taverna.t2.workbench.helper.HelpEnabledDialog;
-
-
-/**
- *
- * @author David Withers
- */
-public class PluginSiteFrame extends HelpEnabledDialog {
-
-	private static final long serialVersionUID = 1L;
-
-	private PluginManager pluginManager;
-
-	private List<PluginSite> pluginSites;
-
-	private List<Plugin> installationScheduled = new ArrayList<Plugin>(); // @jve:decl-index=0:
-
-	private JButton installButton = null; // @jve:decl-index=0:visual-constraint="446,247"
-
-	private JButton cancelButton = null;
-
-	private JButton addSiteButton = null;
-
-	private Map<Plugin, PluginRepositoryListener> listeners = new HashMap<Plugin, PluginRepositoryListener>();
-
-	private AddPluginSiteFrame addSiteFrame = null;
-
-	private JScrollPane scrollPane = null;
-
-	/**
-	 * This is the default constructor
-	 */
-	public PluginSiteFrame(Frame owner) {
-		super(owner, "Update sites", true);
-		initialize();
-	}
-
-	/**
-	 * This is the default constructor
-	 */
-	public PluginSiteFrame(JDialog owner) {
-		super(owner, "Update sites", true);
-		initialize();
-	}
-
-	/**
-	 * This method initializes this
-	 *
-	 * @return void
-	 */
-	private void initialize() {
-		this.pluginManager = PluginManager.getInstance();
-		this.pluginSites = this.pluginManager.getPluginSites();
-		this.setSize(600, 450);
-		this.setContentPane(getJContentPane());
-	}
-
-	/**
-	 * This method initializes jContentPane
-	 *
-	 * @return javax.swing.JPanel
-	 */
-	private JPanel getJContentPane() {
-		GridBagConstraints gridBagConstraints14 = new GridBagConstraints();
-		gridBagConstraints14.gridx = 1;
-		gridBagConstraints14.anchor = GridBagConstraints.SOUTHWEST;
-		gridBagConstraints14.gridy = GridBagConstraints.RELATIVE;
-		gridBagConstraints14.insets = new Insets(5, 5, 5, 5);
-		GridBagConstraints gridBagConstraints12 = new GridBagConstraints();
-		gridBagConstraints12.fill = GridBagConstraints.BOTH;
-		gridBagConstraints12.gridx = 0;
-		gridBagConstraints12.gridy = 0;
-		gridBagConstraints12.weightx = 1.0;
-		gridBagConstraints12.weighty = 1.0;
-		gridBagConstraints12.gridwidth = 3;
-		gridBagConstraints12.anchor = GridBagConstraints.NORTHWEST;
-		GridBagConstraints gridBagConstraints = new GridBagConstraints();
-		gridBagConstraints.gridx = 0;
-		gridBagConstraints.gridy = GridBagConstraints.RELATIVE;
-		gridBagConstraints.anchor = GridBagConstraints.SOUTHWEST;
-		gridBagConstraints.insets = new Insets(5, 5, 5, 5);
-		GridBagConstraints gridBagConstraints1 = new GridBagConstraints();
-		gridBagConstraints1.gridx = 2;
-		gridBagConstraints1.gridy = GridBagConstraints.RELATIVE;
-		gridBagConstraints1.anchor = GridBagConstraints.SOUTHEAST;
-		gridBagConstraints1.insets = new Insets(5, 5, 5, 5);
-		JPanel jContentPane = new JPanel();
-		jContentPane.setLayout(new GridBagLayout());
-		jContentPane.add(getJScrollPane(), gridBagConstraints12);
-		jContentPane.add(getInstallButton(), gridBagConstraints);
-		jContentPane.add(getCloseButton(), gridBagConstraints1);
-		jContentPane.add(getAddPluginSiteButton(), gridBagConstraints14);
-		return jContentPane;
-	}
-
-	/**
-	 * This method initializes jScrollPane
-	 *
-	 * @return javax.swing.JScrollPane
-	 */
-	private JScrollPane getJScrollPane() {
-		scrollPane = new JScrollPane();
-		scrollPane.setViewportView(getJPanel());
-		return scrollPane;
-	}
-
-	/**
-	 * This method initializes jPanel
-	 *
-	 * @return javax.swing.JPanel
-	 */
-	private JPanel getJPanel() {
-		JPanel jPanel = new JPanel();
-		jPanel.setLayout(new GridBagLayout());
-		for (PluginSite pluginSite : pluginSites) {
-			GridBagConstraints gridBagConstraints = new GridBagConstraints();
-			gridBagConstraints.fill = GridBagConstraints.HORIZONTAL;
-			gridBagConstraints.gridx = 0;
-			gridBagConstraints.gridy = GridBagConstraints.RELATIVE;
-			gridBagConstraints.weightx = 1.0;
-			gridBagConstraints.weighty = 0.0;
-			gridBagConstraints.anchor = GridBagConstraints.NORTHWEST;
-			gridBagConstraints.insets = new Insets(5, 5, 0, 5);
-			jPanel.add(getJPanel1(pluginSite), gridBagConstraints);
-		}
-		GridBagConstraints gridBagConstraints = new GridBagConstraints();
-		gridBagConstraints.fill = GridBagConstraints.BOTH;
-		gridBagConstraints.gridx = 0;
-		gridBagConstraints.gridy = GridBagConstraints.RELATIVE;
-		gridBagConstraints.weighty = 1.0;
-		jPanel.add(new JPanel(), gridBagConstraints);
-		return jPanel;
-	}
-
-	private JPanel getJPanel1(final PluginSite pluginSite) {
-		final JPanel pluginSitePanel = new JPanel();
-		pluginSitePanel.setBackground(Color.WHITE);
-		pluginSitePanel.setLayout(new GridBagLayout());
-		GridBagConstraints gridBagConstraints = new GridBagConstraints();
-		gridBagConstraints.gridx = 0;
-		gridBagConstraints.gridy = 0;
-		gridBagConstraints.anchor = GridBagConstraints.WEST;
-		gridBagConstraints.fill = GridBagConstraints.HORIZONTAL;
-		gridBagConstraints.gridwidth = 2;
-		gridBagConstraints.insets = new Insets(5, 5, 5, 5);
-		gridBagConstraints.ipadx = 5;
-		gridBagConstraints.ipady = 5;
-		gridBagConstraints.weightx = 1.0;
-		//ShadedLabel siteNameLabel = getSiteLabel(pluginSite);
-		JLabel siteNameLabel = getSiteLabel(pluginSite);
-
-		pluginSitePanel.add(siteNameLabel, gridBagConstraints);
-
-		final GridBagConstraints gridBagConstraints1 = new GridBagConstraints();
-		gridBagConstraints1.gridx = 0;
-		gridBagConstraints1.gridy = 1;
-		gridBagConstraints1.anchor = GridBagConstraints.WEST;
-		gridBagConstraints1.fill = GridBagConstraints.HORIZONTAL;
-		gridBagConstraints1.gridwidth = 2;
-		gridBagConstraints1.insets = new Insets(5, 5, 5, 5);
-		gridBagConstraints1.weightx = 1.0;
-		final JProgressBar progressBar = new JProgressBar();
-		progressBar.setIndeterminate(true);
-		progressBar.setStringPainted(true);
-		progressBar.setString("Checking for new plugins");
-		pluginSitePanel.add(progressBar, gridBagConstraints1);
-
-		new Thread("Checking update site " + pluginSite) {
-			public void run() {
-				try {
-					List<Plugin> plugins = pluginManager
-							.getUninstalledPluginsFromSite(pluginSite);
-					if (plugins.size() > 0) {
-						Collections.sort(plugins, new Comparator<Plugin>() {
-
-							public int compare(Plugin o1, Plugin o2) {
-								return o1.getName().compareTo(o2.getName());
-							}
-
-						});
-
-						pluginSitePanel.remove(progressBar);
-						int gridY = 0;
-						for (Plugin plugin : plugins) {
-							gridY++;
-							GridBagConstraints gridBagConstraints1 = new GridBagConstraints();
-							gridBagConstraints1.gridx = 0;
-							gridBagConstraints1.gridy = gridY;
-							gridBagConstraints1.anchor = GridBagConstraints.WEST;
-							gridBagConstraints1.insets = new Insets(5, 20, 0, 0);
-							pluginSitePanel.add(getJCheckBox(plugin),
-									gridBagConstraints1);
-
-							gridY++;
-
-							GridBagConstraints gridBagConstraintsDescription = new GridBagConstraints();
-							gridBagConstraintsDescription.gridx = 0;
-							gridBagConstraintsDescription.ipadx = 50;
-							gridBagConstraintsDescription.gridy = gridY;
-							gridBagConstraintsDescription.anchor = GridBagConstraints.WEST;
-							gridBagConstraintsDescription.insets = new Insets(5, 25, 10, 5);
-
-							gridY++;
-
-							GridBagConstraints gridBagConstraintsProgress = new GridBagConstraints();
-							gridBagConstraintsProgress.gridx = 0;
-							gridBagConstraintsProgress.gridy = gridY;
-							gridBagConstraintsProgress.fill = GridBagConstraints.HORIZONTAL;
-							gridBagConstraintsProgress.anchor = GridBagConstraints.WEST;
-							gridBagConstraintsProgress.insets = new Insets(5, 5, 0, 0);
-
-							JLabel description = new JLabel();
-							description.setText("<html>"+plugin.getDescription());
-							description.setFont(getFont().deriveFont(Font.PLAIN));
-							pluginSitePanel.add(description,gridBagConstraintsDescription);
-
-							PluginRepositoryListener progress = new PluginRepositoryListener();
-							listeners.put(plugin, progress);
-							progress.setVisible(false);
-
-							pluginSitePanel.add(progress.getProgressBar(),
-									gridBagConstraintsProgress);
-						}
-					} else {
-						pluginSitePanel.remove(progressBar);
-						pluginSitePanel.add(new JLabel(
-								"This update site contains no new plugins"),
-								gridBagConstraints1);
-					}
-				} catch (Exception e) {
-					pluginSitePanel.remove(progressBar);
-					pluginSitePanel.add(new JLabel(
-							"Unable to contact the update site"),
-							gridBagConstraints1);
-				} finally {
-					pluginSitePanel.revalidate();
-					pluginSitePanel.repaint();
-				}
-			}
-		}.start();
-
-		pluginSitePanel.setBorder(new EtchedBorder());
-		return pluginSitePanel;
-	}
-
-	private JLabel getSiteLabel(final PluginSite pluginSite) {
-		//ShadedLabel result = new ShadedLabel(pluginSite.getName(),Color.LIGHT_GRAY);
-		JLabel result = new JLabel(pluginSite.getName());
-
-
-		//add popup remove option, except on the Taverna main plugin site.
-		if (!(pluginSite instanceof TavernaPluginSite)) {
-			result.addMouseListener(new MouseAdapter() {
-				@Override
-				public void mouseClicked(MouseEvent e) {
-					popup(e);
-				}
-
-				@Override
-				public void mousePressed(MouseEvent e) {
-					popup(e);
-				}
-
-				private void popup(MouseEvent e) {
-					if (e.isPopupTrigger()) {
-						JPopupMenu menu=new JPopupMenu();
-						//JMenuItem item = new JMenuItem("Remove site",TavernaIcons.deleteIcon);
-						JMenuItem item = new JMenuItem("Remove site");
-
-						menu.add(item);
-						menu.show(e.getComponent(), e.getX(), e.getY());
-						item.addActionListener(new ActionListener() {
-
-							public void actionPerformed(ActionEvent e) {
-								int response=JOptionPane.showConfirmDialog(PluginSiteFrame.this, "Are you sure you want to remove the update site:"+pluginSite.getName(),"Remove update site",JOptionPane.YES_NO_OPTION);
-								if (response==JOptionPane.YES_OPTION) {
-									pluginManager.removePluginSite(pluginSite);
-									pluginManager.savePluginSites();
-									scrollPane.setViewportView(getJPanel());
-								}
-							}
-						});
-					}
-				}
-			});
-		}
-		return result;
-	}
-
-	/**
-	 * This method initializes jButton
-	 *
-	 * @return javax.swing.JButton
-	 */
-	private JCheckBox getJCheckBox(Plugin plugin) {
-		PluginCheckBox checkBox = new PluginCheckBox();
-		checkBox.plugin = plugin;
-		checkBox.setText(plugin.getName() + " " + plugin.getVersion());
-		checkBox.setOpaque(false);
-		checkBox.addActionListener(new ActionListener() {
-			public void actionPerformed(ActionEvent e) {
-				if (e.getSource() instanceof PluginCheckBox) {
-					PluginCheckBox checkBox = (PluginCheckBox) e.getSource();
-					if (checkBox.isSelected()) {
-						installationScheduled.add(checkBox.plugin);
-
-
-
-						getInstallButton().setEnabled(true);
-					} else {
-						installationScheduled.remove(checkBox.plugin);
-						if (installationScheduled.size() == 0) {
-							getInstallButton().setEnabled(false);
-						}
-					}
-				}
-			}
-
-		});
-		return checkBox;
-	}
-
-	private final Thread getUpdateRepositoryThread() {
-		return new Thread("Update Repository Progress") {
-
-			public void run() {
-				cancelButton.setEnabled(false);
-				for (int i = 0; i < installationScheduled.size(); i++) {
-					final Plugin plugin = installationScheduled.get(i);
-					PluginRepositoryListener listener = listeners.get(plugin);
-					if (listener != null) {
-						pluginManager.getRepository().addRepositoryListener(
-								listener);
-						listener.getProgressBar().setVisible(true);
-					}
-
-					pluginManager.addPlugin(plugin);
-
-					if (listener != null) {
-						pluginManager.getRepository().removeRepositoryListener(
-								listener);
-						listener.getProgressBar().setVisible(false);
-					}
-					plugin.setEnabled(true);
-
-				}
-				pluginManager.savePlugins();
-				installationScheduled.clear();
-				setVisible(false);
-				dispose();
-			}
-
-		};
-	}
-
-	/**
-	 * This method initializes jButton
-	 *
-	 * @return javax.swing.JButton
-	 */
-	private JButton getInstallButton() {
-		if (installButton == null) {
-			installButton = new JButton();
-			installButton.setText("Install");
-			installButton.setEnabled(false);
-			installButton
-					.addActionListener(new java.awt.event.ActionListener() {
-						public void actionPerformed(java.awt.event.ActionEvent e) {
-							installButton.setEnabled(false);
-							getUpdateRepositoryThread().start();
-						}
-
-					});
-		}
-		return installButton;
-	}
-
-	/**
-	 * This method initializes jButton
-	 *
-	 * @return javax.swing.JButton
-	 */
-	private JButton getCloseButton() {
-		if (cancelButton == null) {
-			cancelButton = new JButton();
-			cancelButton.setText("Close");
-			cancelButton.addActionListener(new ActionListener() {
-				public void actionPerformed(java.awt.event.ActionEvent e) {
-					setVisible(false);
-					dispose();
-				}
-			});
-		}
-		return cancelButton;
-	}
-
-	@SuppressWarnings("serial")
-	class PluginCheckBox extends JCheckBox {
-		public Plugin plugin;
-	}
-
-	private final void addPluginSite() {
-
-		addSiteFrame=new AddPluginSiteFrame(this);
-
-		addSiteFrame.setLocationRelativeTo(this);
-		addSiteFrame.setVisible(true);
-
-		if (addSiteFrame.getName()!=null) {
-			if (addSiteFrame.getName().length()==0) {
-				JOptionPane.showMessageDialog(this, "You must provide a name for your site.","Error adding update site",JOptionPane.ERROR_MESSAGE);
-				addPluginSite();
-			}
-			else {
-				if (addSiteFrame.getUrl()!=null) {
-					try {
-						PluginSite site = new PluginSite(addSiteFrame.getName(), new URL(addSiteFrame.getUrl()));
-						pluginManager.addPluginSite(site);
-						pluginManager.savePluginSites();
-
-						//refresh
-						scrollPane.setViewportView(getJPanel());
-						addSiteFrame=null; //so that the name and url are reset.
-					}
-					catch(Exception e) {
-						JOptionPane.showMessageDialog(this, "There was a problem adding the site you provided: "+e.getMessage(),"Error adding update site",JOptionPane.ERROR_MESSAGE);
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * This method initializes jButton
-	 *
-	 * @return javax.swing.JButton
-	 */
-	private JButton getAddPluginSiteButton() {
-		if (addSiteButton == null) {
-			addSiteButton = new JButton();
-			addSiteButton.setText("Add update site");
-			addSiteButton.setEnabled(true);
-			addSiteButton.addActionListener(new ActionListener() {
-				public void actionPerformed(ActionEvent e) {
-					addSiteButton.setEnabled(false);
-					addPluginSite();
-					addSiteButton.setEnabled(true);
-				}
-			});
-
-		}
-		return addSiteButton;
-	}
-
-} // @jve:decl-index=0:visual-constraint="10,10"

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/plugins-gui/src/main/java/net/sf/taverna/raven/plugins/ui/UpdatesAvailableIcon.java
----------------------------------------------------------------------
diff --git a/plugins-gui/src/main/java/net/sf/taverna/raven/plugins/ui/UpdatesAvailableIcon.java b/plugins-gui/src/main/java/net/sf/taverna/raven/plugins/ui/UpdatesAvailableIcon.java
deleted file mode 100644
index a0b15bf..0000000
--- a/plugins-gui/src/main/java/net/sf/taverna/raven/plugins/ui/UpdatesAvailableIcon.java
+++ /dev/null
@@ -1,205 +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
- ******************************************************************************/
-/*
- * Copyright (C) 2003 The University of Manchester
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate.  Authorship
- * of the modifications may be determined from the ChangeLog placed at
- * the end of this file.
- *
- * 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
- * USA.
- *
- ****************************************************************
- * Source code information
- * -----------------------
- * Filename           $RCSfile: UpdatesAvailableIcon.java,v $
- * Revision           $Revision: 1.5 $
- * Release status     $State: Exp $
- * Last modified on   $Date: 2008/12/01 12:32:40 $
- *               by   $Author: alaninmcr $
- * Created on 12 Dec 2006
- *****************************************************************/
-package net.sf.taverna.raven.plugins.ui;
-
-import java.awt.Component;
-import java.awt.event.MouseAdapter;
-import java.awt.event.MouseEvent;
-import java.lang.reflect.InvocationTargetException;
-import java.util.Arrays;
-
-import javax.swing.Icon;
-import javax.swing.ImageIcon;
-import javax.swing.JLabel;
-import javax.swing.SwingUtilities;
-
-
-import org.apache.log4j.Logger;
-
-/**
- * A JLabel that periodically checks for updates, running on a daemon thread. If
- * updates are available it makes itself visible and responds to click events to
- * display the appropriate update response.
- *
- * Also acts as a pluginmanager listener to refresh itself whenever a new plugin
- * is added.
- *
- * @author Stuart Owen
- *
- */
-
-@SuppressWarnings("serial")
-public class UpdatesAvailableIcon extends JLabel implements PluginManagerListener {
-
-	private UpdatePluginsMouseAdaptor updatePluginMouseAdaptor = new UpdatePluginsMouseAdaptor();
-	private static Logger logger = Logger.getLogger(UpdatesAvailableIcon.class);
-
-	private final int CHECK_INTERVAL = 1800000; // every 30 minutes
-
-	public static final Icon updateIcon = new ImageIcon(
-			UpdatesAvailableIcon.class.getResource("update.png"));
-	public static final Icon updateRecommendedIcon = new ImageIcon(
-			UpdatesAvailableIcon.class.getResource("updateRecommended.png"));
-
-	public UpdatesAvailableIcon() {
-		super();
-		setVisible(false);
-
-		startCheckThread();
-		PluginManager.addPluginManagerListener(this);
-	}
-
-	public void pluginAdded(PluginManagerEvent event) {
-		logger.info("Plugin Added");
-		if (!isVisible())
-			checkForUpdates();
-	}
-
-	public void pluginStateChanged(PluginManagerEvent event) {
-
-	}
-
-	public void pluginUpdated(PluginManagerEvent event) {
-		logger.info("Plugin Updated");
-	}
-
-	public void pluginRemoved(PluginManagerEvent event) {
-		logger.info("Plugin Removed");
-		if (isVisible())
-			checkForUpdates();
-	}
-
-	public void pluginIncompatible(PluginManagerEvent event) {
-		logger
-				.warn("Plugin found to be incompatible with the current version of Taverna: "
-						+ event.getPlugin());
-	}
-
-	private void startCheckThread() {
-		Thread checkThread = new Thread("Check for updates thread") {
-
-			@Override
-			public void run() {
-				while (true) {
-					try {
-						checkForUpdates();
-						Thread.sleep(CHECK_INTERVAL);
-					} catch (InterruptedException e) {
-						logger.warn("Interruption exception in checking for updates thread",
-										e);
-					}
-				}
-			}
-		};
-		checkThread.setDaemon(true); // daemon so that taverna will stop the
-										// thread and close on exit.
-		checkThread.start();
-	}
-
-	private Object updateLock = new Object();
-
-	private void checkForUpdates() {
-		synchronized (updateLock) {
-			if (pluginUpdateAvailable()) {
-				logger.info("Plugin update available");
-				try {
-					SwingUtilities.invokeAndWait(new Runnable() {
-						public void run() {
-							// TODO Auto-generated method stub
-							setToolTipText("Plugin updates are available");
-
-							setVisible(true);
-							setIcon(updateIcon);
-							if (!Arrays.asList(getMouseListeners()).contains(
-									updatePluginMouseAdaptor)) {
-								addMouseListener(updatePluginMouseAdaptor);
-							}
-
-						}
-					});
-				} catch (InterruptedException e) {
-					logger.error("Could not check for updates", e);
-				} catch (InvocationTargetException e) {
-					logger.error("Could not check for updates", e);
-				}
-			} else {
-				setToolTipText("");
-				setVisible(false);
-
-			}
-		}
-
-	}
-
-	private boolean pluginUpdateAvailable() {
-		return PluginManager.getInstance().checkForUpdates();
-	}
-
-	private final class UpdatePluginsMouseAdaptor extends MouseAdapter {
-
-		@Override
-		public void mouseClicked(MouseEvent e) {
-			// FIXME: this assumes the button is on the toolbar.
-			Component parent = UpdatesAvailableIcon.this.getParent()
-					.getParent();
-
-			final PluginManagerFrame pluginManagerUI = new PluginManagerFrame(
-					PluginManager.getInstance());
-			pluginManagerUI.setLocationRelativeTo(parent);
-			pluginManagerUI.setVisible(true);
-		}
-
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/plugins-gui/src/main/java/net/sf/taverna/raven/profile/ui/ProfileVersionCellRenderer.java
----------------------------------------------------------------------
diff --git a/plugins-gui/src/main/java/net/sf/taverna/raven/profile/ui/ProfileVersionCellRenderer.java b/plugins-gui/src/main/java/net/sf/taverna/raven/profile/ui/ProfileVersionCellRenderer.java
deleted file mode 100644
index b0c036c..0000000
--- a/plugins-gui/src/main/java/net/sf/taverna/raven/profile/ui/ProfileVersionCellRenderer.java
+++ /dev/null
@@ -1,177 +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
- ******************************************************************************/
-/*
- * Copyright (C) 2003 The University of Manchester 
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate.  Authorship
- * of the modifications may be determined from the ChangeLog placed at
- * the end of this file.
- *
- * 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
- * USA.
- *
- ****************************************************************
- * Source code information
- * -----------------------
- * Filename           $RCSfile: ProfileVersionCellRenderer.java,v $
- * Revision           $Revision: 1.2 $
- * Release status     $State: Exp $
- * Last modified on   $Date: 2008/09/04 14:52:06 $
- *               by   $Author: sowen70 $
- * Created on 16 Jan 2007
- *****************************************************************/
-package net.sf.taverna.raven.profile.ui;
-
-import java.awt.BorderLayout;
-import java.awt.Color;
-import java.awt.Component;
-import java.awt.Font;
-import java.awt.Graphics;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.awt.Insets;
-
-import javax.swing.JLabel;
-import javax.swing.JList;
-import javax.swing.JPanel;
-import javax.swing.ListCellRenderer;
-import javax.swing.border.AbstractBorder;
-
-import net.sf.taverna.raven.profile.ProfileHandler;
-import net.sf.taverna.raven.profile.ProfileVersion;
-import net.sf.taverna.raven.spi.Profile;
-import net.sf.taverna.raven.spi.ProfileFactory;
-
-public class ProfileVersionCellRenderer extends JPanel implements
-		ListCellRenderer {
-
-	private JLabel name;
-	private JLabel version;
-	private JLabel description;
-	private String currentVersion;
-	
-	public ProfileVersionCellRenderer() {
-		super();
-		initialise();
-	}
-	
-	private void initialise() {
-		Profile currentProfile = ProfileFactory.getInstance().getProfile();
-		if (currentProfile!=null) {
-			currentVersion=currentProfile.getVersion();
-		}
-		else {
-			currentVersion="UNKNOWN";
-		}
-		GridBagConstraints gridBagVersion = new GridBagConstraints();
-		gridBagVersion.gridx = 1;
-		gridBagVersion.insets = new Insets(3, 8, 3, 3);
-		gridBagVersion.anchor = GridBagConstraints.NORTHWEST;
-		gridBagVersion.fill = GridBagConstraints.NONE;
-		gridBagVersion.gridy = 0;		
-		version = new JLabel();
-		version.setFont(getFont().deriveFont(Font.BOLD));
-		version.setText("Version");
-		
-		GridBagConstraints gridBagDescription = new GridBagConstraints();
-		gridBagDescription.gridx = 0;
-		gridBagDescription.anchor = GridBagConstraints.NORTHWEST;
-		gridBagDescription.fill = GridBagConstraints.HORIZONTAL;
-		gridBagDescription.weightx = 1.0;
-		gridBagDescription.insets = new Insets(3, 3, 3, 3);
-		gridBagDescription.gridwidth = 2;
-		gridBagDescription.gridy = 1;
-		description = new JLabel();
-		description.setFont(getFont().deriveFont(Font.PLAIN));
-		description.setText("Plugin description");
-		
-		GridBagConstraints gridBagName = new GridBagConstraints();
-		gridBagName.gridx = 0;
-		gridBagName.anchor = GridBagConstraints.NORTHWEST;
-		gridBagName.fill = GridBagConstraints.NONE;
-		gridBagName.weightx = 0.0;
-		gridBagName.ipadx = 0;
-		gridBagName.insets = new Insets(3, 3, 3, 3);
-		gridBagName.gridwidth = 1;
-		gridBagName.gridy = 0;
-		name = new JLabel();
-		name.setFont(getFont().deriveFont(Font.PLAIN));
-		name.setText("Plugin name");
-		
-		this.setSize(297, 97);
-		this.setLayout(new GridBagLayout());
-		this.setBorder(new AbstractBorder() {
-			public void paintBorder(Component c, Graphics g, int x, int y,
-					int width, int height) {
-				Color oldColor = g.getColor();
-				g.setColor(Color.LIGHT_GRAY);
-				g.drawLine(x, y + height - 1, x + width - 1, y + height - 1);
-				g.setColor(oldColor);
-			}
-		});
-		this.add(name, gridBagName);
-		this.add(description, gridBagDescription);
-		this.add(version, gridBagVersion);		
-	}
-	
-	public Component getListCellRendererComponent(JList list, Object value,
-			int index, boolean isSelected, boolean cellHasFocus) {
-		if (isSelected) {
-			setBackground(list.getSelectionBackground());
-			setForeground(list.getSelectionForeground());
-		} else {
-			setBackground(list.getBackground());
-			setForeground(list.getForeground());
-		}
-		
-		if (value instanceof ProfileVersion) {
-			ProfileVersion version = (ProfileVersion) value;			
-			this.name.setText(version.getName());
-			if (version.getVersion().equalsIgnoreCase(currentVersion)) {
-				this.name.setText(version.getName()+" (Current)");
-				this.name.setForeground(Color.BLUE);
-			}
-			else {
-				this.name.setText(version.getName());
-				this.name.setForeground(Color.BLACK);
-			}
-			this.version.setText(version.getVersion());
-			this.description.setText("<html>"+version.getDescription());
-		}
-		
-		
-		return this;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/plugins-gui/src/main/java/net/sf/taverna/raven/profile/ui/ProfileVersionListFrame.java
----------------------------------------------------------------------
diff --git a/plugins-gui/src/main/java/net/sf/taverna/raven/profile/ui/ProfileVersionListFrame.java b/plugins-gui/src/main/java/net/sf/taverna/raven/profile/ui/ProfileVersionListFrame.java
deleted file mode 100644
index 861ed9a..0000000
--- a/plugins-gui/src/main/java/net/sf/taverna/raven/profile/ui/ProfileVersionListFrame.java
+++ /dev/null
@@ -1,260 +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
- ******************************************************************************/
-/*
- * Copyright (C) 2003 The University of Manchester 
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate.  Authorship
- * of the modifications may be determined from the ChangeLog placed at
- * the end of this file.
- *
- * 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
- * USA.
- *
- ****************************************************************
- * Source code information
- * -----------------------
- * Filename           $RCSfile: ProfileVersionListFrame.java,v $
- * Revision           $Revision: 1.3 $
- * Release status     $State: Exp $
- * Last modified on   $Date: 2008/09/04 14:52:06 $
- *               by   $Author: sowen70 $
- * Created on 16 Jan 2007
- *****************************************************************/
-package net.sf.taverna.raven.profile.ui;
-
-import java.awt.Frame;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.awt.Insets;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.io.File;
-import java.net.URL;
-import java.util.List;
-
-import javax.swing.JButton;
-import javax.swing.JDialog;
-import javax.swing.JList;
-import javax.swing.JOptionPane;
-import javax.swing.JPanel;
-import javax.swing.JScrollPane;
-import javax.swing.ListSelectionModel;
-import javax.swing.event.ListSelectionEvent;
-import javax.swing.event.ListSelectionListener;
-
-import net.sf.taverna.raven.appconfig.bootstrap.RavenProperties;
-import net.sf.taverna.raven.plugins.Plugin;
-import net.sf.taverna.raven.plugins.PluginManager;
-import net.sf.taverna.raven.profile.ProfileHandler;
-import net.sf.taverna.raven.profile.ProfileUpdateHandler;
-import net.sf.taverna.raven.profile.ProfileVersion;
-import net.sf.taverna.raven.spi.ProfileFactory;
-import net.sf.taverna.t2.workbench.helper.HelpEnabledDialog;
-
-import org.apache.log4j.Logger;
-
-@SuppressWarnings("serial")
-public class ProfileVersionListFrame extends HelpEnabledDialog {
-	
-	private JPanel contentPane = null;
-	private JScrollPane scrollPane = null;
-	private JList list = null;
-	private JButton switchButton = null;
-	private JButton closeButton = null;
-	private String currentVersion = null;
-	
-	private static Logger logger = Logger
-			.getLogger(ProfileVersionListFrame.class);
-
-	public ProfileVersionListFrame() {
-		this(null);
-	}
-	
-	public ProfileVersionListFrame(Frame parent) {
-		super(parent,"Taverna versions", true);
-		initialise();
-	}
-	
-	protected JPanel getJContentPane() {
-		if (contentPane==null) {
-			GridBagConstraints scrollPaneConstraints = new GridBagConstraints();
-			scrollPaneConstraints.fill = GridBagConstraints.BOTH;
-			scrollPaneConstraints.gridy = 0;
-			scrollPaneConstraints.weightx = 1.0;
-			scrollPaneConstraints.weighty = 1.0;
-			scrollPaneConstraints.gridwidth = 2;
-			scrollPaneConstraints.insets = new Insets(5, 5, 5, 5);
-			scrollPaneConstraints.gridx = 0;
-			scrollPaneConstraints.gridheight = 3;
-			
-			GridBagConstraints switchButtonConstraints = new GridBagConstraints();			
-			switchButtonConstraints.gridy=0;			
-			switchButtonConstraints.gridx=2;
-			switchButtonConstraints.insets = new Insets(5,5,5,5);
-			switchButtonConstraints.fill=GridBagConstraints.HORIZONTAL;
-			
-			GridBagConstraints closeButtonConstraints = new GridBagConstraints();
-			closeButtonConstraints.gridy=2;			
-			closeButtonConstraints.gridx=2;
-			closeButtonConstraints.insets = new Insets(5,5,5,5);
-			closeButtonConstraints.anchor=GridBagConstraints.SOUTH;
-			closeButtonConstraints.fill=GridBagConstraints.HORIZONTAL;
-			
-			contentPane = new JPanel();
-			contentPane.setLayout(new GridBagLayout());
-			contentPane.add(getScrollPane(),scrollPaneConstraints);
-			contentPane.add(getSwitchButton(),switchButtonConstraints);
-			contentPane.add(getCloseButton(),closeButtonConstraints);
-			
-		}
-		return contentPane;
-	}
-	
-	protected JScrollPane getScrollPane() {
-		if (scrollPane==null) {
-			scrollPane=new JScrollPane();
-			scrollPane.setViewportView(getJList());
-		}
-		return scrollPane;
-	}
-	
-	protected JList getJList() {
-		if (list==null) {
-			list=new JList();
-			list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
-			list.setModel(new ProfileVersionListModel());	
-			list.setCellRenderer(new ProfileVersionCellRenderer());
-			list.addListSelectionListener(new ListSelectionListener() {
-
-				public void valueChanged(ListSelectionEvent e) {
-					if (!e.getValueIsAdjusting()) {
-						respondToSelection();
-					}
-				}
-
-			});
-			if (list.getComponentCount() > 0) {
-				list.setSelectedIndex(0);
-				respondToSelection();
-				
-			}
-		}
-		return list;
-	}
-	
-	protected void respondToSelection() {
-		Object selected=list.getSelectedValue();
-		if (selected!=null && selected instanceof ProfileVersion) {
-			ProfileVersion version = (ProfileVersion)selected;
-			if (currentVersion==null || version.getVersion().equals(currentVersion)) {
-				getSwitchButton().setEnabled(false);
-			}
-			else {
-				getSwitchButton().setEnabled(true);
-			}
-		}
-	}
-	
-	protected JButton getSwitchButton() {
-		if (switchButton==null) {
-			switchButton=new JButton("Switch");
-			switchButton.setEnabled(true);
-			switchButton.addActionListener(new ActionListener() {
-
-				public void actionPerformed(ActionEvent e) {					
-					Object selected = getJList().getSelectedValue();
-					if (selected!=null && selected instanceof ProfileVersion) {
-						performSwitch((ProfileVersion)selected);
-					}
-				}
-				
-			});
-		}
-		return switchButton;
-	}
-	
-	protected JButton getCloseButton() {
-		if (closeButton==null) {
-			closeButton=new JButton("Close");
-			closeButton.setEnabled(true);
-			closeButton.addActionListener(new ActionListener() {
-				public void actionPerformed(ActionEvent e) {					
-					setVisible(false);
-					dispose();
-				}				
-			});			
-		}
-		return closeButton;		
-	}
-	
-	protected void performSwitch(ProfileVersion newVersion) {
-		List<Plugin> incompatiblePlugins = PluginManager.getInstance().getIncompatiblePlugins(newVersion.getVersion(),true);
-		if (incompatiblePlugins.size()>0) {
-			int response=JOptionPane.showConfirmDialog(this, "Some plugins will be incompatible with the new version and will be disabled. Do you wish to continue?","Confirm version switch",JOptionPane.YES_OPTION);
-			if (response!=JOptionPane.YES_OPTION) {
-				return;
-			}			
-		}
-		try {		
-			URL localProfile = new URL(RavenProperties.getInstance().getRavenProfileLocation());
-			URL profileList = new URL(RavenProperties.getInstance().getRavenProfileListLocation());
-			
-			ProfileUpdateHandler handler=new ProfileUpdateHandler(profileList,localProfile);
-			handler.updateLocalProfile(newVersion,new File(localProfile.toURI()));			
-			
-			//disable plugins after everything else has been acheived
-			for (Plugin plugin : incompatiblePlugins) {
-				plugin.setEnabled(false);
-			}			
-			JOptionPane.showMessageDialog(this, "You must restart taverna for the version switch to be activated");
-		}
-		catch(Exception e) {
-			logger.error("Error occurred switching to a new profile",e);
-			JOptionPane.showMessageDialog(this, "An error occurred switching to your new profile, try again later.");
-		}				
-	}
-	
-	
-	protected void initialise() {
-		try {
-			currentVersion = ProfileFactory.getInstance().getProfile().getVersion();
-		} catch (Exception e) {
-			logger.error("Unable to determine current taverna version",e);
-			currentVersion=null;
-		}
-		setSize(600,400);		
-		setContentPane(getJContentPane());
-	}	
-	
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/plugins-gui/src/main/java/net/sf/taverna/raven/profile/ui/ProfileVersionListModel.java
----------------------------------------------------------------------
diff --git a/plugins-gui/src/main/java/net/sf/taverna/raven/profile/ui/ProfileVersionListModel.java b/plugins-gui/src/main/java/net/sf/taverna/raven/profile/ui/ProfileVersionListModel.java
deleted file mode 100644
index c952413..0000000
--- a/plugins-gui/src/main/java/net/sf/taverna/raven/profile/ui/ProfileVersionListModel.java
+++ /dev/null
@@ -1,101 +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
- ******************************************************************************/
-/*
- * Copyright (C) 2003 The University of Manchester 
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate.  Authorship
- * of the modifications may be determined from the ChangeLog placed at
- * the end of this file.
- *
- * 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
- * USA.
- *
- ****************************************************************
- * Source code information
- * -----------------------
- * Filename           $RCSfile: ProfileVersionListModel.java,v $
- * Revision           $Revision: 1.3 $
- * Release status     $State: Exp $
- * Last modified on   $Date: 2008/09/04 14:52:06 $
- *               by   $Author: sowen70 $
- * Created on 16 Jan 2007
- *****************************************************************/
-package net.sf.taverna.raven.profile.ui;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.swing.AbstractListModel;
-
-import net.sf.taverna.raven.appconfig.bootstrap.RavenProperties;
-import net.sf.taverna.raven.profile.ProfileVersion;
-import net.sf.taverna.raven.profile.ProfileVersions;
-
-import org.apache.log4j.Logger;
-
-@SuppressWarnings("serial")
-public class ProfileVersionListModel extends AbstractListModel {
-	
-	private static Logger logger = Logger
-			.getLogger(ProfileVersionListModel.class);
-	
-	private List<ProfileVersion> versions;
-	
-	
-	public ProfileVersionListModel() {		
-		try {
-			URL url = getProfileListLocation();
-			versions = ProfileVersions.getProfileVersions(url);			
-		}
-		catch(MalformedURLException e) {
-			logger.error("Error with profile list URL",e);
-			versions = new ArrayList<ProfileVersion>();
-		}
-	}
-
-	public Object getElementAt(int index) {
-		return versions.get(index);
-	}
-
-	public int getSize() {
-		return versions.size();
-	}
-	
-	private URL getProfileListLocation() throws MalformedURLException{		
-		return new URL(RavenProperties.getInstance().getRavenProfileListLocation());
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/plugins-gui/src/main/resources/META-INF/services/net.sf.taverna.t2.workbench.StartupSPI
----------------------------------------------------------------------
diff --git a/plugins-gui/src/main/resources/META-INF/services/net.sf.taverna.t2.workbench.StartupSPI b/plugins-gui/src/main/resources/META-INF/services/net.sf.taverna.t2.workbench.StartupSPI
deleted file mode 100644
index a58f87a..0000000
--- a/plugins-gui/src/main/resources/META-INF/services/net.sf.taverna.t2.workbench.StartupSPI
+++ /dev/null
@@ -1,2 +0,0 @@
-net.sf.taverna.raven.plugins.ui.CheckForUpdatesStartupHook
-net.sf.taverna.raven.plugins.ui.CheckForNoticeStartupHook
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/plugins-gui/src/main/resources/META-INF/spring/plugins-gui-context-osgi.xml
----------------------------------------------------------------------
diff --git a/plugins-gui/src/main/resources/META-INF/spring/plugins-gui-context-osgi.xml b/plugins-gui/src/main/resources/META-INF/spring/plugins-gui-context-osgi.xml
deleted file mode 100644
index 38c21e5..0000000
--- a/plugins-gui/src/main/resources/META-INF/spring/plugins-gui-context-osgi.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<beans:beans xmlns="http://www.springframework.org/schema/osgi" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xmlns:beans="http://www.springframework.org/schema/beans"
-	xsi:schemaLocation="http://www.springframework.org/schema/beans 
-                      http://www.springframework.org/schema/beans/spring-beans.xsd
-                      http://www.springframework.org/schema/osgi 
-                      http://www.springframework.org/schema/osgi/spring-osgi.xsd">
-
-	<service ref="CheckForUpdatesStartupHook" interface="net.sf.taverna.t2.workbench.StartupSPI" />
-
-</beans:beans>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/plugins-gui/src/main/resources/META-INF/spring/plugins-gui-context.xml
----------------------------------------------------------------------
diff --git a/plugins-gui/src/main/resources/META-INF/spring/plugins-gui-context.xml b/plugins-gui/src/main/resources/META-INF/spring/plugins-gui-context.xml
deleted file mode 100644
index 33e2207..0000000
--- a/plugins-gui/src/main/resources/META-INF/spring/plugins-gui-context.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://www.springframework.org/schema/beans 
-                      http://www.springframework.org/schema/beans/spring-beans.xsd">
-
-	<bean id="CheckForUpdatesStartupHook" class="net.sf.taverna.raven.plugins.ui.CheckForUpdatesStartupHook" />
-
-</beans>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/plugins-gui/src/main/resources/net/sf/taverna/raven/plugins/ui/update.png
----------------------------------------------------------------------
diff --git a/plugins-gui/src/main/resources/net/sf/taverna/raven/plugins/ui/update.png b/plugins-gui/src/main/resources/net/sf/taverna/raven/plugins/ui/update.png
deleted file mode 100644
index e3695cb..0000000
Binary files a/plugins-gui/src/main/resources/net/sf/taverna/raven/plugins/ui/update.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/plugins-gui/src/main/resources/net/sf/taverna/raven/plugins/ui/updateRecommended.png
----------------------------------------------------------------------
diff --git a/plugins-gui/src/main/resources/net/sf/taverna/raven/plugins/ui/updateRecommended.png b/plugins-gui/src/main/resources/net/sf/taverna/raven/plugins/ui/updateRecommended.png
deleted file mode 100644
index 5adc4b1..0000000
Binary files a/plugins-gui/src/main/resources/net/sf/taverna/raven/plugins/ui/updateRecommended.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
deleted file mode 100644
index 3df0f2b..0000000
--- a/pom.xml
+++ /dev/null
@@ -1,117 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<artifactId>taverna-parent</artifactId>
-		<groupId>net.sf.taverna</groupId>
-		<version>3.0.1-SNAPSHOT</version>
-	</parent>
-
-	<groupId>net.sf.taverna.t2</groupId>
-	<artifactId>ui-impl</artifactId>
-	<version>2.0-SNAPSHOT</version>
-	<packaging>pom</packaging>
-
-	<name>Taverna 2 UI implementations</name>
-	<description>Implementations for the Taverna 2 workbench libraries</description>
-
-	<modules>
-		<module>activity-palette-impl</module>
-		<module>configuration-impl</module>
-		<module>contextual-views-impl</module>
-		<module>edits-impl</module>
-		<module>file-impl</module>
-		<module>helper</module>
-		<module>httpproxy-config</module>
-		<module>menu-impl</module>
-		<!-- <module>plugins-gui</module> -->
-		<module>renderers-impl</module>
-		<module>update-manager</module>
-		<module>workbench-impl</module>
-		<!-- <module>report-impl</module> -->
-		<module>selection-impl</module>
-		<module>plugin-manager</module>
-	</modules>
-	<repositories>
-		<repository>
-			<releases />
-			<snapshots>
-				<enabled>false</enabled>
-			</snapshots>
-			<id>mygrid-repository</id>
-			<name>myGrid Repository</name>
-			<url>http://www.mygrid.org.uk/maven/repository</url>
-		</repository>
-		<repository>
-			<releases>
-				<enabled>false</enabled>
-			</releases>
-			<snapshots />
-			<id>mygrid-snapshot-repository</id>
-			<name>myGrid Snapshot Repository</name>
-			<url>http://www.mygrid.org.uk/maven/snapshot-repository</url>
-		</repository>
-
-	</repositories>
-	<scm>
-		<connection>scm:svn:http://taverna.googlecode.com/svn/taverna/ui/net.sf.taverna.t2.ui-impl/trunk/</connection>
-		<developerConnection>scm:svn:https://taverna.googlecode.com/svn/taverna/ui/net.sf.taverna.t2.ui-impl/trunk/</developerConnection>
-		<url>http://code.google.com/p/taverna/source/browse/#svn/taverna/ui/net.sf.taverna.t2.ui-impl/trunk/</url>
-	</scm>
-	<dependencyManagement>
-		<dependencies>
-			<dependency>
-				<groupId>javax.help</groupId>
-				<artifactId>javahelp</artifactId>
-				<version>${javahelp.version}</version>
-			</dependency>
-			<dependency>
-				<groupId>uk.org.mygrid.taverna</groupId>
-				<artifactId>osxapplication</artifactId>
-				<version>1.5.1</version>
-			</dependency>
-			<dependency>
-				<groupId>log4j</groupId>
-				<artifactId>log4j</artifactId>
-				<version>${log4j.version}</version>
-			</dependency>
-			<dependency>
-				<groupId>commons-beanutils</groupId>
-				<artifactId>commons-beanutils</artifactId>
-				<version>${commons.beanutils.version}</version>
-			</dependency>
-			<dependency>
-				<groupId>commons-collections</groupId>
-				<artifactId>commons-collections</artifactId>
-				<version>${commons.collections.version}</version>
-			</dependency>
-			<dependency>
-				<groupId>commons-codec</groupId>
-				<artifactId>commons-codec</artifactId>
-				<version>${commons.codec.version}</version>
-			</dependency>
-			<dependency>
-				<groupId>commons-io</groupId>
-				<artifactId>commons-io</artifactId>
-				<version>${commons.io.version}</version>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.commons</groupId>
-				<artifactId>com.springsource.org.apache.commons.lang</artifactId>
-				<version>${commons.lang.version}</version>
-			</dependency>
-			<dependency>
-				<groupId>org.jdom</groupId>
-				<artifactId>com.springsource.org.jdom</artifactId>
-				<version>${jdom.version}</version>
-			</dependency>
-			<dependency>
-				<groupId>junit</groupId>
-				<artifactId>junit</artifactId>
-				<version>${junit.version}</version>
-				<scope>test</scope>
-			</dependency>
-		</dependencies>
-	</dependencyManagement>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/renderers-impl/pom.xml
----------------------------------------------------------------------
diff --git a/renderers-impl/pom.xml b/renderers-impl/pom.xml
deleted file mode 100644
index 24e06c0..0000000
--- a/renderers-impl/pom.xml
+++ /dev/null
@@ -1,65 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<groupId>net.sf.taverna.t2</groupId>
-		<artifactId>ui-impl</artifactId>
-		<version>2.0-SNAPSHOT</version>
-	</parent>
-	<groupId>net.sf.taverna.t2.ui-impl</groupId>
-	<artifactId>renderers-impl</artifactId>
-	<packaging>bundle</packaging>
-	<name>Renderers Implementation</name>
-	<build>
-		<plugins>
-			<plugin>
-				<groupId>org.apache.felix</groupId>
-				<artifactId>maven-bundle-plugin</artifactId>
-				<extensions>true</extensions>
-				<configuration>
-					<instructions>
-						<Private-Package>org.fife.ui.hex.*,net.sf.taverna.t2.renderers.impl</Private-Package>
-					</instructions>
-				</configuration>
-			</plugin>
-		</plugins>
-	</build>
-	<dependencies>
-		<dependency>
-			<groupId>net.sf.taverna.t2.ui-api</groupId>
-			<artifactId>renderers-api</artifactId>
-			<version>${t2.ui.api.version}</version>
-		</dependency>
-		<dependency>
-			<groupId>net.sf.taverna.t2.lang</groupId>
-			<artifactId>ui</artifactId>
-			<version>${t2.lang.version}</version>
-		</dependency>
-		<dependency>
-    		<groupId>uk.org.taverna.databundle</groupId>
-    		<artifactId>databundle</artifactId>
-    		<version>${taverna.databundle.version}</version>
-		</dependency>
-
-		<dependency>
-			<groupId>log4j</groupId>
-			<artifactId>log4j</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.jdom</groupId>
-			<artifactId>com.springsource.org.jdom</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.fife.ui.hex</groupId>
-			<artifactId>hexeditor</artifactId>
-			<version>1.1-SNAPSHOT</version>
-		</dependency>
-
-		<dependency>
-			<groupId>junit</groupId>
-			<artifactId>junit</artifactId>
-			<scope>test</scope>
-		</dependency>
-	</dependencies>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/AbstractRenderer.java
----------------------------------------------------------------------
diff --git a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/AbstractRenderer.java b/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/AbstractRenderer.java
deleted file mode 100644
index 14ef62f..0000000
--- a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/AbstractRenderer.java
+++ /dev/null
@@ -1,124 +0,0 @@
-package net.sf.taverna.t2.renderers.impl;
-
-import static java.lang.String.format;
-import static javax.swing.JOptionPane.YES_NO_OPTION;
-import static javax.swing.JOptionPane.YES_OPTION;
-import static javax.swing.JOptionPane.showConfirmDialog;
-import static net.sf.taverna.t2.renderers.RendererUtils.getSizeInBytes;
-import static net.sf.taverna.t2.renderers.impl.RendererConstants.BIG_DATA_MSG;
-import static net.sf.taverna.t2.renderers.impl.RendererConstants.CANCELLED_MSG;
-import static net.sf.taverna.t2.renderers.impl.RendererConstants.NO_DATA_MSG;
-import static net.sf.taverna.t2.renderers.impl.RendererConstants.NO_SIZE_MSG;
-import static uk.org.taverna.databundle.DataBundles.isValue;
-import static uk.org.taverna.databundle.DataBundles.isReference;
-
-import java.nio.file.Path;
-
-import javax.swing.JComponent;
-import javax.swing.JTextArea;
-
-import net.sf.taverna.t2.renderers.Renderer;
-import net.sf.taverna.t2.renderers.RendererException;
-
-import org.apache.log4j.Logger;
-
-/**
- * Implements some of the common code across the renderers.
- * 
- * @author Donal Fellows
- */
-abstract class AbstractRenderer implements Renderer {
-	protected Logger logger = Logger.getLogger(AbstractRenderer.class);
-	/** Size of a <s>mibibyte</s> megabyte. */
-	private int MEGABYTE = 1024 * 1024;
-
-	/**
-	 * Work out size of file in megabytes
-	 * 
-	 * @param bytes
-	 *            Number of bytes
-	 * @return Number of megabytes
-	 */
-	private int bytesToMeg(long bytes) {
-		float f = bytes / MEGABYTE;
-		return Math.round(f);
-	}
-
-	/**
-	 * Implements basic checks on the entity to render before delegating to
-	 * subclasses to actually do the rendering.
-	 * 
-	 * @see #getRendererComponent(Path)
-	 */
-	@Override
-	public JComponent getComponent(Path path) throws RendererException {
-		if (!isValue(path) && !isReference(path)) {
-			logger.error("unrenderable: data is not a value or reference");
-			return new JTextArea(NO_DATA_MSG);
-		}
-
-		// Get the size
-		long sizeInBytes;
-		try {
-			sizeInBytes = getSizeInBytes(path);
-		} catch (Exception ex) {
-			logger.error("unrenderable: failed to get data size", ex);
-			return new JTextArea(NO_SIZE_MSG + ex.getMessage());
-		}
-
-		// over the limit for this renderer?
-		if (sizeInBytes > MEGABYTE * getSizeLimit()) {
-			JComponent alternative = sizeCheck(path, bytesToMeg(sizeInBytes));
-			if (alternative != null)
-				return alternative;
-		}
-
-		return getRendererComponent(path);
-	}
-
-	/**
-	 * Implements the user-visible part of the size check. Default version just
-	 * does a simple yes/no proceed.
-	 * 
-	 * @return <tt>null</tt> if the normal flow is to continue, or a component
-	 *         to show to the user if it is to be used instead (e.g., to show a
-	 *         message that the entity was too large).
-	 */
-	protected JComponent sizeCheck(Path path, int approximateSizeInMB) {
-		int response = showConfirmDialog(null,
-				format(BIG_DATA_MSG, getResultType(), approximateSizeInMB),
-				getSizeQueryTitle(), YES_NO_OPTION);
-		if (response != YES_OPTION) // NO_OPTION or ESCAPE key
-			return new JTextArea(CANCELLED_MSG);
-		return null;
-	}
-
-	/**
-	 * How should we describe the data to the user? Should be capitalised.
-	 */
-	protected String getResultType() {
-		return "Result";
-	}
-
-	/**
-	 * At what size (in megabytes) do we query the user?
-	 * 
-	 * @see #sizeCheck(Path,log)
-	 */
-	protected int getSizeLimit() {
-		return 1;
-	}
-
-	/**
-	 * What title do we use on the dialog used to query the user?
-	 * 
-	 * @see #sizeCheck(Path,log)
-	 */
-	protected String getSizeQueryTitle() {
-		return "Render this image?";
-	}
-
-	/** Actually get the renderer; the basic checks have passed. */
-	protected abstract JComponent getRendererComponent(Path path)
-			throws RendererException;
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/AdvancedImageRenderer.java
----------------------------------------------------------------------
diff --git a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/AdvancedImageRenderer.java b/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/AdvancedImageRenderer.java
deleted file mode 100644
index 6c15834..0000000
--- a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/AdvancedImageRenderer.java
+++ /dev/null
@@ -1,94 +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.renderers.impl;
-
-import static javax.imageio.ImageIO.getReaderMIMETypes;
-import static javax.imageio.ImageIO.getWriterFormatNames;
-import static net.sf.taverna.t2.renderers.RendererUtils.getInputStream;
-import static net.sf.taverna.t2.renderers.impl.RendererConstants.SEE_LOG_MSG;
-
-import java.awt.Image;
-import java.io.InputStream;
-import java.nio.file.Path;
-import java.util.Arrays;
-import java.util.List;
-
-import javax.imageio.ImageIO;
-import javax.swing.ImageIcon;
-import javax.swing.JComponent;
-import javax.swing.JLabel;
-import javax.swing.JTextArea;
-
-import org.apache.log4j.Logger;
-
-/**
- * Advanced renderer for mime type image/* that can render tiff files. Uses Java
- * Advanced Imaging (JAI) ImageIO from https://jai-imageio.dev.java.net/.
- * 
- * @author Alex Nenadic
- * @author David Withers
- */
-public class AdvancedImageRenderer extends AbstractRenderer {
-	private static final String BAD_FORMAT_MSG = "Data does not seem to contain an image in any of the recognised formats:\n";
-	private static final String UNRENDERABLE_MSG = "Failed to create image renderer " + SEE_LOG_MSG;
-
-	private Logger logger = Logger.getLogger(AdvancedImageRenderer.class);
-	private List<String> mimeTypesList;
-
-	public AdvancedImageRenderer() {
-		mimeTypesList = Arrays.asList(getReaderMIMETypes());
-	}
-
-	@Override
-	public boolean canHandle(String mimeType) {
-		return mimeTypesList.contains(mimeType);
-	}
-
-	@Override
-	public String getType() {
-		return "Image";
-	}
-
-	@Override
-	public JComponent getRendererComponent(Path path) {
-		// Render into a label
-		try (InputStream inputStream = getInputStream(path)) {
-			Image image = ImageIO.read(inputStream);
-			if (image == null)
-				return new JTextArea(BAD_FORMAT_MSG
-						+ Arrays.asList(getWriterFormatNames()));
-			return new JLabel(new ImageIcon(image));
-		} catch (Exception e) {
-			logger.error("unrenderable: failed to create image renderer", e);
-			return new JTextArea(UNRENDERABLE_MSG + e.getMessage());
-		}
-	}
-
-	@Override
-	protected int getSizeLimit() {
-		return 4;
-	}
-
-	@Override
-	protected String getResultType() {
-		return "Image";
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/ExtensionFileFilter.java
----------------------------------------------------------------------
diff --git a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/ExtensionFileFilter.java b/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/ExtensionFileFilter.java
deleted file mode 100644
index 2d90764..0000000
--- a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/ExtensionFileFilter.java
+++ /dev/null
@@ -1,77 +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
- ******************************************************************************/
-/**
- * This file is a component of the Taverna project,
- * and is licensed under the GNU LGPL.
- * Copyright Tom Oinn, EMBL-EBI
- */
-package net.sf.taverna.t2.renderers.impl;
-
-import java.io.File;
-
-import javax.swing.filechooser.FileFilter;
-
-/**
- * A FileFilter implementation that can be configured to show only specific file
- * suffixes.
- * 
- * @author Tom Oinn
- */
-public class ExtensionFileFilter extends FileFilter {
-	String[] allowedExtensions;
-
-	public ExtensionFileFilter(String[] allowedExtensions) {
-		this.allowedExtensions = allowedExtensions;
-	}
-
-	@Override
-	public boolean accept(File f) {
-		if (f.isDirectory())
-			return true;
-		String extension = getExtension(f);
-		if (extension != null)
-			for (int i = 0; i < allowedExtensions.length; i++)
-				if (extension.equalsIgnoreCase(allowedExtensions[i]))
-					return true;
-		return false;
-	}
-
-	String getExtension(File f) {
-		String ext = null;
-		String s = f.getName();
-		int i = s.lastIndexOf('.');
-		if (i > 0 && i < s.length() - 1)
-			ext = s.substring(i + 1).toLowerCase();
-		return ext;
-	}
-
-	@Override
-	public String getDescription() {
-		StringBuilder sb = new StringBuilder();
-		sb.append("Filter for extensions : ");
-		String sep = "";
-		for (String ext : allowedExtensions) {
-			sb.append(sep).append(ext);
-			sep = ", ";
-		}
-		return sb.toString();
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/HexBinaryRenderer.java
----------------------------------------------------------------------
diff --git a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/HexBinaryRenderer.java b/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/HexBinaryRenderer.java
deleted file mode 100644
index f1d8f29..0000000
--- a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/HexBinaryRenderer.java
+++ /dev/null
@@ -1,77 +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.renderers.impl;
-
-import static net.sf.taverna.t2.renderers.RendererUtils.getInputStream;
-import static net.sf.taverna.t2.renderers.impl.RendererConstants.SEE_LOG_MSG;
-
-import java.io.InputStream;
-import java.nio.file.Path;
-
-import javax.swing.JComponent;
-import javax.swing.JTextArea;
-
-import net.sf.taverna.t2.renderers.RendererException;
-
-import org.fife.ui.hex.swing.HexEditor;
-
-/**
- * Renderer for binary data. Uses HexEditor from
- * http://www.fifesoft.com/hexeditor/.
- * 
- * @author Alex Nenadic
- * @author David Withers
- */
-public class HexBinaryRenderer extends AbstractRenderer {
-	private static final String RENDER_FAILED_MSG = "Failed to create binary hexadecimal renderer "
-			+ SEE_LOG_MSG;
-
-	@Override
-	public boolean canHandle(String mimeType) {
-		return false;
-		/*
-		 * can handle any data but return false here as we do not want this to
-		 * be default renderer
-		 */
-	}
-
-	@Override
-	protected String getSizeQueryTitle() {
-		return "Render binary data (in hexadecimal viewer)?";
-	}
-
-	@Override
-	public JComponent getRendererComponent(Path path) throws RendererException {
-		try (InputStream inputStream = getInputStream(path)) {
-			HexEditor editor = new HexEditor();
-			editor.open(inputStream);
-			return editor;
-		} catch (Exception e) {
-			logger.error("unrenderable: failed to create binhex renderer", e);
-			return new JTextArea(RENDER_FAILED_MSG + e.getMessage());
-		}
-	}
-
-	@Override
-	public String getType() {
-		return "Binary (HexDec)";
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/RendererConstants.java
----------------------------------------------------------------------
diff --git a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/RendererConstants.java b/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/RendererConstants.java
deleted file mode 100644
index d51c94c..0000000
--- a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/RendererConstants.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package net.sf.taverna.t2.renderers.impl;
-
-interface RendererConstants {
-	String SEE_LOG_MSG = "(see error log for more details):\n";
-	String NO_DATA_MSG = "Failed to obtain the data to render: "
-			+ "data is not a value or reference";
-	String NO_SIZE_MSG = "Failed to get the size of the data " + SEE_LOG_MSG;
-	String BIG_DATA_MSG = "%s is approximately %d MB in size, "
-			+ "there could be issues with rendering this inside Taverna\n"
-			+ "Do you want to continue?";
-	String CANCELLED_MSG = "Rendering cancelled due to size of image. "
-			+ "Try saving and viewing in an external application.";
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/RendererRegistryImpl.java
----------------------------------------------------------------------
diff --git a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/RendererRegistryImpl.java b/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/RendererRegistryImpl.java
deleted file mode 100644
index eb41292..0000000
--- a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/RendererRegistryImpl.java
+++ /dev/null
@@ -1,54 +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.renderers.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import net.sf.taverna.t2.renderers.Renderer;
-import net.sf.taverna.t2.renderers.RendererRegistry;
-
-/**
- * Implementation of a RendererRegistry.
- *
- * @author David Withers
- */
-public class RendererRegistryImpl implements RendererRegistry {
-	private List<Renderer> renderers;
-
-	@Override
-	public List<Renderer> getRenderersForMimeType(String mimeType) {
-		ArrayList<Renderer> list = new ArrayList<>();
-		for (Renderer renderer : renderers)
-			if (renderer.canHandle(mimeType))
-				list.add(renderer);
-		return list;
-	}
-
-	@Override
-	public List<Renderer> getRenderers() {
-		return renderers;
-	}
-
-	public void setRenderers(List<Renderer> renderers) {
-		this.renderers = renderers;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/72850d5a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/TextRenderer.java
----------------------------------------------------------------------
diff --git a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/TextRenderer.java b/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/TextRenderer.java
deleted file mode 100644
index 87fa364..0000000
--- a/renderers-impl/src/main/java/net/sf/taverna/t2/renderers/impl/TextRenderer.java
+++ /dev/null
@@ -1,137 +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.renderers.impl;
-
-import static java.awt.Font.PLAIN;
-import static java.lang.String.format;
-import static javax.swing.JOptionPane.NO_OPTION;
-import static javax.swing.JOptionPane.QUESTION_MESSAGE;
-import static javax.swing.JOptionPane.YES_NO_CANCEL_OPTION;
-import static javax.swing.JOptionPane.YES_OPTION;
-import static javax.swing.JOptionPane.showOptionDialog;
-import static net.sf.taverna.t2.renderers.RendererUtils.getInputStream;
-import static net.sf.taverna.t2.renderers.RendererUtils.getString;
-import static net.sf.taverna.t2.renderers.impl.RendererConstants.CANCELLED_MSG;
-import static net.sf.taverna.t2.renderers.impl.RendererConstants.SEE_LOG_MSG;
-
-import java.awt.Font;
-import java.io.InputStream;
-import java.nio.file.Path;
-import java.util.regex.Pattern;
-
-import javax.swing.JComponent;
-import javax.swing.JTextArea;
-
-import net.sf.taverna.t2.lang.ui.DialogTextArea;
-import net.sf.taverna.t2.renderers.RendererException;
-
-/**
- * Renderer for mime type text/*
- * 
- * @author Ian Dunlop
- * @author Alex Nenadic
- * @author David Withers
- */
-public class TextRenderer extends AbstractRenderer {
-	private static final String UNREADABLE_MSG = "Reference Service failed to render data "
-			+ SEE_LOG_MSG;
-	private static final String RENDERER_FAILED_MSG = "Failed to create text renderer "
-			+ SEE_LOG_MSG;
-	private static final String QUERY_MSG = "Result is approximately %d MB "
-			+ "in size, there could be issues with rendering this inside "
-			+ "Taverna\nDo you want to cancel, render all of the result, "
-			+ "or only the first part?";
-	private static final Pattern pattern = Pattern.compile(".*text/.*");
-
-	@Override
-	public boolean canHandle(String mimeType) {
-		return pattern.matcher(mimeType).matches();
-	}
-
-	@Override
-	public String getType() {
-		return "Text";
-	}
-
-	private JComponent textRender(String text) {
-		DialogTextArea theTextArea = new DialogTextArea();
-		theTextArea.setWrapStyleWord(true);
-		theTextArea.setEditable(false);
-		theTextArea.setText(text);
-		theTextArea.setFont(new Font("Monospaced", PLAIN, 12));
-		theTextArea.setCaretPosition(0);
-		return theTextArea;
-	}
-
-	private static final Object[] SIZE_OPTIONS = { "Continue rendering",
-			"Render partial", "Cancel" };
-
-	@Override
-	protected JComponent sizeCheck(Path path, int approximateSizeInMB) {
-		// allow partial rendering of text files
-		int response = showOptionDialog(null,
-				format(QUERY_MSG, approximateSizeInMB),
-				"Rendering large result", YES_NO_CANCEL_OPTION,
-				QUESTION_MESSAGE, null, SIZE_OPTIONS, SIZE_OPTIONS[2]);
-		if (response == YES_OPTION)
-			return null;
-		else if (response != NO_OPTION)
-			// if (response == CANCEL_OPTION) or ESCAPE key pressed
-			return new JTextArea(CANCELLED_MSG);
-
-		// Construct a partial result.
-		byte[] smallStringBytes = new byte[1048576];
-		try (InputStream inputStream = getInputStream(path)) {
-			// just copy the first MEGABYTE
-			inputStream.read(smallStringBytes);
-		} catch (Exception ex) {
-			logger.error("unrenderable: Reference Service failed "
-					+ "to render data as byte array", ex);
-			return new JTextArea(UNREADABLE_MSG + ex.getMessage());
-		}
-		try {
-			// TODO beware of encoding problems!
-			return textRender(new String(smallStringBytes));
-		} catch (Exception e1) {
-			logger.error("Failed to create text renderer", e1);
-			return new JTextArea(RENDERER_FAILED_MSG + e1.getMessage());
-		}
-	}
-
-	@Override
-	public JComponent getRendererComponent(Path path) throws RendererException {
-		String resolve;
-		try {
-			// Resolve it as a string
-			resolve = getString(path);
-		} catch (Exception e) {
-			logger.error("unrenderable: Reference Service failed "
-					+ "to render data as string", e);
-			return new JTextArea(UNREADABLE_MSG + e.getMessage());
-		}
-		try {
-			return textRender(resolve);
-		} catch (Exception e1) {
-			logger.error("Failed to create text renderer", e1);
-			return new JTextArea(RENDERER_FAILED_MSG + e1.getMessage());
-		}
-	}
-}