http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-menu-items/src/main/resources/META-INF/spring/menu-items-context-osgi.xml
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-menu-items/src/main/resources/META-INF/spring/menu-items-context-osgi.xml
 
b/taverna-workbench-menu-items/src/main/resources/META-INF/spring/menu-items-context-osgi.xml
deleted file mode 100644
index b7ba9e4..0000000
--- 
a/taverna-workbench-menu-items/src/main/resources/META-INF/spring/menu-items-context-osgi.xml
+++ /dev/null
@@ -1,57 +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="ActivityInputPortSection" auto-export="interfaces" />
-       <service ref="ActivityOutputPortSection" auto-export="interfaces" />
-       <service ref="AnnotatedConfigureMenuAction" auto-export="interfaces" />
-       <service ref="ConditionMenuActions" auto-export="interfaces" />
-       <service ref="ConditionSection" auto-export="interfaces" />
-       <service ref="ConfigureRunningContextualMenuSection" 
auto-export="interfaces" />
-       <service ref="ConfigureSection" auto-export="interfaces" />
-       <service ref="ConnectDataflowInputPortMenuActions" 
auto-export="interfaces" />
-       <service ref="ConnectDataflowOutputPortMenuActions" 
auto-export="interfaces" />
-       <service ref="ConnectInputPortMenuActions" auto-export="interfaces" />
-       <service ref="ConnectOutputPortMenuActions" auto-export="interfaces" />
-       <service ref="CreateInputMenuAction" auto-export="interfaces" />
-       <service ref="CreateOutputMenuAction" auto-export="interfaces" />
-       <service ref="EditDataflowInputPortMenuAction" auto-export="interfaces" 
/>
-       <service ref="EditDataflowOutputPortMenuAction" 
auto-export="interfaces" />
-       <service ref="EditSection" auto-export="interfaces" />
-       <service ref="InsertSection" auto-export="interfaces" />
-       <service ref="LinkSection" auto-export="interfaces" />
-       <service ref="PasteMenuAction" auto-export="interfaces" />
-       <service ref="ProcessorSection" auto-export="interfaces" />
-       <service ref="RemoveConditionMenuAction" auto-export="interfaces" />
-       <service ref="RemoveDataflowInputPortMenuAction" 
auto-export="interfaces" />
-       <service ref="RemoveDataflowOutputPortMenuAction" 
auto-export="interfaces" />
-       <service ref="RemoveLinkMenuAction" auto-export="interfaces" />
-       <service ref="RemoveProcessorMenuAction" auto-export="interfaces" />
-       <service ref="RenameProcessorMenuAction" auto-export="interfaces" />
-       <service ref="SetConstantInputPortValueMenuAction" 
auto-export="interfaces" />
-       <service ref="ShowConfigureMenuAction" auto-export="interfaces" />
-       <service ref="ShowDetailsContextualMenuAction" auto-export="interfaces" 
/>
-       <service ref="ShowDetailsMenuAction" auto-export="interfaces" />
-       <service ref="ShowReportsContextualMenuAction" auto-export="interfaces" 
/>
-       <service ref="WorkflowInputPortSection" auto-export="interfaces" />
-       <service ref="WorkflowOutputPortSection" auto-export="interfaces" />
-       <service ref="WorkflowServiceTemplatesSection" auto-export="interfaces" 
/>
-
-       <reference id="editManager" 
interface="net.sf.taverna.t2.workbench.edits.EditManager" />
-       <reference id="fileManager" 
interface="net.sf.taverna.t2.workbench.file.FileManager" />
-       <reference id="menuManager" 
interface="net.sf.taverna.t2.ui.menu.MenuManager" />
-       <reference id="reportManager" 
interface="net.sf.taverna.t2.workbench.report.ReportManager" cardinality="0..1" 
/>
-       <reference id="selectionManager" 
interface="net.sf.taverna.t2.workbench.selection.SelectionManager" />
-       <reference id="workbench" 
interface="net.sf.taverna.t2.workbench.ui.Workbench" cardinality="0..1" />
-       <reference id="workbenchConfiguration" 
interface="net.sf.taverna.t2.workbench.configuration.workbench.WorkbenchConfiguration"
 />
-       <reference id="activityIconManager" 
interface="net.sf.taverna.t2.workbench.activityicons.ActivityIconManager" />
-       <reference id="colourManager" 
interface="net.sf.taverna.t2.workbench.configuration.colour.ColourManager" />
-       <reference id="serviceRegistry" 
interface="uk.org.taverna.commons.services.ServiceRegistry" />
-
-       <list id="annotationBeans" 
interface="net.sf.taverna.t2.annotation.AnnotationBeanSPI"/>
-
-</beans:beans>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-menu-items/src/main/resources/META-INF/spring/menu-items-context.xml
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-menu-items/src/main/resources/META-INF/spring/menu-items-context.xml
 
b/taverna-workbench-menu-items/src/main/resources/META-INF/spring/menu-items-context.xml
deleted file mode 100644
index 6208a72..0000000
--- 
a/taverna-workbench-menu-items/src/main/resources/META-INF/spring/menu-items-context.xml
+++ /dev/null
@@ -1,124 +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="ActivityInputPortSection" 
class="net.sf.taverna.t2.ui.menu.items.activityport.ActivityInputPortSection" />
-       <bean id="ActivityOutputPortSection" 
class="net.sf.taverna.t2.ui.menu.items.activityport.ActivityOutputPortSection" 
/>
-       <bean id="ConditionMenuActions" 
class="net.sf.taverna.t2.ui.menu.items.processor.ConditionMenuActions">
-                       <property name="editManager" ref="editManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-                       <property name="activityIconManager" 
ref="activityIconManager" />
-       </bean>
-       <bean id="AnnotatedConfigureMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.annotated.AnnotatedConfigureMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-                       <property name="annotationBeans" ref="annotationBeans" 
/>
-       </bean>
-       <bean id="ConditionSection" 
class="net.sf.taverna.t2.ui.menu.items.controllink.ConditionSection" />
-       <bean id="ConfigureRunningContextualMenuSection" 
class="net.sf.taverna.t2.ui.menu.items.contextualviews.ConfigureRunningContextualMenuSection"
 />
-       <bean id="ConfigureSection" 
class="net.sf.taverna.t2.ui.menu.items.contextualviews.ConfigureSection" />
-       <bean id="ConnectDataflowInputPortMenuActions" 
class="net.sf.taverna.t2.ui.menu.items.ports.ConnectDataflowInputPortMenuActions">
-                       <property name="editManager" ref="editManager" />
-                       <property name="menuManager" ref="menuManager" />
-                       <property name="workbenchConfiguration" 
ref="workbenchConfiguration" />
-                       <property name="activityIconManager" 
ref="activityIconManager" />
-                       <property name="colourManager" ref="colourManager" />
-       </bean>
-       <bean id="ConnectDataflowOutputPortMenuActions" 
class="net.sf.taverna.t2.ui.menu.items.ports.ConnectDataflowOutputPortMenuActions">
-                       <property name="editManager" ref="editManager" />
-                       <property name="menuManager" ref="menuManager" />
-                       <property name="workbenchConfiguration" 
ref="workbenchConfiguration" />
-                       <property name="activityIconManager" 
ref="activityIconManager" />
-                       <property name="colourManager" ref="colourManager" />
-       </bean>
-       <bean id="ConnectInputPortMenuActions" 
class="net.sf.taverna.t2.ui.menu.items.activityport.ConnectInputPortMenuActions">
-                       <property name="editManager" ref="editManager" />
-                       <property name="menuManager" ref="menuManager" />
-                       <property name="workbenchConfiguration" 
ref="workbenchConfiguration" />
-                       <property name="activityIconManager" 
ref="activityIconManager" />
-                       <property name="colourManager" ref="colourManager" />
-       </bean>
-       <bean id="ConnectOutputPortMenuActions" 
class="net.sf.taverna.t2.ui.menu.items.activityport.ConnectOutputPortMenuActions">
-                       <property name="editManager" ref="editManager" />
-                       <property name="menuManager" ref="menuManager" />
-                       <property name="workbenchConfiguration" 
ref="workbenchConfiguration" />
-                       <property name="activityIconManager" 
ref="activityIconManager" />
-                       <property name="colourManager" ref="colourManager" />
-       </bean>
-       <bean id="CreateInputMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.workflow.CreateInputMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-       </bean>
-       <bean id="CreateOutputMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.workflow.CreateOutputMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-       </bean>
-       <bean id="EditDataflowInputPortMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.ports.EditDataflowInputPortMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-       </bean>
-       <bean id="EditDataflowOutputPortMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.ports.EditDataflowOutputPortMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-       </bean>
-       <bean id="EditSection" 
class="net.sf.taverna.t2.ui.menu.items.contextualviews.EditSection" />
-       <bean id="InsertSection" 
class="net.sf.taverna.t2.ui.menu.items.contextualviews.InsertSection" />
-       <bean id="LinkSection" 
class="net.sf.taverna.t2.ui.menu.items.datalink.LinkSection" />
-       <bean id="PasteMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.contextualviews.PasteMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="menuManager" ref="menuManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-                       <property name="serviceRegistry" ref="serviceRegistry" 
/>
-       </bean>
-       <bean id="ProcessorSection" 
class="net.sf.taverna.t2.ui.menu.items.processor.ProcessorSection" />
-       <bean id="RemoveConditionMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.controllink.RemoveConditionMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-       </bean>
-       <bean id="RemoveDataflowInputPortMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.ports.RemoveDataflowInputPortMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-       </bean>
-       <bean id="RemoveDataflowOutputPortMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.ports.RemoveDataflowOutputPortMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-       </bean>
-       <bean id="RemoveLinkMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.datalink.RemoveLinkMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-       </bean>
-       <bean id="RemoveProcessorMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.processor.RemoveProcessorMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-       </bean>
-       <bean id="RenameProcessorMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.processor.RenameProcessorMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-       </bean>
-       <bean id="SetConstantInputPortValueMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.activityport.SetConstantInputPortValueMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-                       <property name="serviceRegistry" ref="serviceRegistry" 
/>
-       </bean>
-       <bean id="ShowConfigureMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.contextualviews.ShowConfigureMenuAction">
-                       <property name="editManager" ref="editManager" />
-                       <property name="menuManager" ref="menuManager" />
-                       <property name="selectionManager" 
ref="selectionManager" />
-       </bean>
-       <bean id="ShowDetailsContextualMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.contextualviews.ShowDetailsContextualMenuAction">
-                       <property name="workbench" ref="workbench" />
-       </bean>
-       <bean id="ShowDetailsMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.contextualviews.ShowDetailsMenuAction">
-                       <property name="workbench" ref="workbench" />
-       </bean>
-       <bean id="ShowReportsContextualMenuAction" 
class="net.sf.taverna.t2.ui.menu.items.contextualviews.ShowReportsContextualMenuAction">
-                       <property name="selectionManager" 
ref="selectionManager" />
-                       <property name="reportManager" ref="reportManager" />
-                       <property name="workbench" ref="workbench" />
-       </bean>
-       <bean id="WorkflowInputPortSection" 
class="net.sf.taverna.t2.ui.menu.items.ports.WorkflowInputPortSection" />
-       <bean id="WorkflowOutputPortSection" 
class="net.sf.taverna.t2.ui.menu.items.ports.WorkflowOutputPortSection" />
-       <bean id="WorkflowServiceTemplatesSection" 
class="net.sf.taverna.t2.ui.menu.items.workflow.WorkflowServiceTemplatesSection"
 />
-
-</beans>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-monitor-view/pom.xml
----------------------------------------------------------------------
diff --git a/taverna-workbench-monitor-view/pom.xml 
b/taverna-workbench-monitor-view/pom.xml
deleted file mode 100644
index b4e102f..0000000
--- a/taverna-workbench-monitor-view/pom.xml
+++ /dev/null
@@ -1,67 +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-components</artifactId>
-               <version>2.0-SNAPSHOT</version>
-       </parent>
-       <groupId>net.sf.taverna.t2.ui-components</groupId>
-       <artifactId>monitor-view</artifactId>
-       <packaging>bundle</packaging>
-       <name>Monitor View</name>
-       <dependencies>
-               <dependency>
-                       <groupId>net.sf.taverna.t2.ui-api</groupId>
-                       <artifactId>workbench-api</artifactId>
-                       <version>${t2.ui.api.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>net.sf.taverna.t2.ui-components</groupId>
-                       <artifactId>graph-model</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>net.sf.taverna.t2.ui-components</groupId>
-                       <artifactId>results-view</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>net.sf.taverna.t2.ui-components</groupId>
-                       <artifactId>graph-view</artifactId>
-                       <version>${project.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.platform</groupId>
-                       <artifactId>taverna-report-api</artifactId>
-                       <version>${platform.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>uk.org.taverna.platform</groupId>
-                       <artifactId>taverna-run-api</artifactId>
-                       <version>${platform.version}</version>
-               </dependency>
-
-               <dependency>
-                       <groupId>commons-beanutils</groupId>
-                       <artifactId>commons-beanutils</artifactId>
-                       <version>${commons.beanutils.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>log4j</groupId>
-                       <artifactId>log4j</artifactId>
-               </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/dc466d6d/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/MonitorViewComponent.java
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/MonitorViewComponent.java
 
b/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/MonitorViewComponent.java
deleted file mode 100644
index 7ebd21f..0000000
--- 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/MonitorViewComponent.java
+++ /dev/null
@@ -1,168 +0,0 @@
-
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester
- *
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- 
******************************************************************************/
-package net.sf.taverna.t2.workbench.views.monitor;
-
-import static java.awt.BorderLayout.CENTER;
-import static java.awt.BorderLayout.SOUTH;
-import static javax.swing.ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED;
-import static javax.swing.ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED;
-import static org.apache.batik.ext.swing.GridBagConstants.EAST;
-import static org.apache.batik.ext.swing.GridBagConstants.NONE;
-
-import java.awt.BorderLayout;
-import java.awt.Component;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-
-import javax.swing.JButton;
-import javax.swing.JLabel;
-import javax.swing.JPanel;
-import javax.swing.JScrollPane;
-import javax.swing.JTabbedPane;
-
-import net.sf.taverna.t2.workbench.ui.Updatable;
-import net.sf.taverna.t2.workbench.views.monitor.graph.MonitorGraphComponent;
-import 
net.sf.taverna.t2.workbench.views.monitor.progressreport.TableMonitorComponent;
-
-/**
- * Component that shows the progress of a workflow run, either through a graph 
or
- * a table shown in separate tabs. For previous runs, it pulls processor and 
workflow
- * statuses from provenance.
- *
- * Graph and table are interactive, where clicking on them triggers displaying 
of
- * workflow results or intermediate results in a separate component.
- *
- * It also contains buttons to pause/resume and stop a workflow run.
- *
- */
-@SuppressWarnings({"serial","unused"})
-public class MonitorViewComponent extends JPanel implements Updatable {
-       private MonitorGraphComponent monitorGraph;
-       private TableMonitorComponent tableMonitorComponent;
-
-       private JTabbedPane tabbedPane;
-       private JPanel buttonsPanel;
-
-       public MonitorViewComponent() {
-               super(new BorderLayout());
-               tabbedPane = new JTabbedPane();
-               buttonsPanel = new JPanel(new GridBagLayout());
-
-//             buttonsPanel.add(new JLabel("Workflow status"));
-//
-//             buttonsPanel.add(new JButton("Pause"));
-//             buttonsPanel.add(new JButton("Cancel"));
-//             buttonsPanel.add(new JButton("Show results"));
-
-               add(tabbedPane, CENTER);
-               add(buttonsPanel, SOUTH);
-       }
-
-       public void setMonitorGraph(MonitorGraphComponent monitorGraph) {
-               this.monitorGraph = monitorGraph;
-               tabbedPane.add("Graph", monitorGraph);
-       }
-
-       public void setTableMonitorComponent(TableMonitorComponent 
tableMonitorComponent) {
-               this.tableMonitorComponent = tableMonitorComponent;
-
-               JScrollPane scrollPane = new JScrollPane(tableMonitorComponent,
-                               VERTICAL_SCROLLBAR_AS_NEEDED, 
HORIZONTAL_SCROLLBAR_AS_NEEDED);
-
-               tabbedPane.add("Progress report", scrollPane);
-       }
-
-       public void addWorkflowRunStatusLabel(JLabel statusLabel){
-               GridBagConstraints gbc = new GridBagConstraints();
-
-               gbc.gridx = 0;
-               gbc.gridy = 0;
-
-               gbc.fill = NONE;
-               buttonsPanel.add(statusLabel, gbc);
-       }
-
-       public void addWorkflowPauseButton(JButton workflowRunPauseButton) {
-               GridBagConstraints gbc = new GridBagConstraints();
-
-               gbc.gridx = 1;
-               gbc.gridy = 0;
-
-               gbc.fill = NONE;
-               gbc.weightx = 0.0;
-               buttonsPanel.add(workflowRunPauseButton, gbc);
-       }
-
-       public void addWorkflowCancelButton(JButton workflowRunCancelButton) {
-               GridBagConstraints gbc = new GridBagConstraints();
-
-               gbc.gridx = 2;
-               gbc.gridy = 0;
-
-               gbc.fill = NONE;
-               gbc.weightx = 0.0;
-               buttonsPanel.add(workflowRunCancelButton, gbc);
-       }
-
-       public void addReloadWorkflowButton(JButton reloadWorkflowButton) {
-               GridBagConstraints gbc = new GridBagConstraints();
-
-               gbc.gridx = 3;
-               gbc.gridy = 0;
-
-               gbc.fill = NONE;
-               gbc.weightx = 1.0;
-               gbc.anchor = EAST;
-               buttonsPanel.add(reloadWorkflowButton, gbc);
-       }
-
-       public void addIntermediateValuesButton(JButton 
intermediateValuesButton) {
-               GridBagConstraints gbc = new GridBagConstraints();
-
-               gbc.gridx = 4;
-               gbc.gridy = 0;
-
-               gbc.fill = NONE;
-               gbc.weightx = 1.0;
-               gbc.anchor = EAST;
-               buttonsPanel.add(intermediateValuesButton, gbc);
-       }
-
-       public void addWorkflowResultsButton(JButton workflowResultsButton) {
-               GridBagConstraints gbc = new GridBagConstraints();
-
-               gbc.gridx = 5;
-               gbc.gridy = 0;
-
-               gbc.fill = NONE;
-               gbc.weightx = 0.0;
-               gbc.anchor = EAST;
-               buttonsPanel.add(workflowResultsButton, gbc);
-       }
-
-       @Override
-       public void update() {
-               Component selectedComponent = tabbedPane.getSelectedComponent();
-               if (selectedComponent instanceof Updatable)
-                       ((Updatable) selectedComponent).update();
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/graph/GraphMonitor.java
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/graph/GraphMonitor.java
 
b/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/graph/GraphMonitor.java
deleted file mode 100644
index ecaff3e..0000000
--- 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/graph/GraphMonitor.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester
- *
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- 
******************************************************************************/
-package net.sf.taverna.t2.workbench.views.monitor.graph;
-
-import static net.sf.taverna.t2.workbench.icons.WorkbenchIcons.closeIcon;
-import static net.sf.taverna.t2.workbench.icons.WorkbenchIcons.tickIcon;
-import static net.sf.taverna.t2.workbench.icons.WorkbenchIcons.workingIcon;
-
-import java.util.HashSet;
-import java.util.Set;
-
-import javax.swing.JButton;
-import javax.swing.JLabel;
-
-import net.sf.taverna.t2.workbench.models.graph.GraphController;
-import net.sf.taverna.t2.workbench.ui.Updatable;
-import uk.org.taverna.platform.report.ActivityReport;
-import uk.org.taverna.platform.report.ProcessorReport;
-import uk.org.taverna.platform.report.State;
-import uk.org.taverna.platform.report.WorkflowReport;
-
-/**
- * An implementation of the Updatable interface that updates a Graph.
- * 
- * @author David Withers
- */
-public class GraphMonitor implements Updatable {
-       private static final String STATUS_RUNNING = "Running";
-       private static final String STATUS_FINISHED = "Finished";
-       private static final String STATUS_CANCELLED = "Cancelled";
-
-       /**
-        * Workflow run status label - we can only tell of workflow is running 
or is
-        * finished from inside this monitor. If workfow run is stopped or 
paused -
-        * this will be updated form the run-ui.
-        */
-       private JLabel workflowRunStatusLabel;
-       /**
-        * Similarly to {@link #workflowRunStatusLabel} - we disable the pause 
anc
-        * cancel buttons when workflow runs is finished
-        */
-       private JButton workflowRunPauseButton;
-       private JButton workflowRunCancelButton;
-       private GraphController graphController;
-       private Set<GraphMonitorNode> processors = new HashSet<>();
-       private final WorkflowReport workflowReport;
-
-       public GraphMonitor(GraphController graphController,
-                       WorkflowReport workflowReport) {
-               this.graphController = graphController;
-               this.workflowReport = workflowReport;
-               createMonitorNodes(workflowReport.getSubject().getName(),
-                               workflowReport);
-               redraw();
-       }
-
-       private void createMonitorNodes(String id, WorkflowReport 
workflowReport) {
-               for (ProcessorReport processorReport : workflowReport
-                               .getProcessorReports()) {
-                       String processorId = id + 
processorReport.getSubject().getName();
-                       processors.add(new GraphMonitorNode(processorId, 
processorReport,
-                                       graphController));
-                       for (ActivityReport activityReport : processorReport
-                                       .getActivityReports()) {
-                               WorkflowReport nestedWorkflowReport = 
activityReport
-                                               .getNestedWorkflowReport();
-                               if (nestedWorkflowReport != null)
-                                       createMonitorNodes(processorId, 
nestedWorkflowReport);
-                       }
-               }
-       }
-
-       public void redraw() {
-               for (GraphMonitorNode node : processors)
-                       node.redraw();
-       }
-
-       @Override
-       public void update() {
-               for (GraphMonitorNode node : processors)
-                       node.update();
-               // updateState();
-       }
-
-       @SuppressWarnings("unused")
-       private void updateState() {
-               State state = workflowReport.getState();
-               switch (state) {
-               case COMPLETED:
-               case FAILED:
-                       workflowRunStatusLabel.setText(STATUS_FINISHED);
-                       workflowRunStatusLabel.setIcon(tickIcon);
-                       workflowRunPauseButton.setEnabled(false);
-                       workflowRunCancelButton.setEnabled(false);
-                       break;
-               case CANCELLED:
-                       workflowRunStatusLabel.setText(STATUS_CANCELLED);
-                       workflowRunStatusLabel.setIcon(closeIcon);
-                       workflowRunPauseButton.setEnabled(false);
-                       workflowRunCancelButton.setEnabled(false);
-                       break;
-               case RUNNING:
-                       workflowRunStatusLabel.setText(STATUS_RUNNING);
-                       workflowRunStatusLabel.setIcon(workingIcon);
-               default:
-                       break;
-               }
-       }
-
-       // Set the status label that will be updated from this monitor
-       public void setWorkflowRunStatusLabel(JLabel workflowRunStatusLabel) {
-               this.workflowRunStatusLabel = workflowRunStatusLabel;
-       }
-
-       public void setWorkflowRunPauseButton(JButton workflowRunPauseButton) {
-               this.workflowRunPauseButton = workflowRunPauseButton;
-       }
-
-       public void setWorkflowRunCancelButton(JButton workflowRunCancelButton) 
{
-               this.workflowRunCancelButton = workflowRunCancelButton;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/graph/GraphMonitorNode.java
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/graph/GraphMonitorNode.java
 
b/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/graph/GraphMonitorNode.java
deleted file mode 100644
index 8e5c441..0000000
--- 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/graph/GraphMonitorNode.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester
- *
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- 
******************************************************************************/
-package net.sf.taverna.t2.workbench.views.monitor.graph;
-
-import static java.lang.Math.max;
-import net.sf.taverna.t2.workbench.models.graph.GraphController;
-import uk.org.taverna.platform.report.ProcessorReport;
-
-/**
- * A <code>MonitorNode</code> that updates a <code>Graph</code> when
- * <code>ProcessorReport</code> property changes.
- * 
- * @author David Withers
- */
-public class GraphMonitorNode {
-       private ProcessorReport processorReport;
-       private GraphController graphController;
-       private String processorId;
-       private int queueSize = 0;
-       private int sentJobs = 0;
-       private int completedJobs = 0;
-       private int errors = 0;
-
-       public GraphMonitorNode(String id, ProcessorReport processorReport,
-                       GraphController graphController) {
-               this.processorReport = processorReport;
-               this.graphController = graphController;
-               processorId = id;
-       }
-
-       /**
-        * Updates the <code>Graph</code> when changes to properties are 
detected.
-        */
-       public void update() {
-               synchronized (graphController) {
-                       boolean queueSizeChanged = false;
-                       boolean sentJobsChanged = false;
-                       boolean completedJobsChanged = false;
-                       boolean errorsChanged = false;
-
-                       int newQueueSize = processorReport.getJobsQueued();
-                       newQueueSize = newQueueSize == -1 ? 0 : newQueueSize;
-                       if (queueSize != newQueueSize) {
-                               queueSize = newQueueSize;
-                               queueSizeChanged = true;
-                       }
-
-                       int newSentJobs = processorReport.getJobsStarted();
-                       if (sentJobs != newSentJobs) {
-                               sentJobs = newSentJobs;
-                               sentJobsChanged = true;
-                       }
-
-                       int newCompletedJobs = 
processorReport.getJobsCompleted();
-                       if (completedJobs != newCompletedJobs) {
-                               completedJobs = newCompletedJobs;
-                               completedJobsChanged = true;
-                       }
-
-                       int newErrors = 
processorReport.getJobsCompletedWithErrors();
-                       if (errors != newErrors) {
-                               errors = newErrors;
-                               errorsChanged = true;
-                       }
-
-                       if (queueSizeChanged || sentJobsChanged || 
completedJobsChanged
-                                       || errorsChanged) {
-                               if (completedJobsChanged)
-                                       
graphController.setIteration(processorId, completedJobs);
-                               if (completedJobs > 0)
-                                       
graphController.setNodeCompleted(processorId,
-                                                       (completedJobs / 
(float) (sentJobs + queueSize)));
-                               if (sentJobsChanged) {
-                                       // 
graphController.setEdgeActive(processorId, true);
-                               }
-                               if (errorsChanged && errors > 0)
-                                       graphController.setErrors(processorId, 
errors);
-                       }
-               }
-       }
-
-       public void redraw() {
-               synchronized (graphController) {
-                       queueSize = max(processorReport.getJobsQueued(), 0);
-                       sentJobs = processorReport.getJobsStarted();
-                       completedJobs = processorReport.getJobsCompleted();
-                       errors = processorReport.getJobsCompletedWithErrors();
-
-                       graphController.setIteration(processorId, 
completedJobs);
-                       if (completedJobs > 0)
-                               graphController.setNodeCompleted(processorId,
-                                               (completedJobs / (float) 
(sentJobs + queueSize)));
-                       if (errors > 0)
-                               graphController.setErrors(processorId, errors);
-               }
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/graph/MonitorGraphComponent.java
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/graph/MonitorGraphComponent.java
 
b/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/graph/MonitorGraphComponent.java
deleted file mode 100644
index 0be66ff..0000000
--- 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/graph/MonitorGraphComponent.java
+++ /dev/null
@@ -1,378 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester
- *
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- 
******************************************************************************/
-package net.sf.taverna.t2.workbench.views.monitor.graph;
-
-import static java.awt.BorderLayout.CENTER;
-import static java.awt.BorderLayout.NORTH;
-import static javax.swing.Action.SHORT_DESCRIPTION;
-import static javax.swing.Action.SMALL_ICON;
-import static javax.swing.BoxLayout.PAGE_AXIS;
-import static net.sf.taverna.t2.workbench.icons.WorkbenchIcons.refreshIcon;
-import static net.sf.taverna.t2.workbench.icons.WorkbenchIcons.zoomInIcon;
-import static net.sf.taverna.t2.workbench.icons.WorkbenchIcons.zoomOutIcon;
-import static org.apache.batik.swing.svg.AbstractJSVGComponent.ALWAYS_DYNAMIC;
-
-import java.awt.BorderLayout;
-import java.awt.CardLayout;
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.swing.Action;
-import javax.swing.BoxLayout;
-import javax.swing.JButton;
-import javax.swing.JLabel;
-import javax.swing.JPanel;
-import javax.swing.JToolBar;
-import javax.swing.Timer;
-import javax.swing.border.EmptyBorder;
-
-import net.sf.taverna.t2.workbench.configuration.colour.ColourManager;
-import 
net.sf.taverna.t2.workbench.configuration.workbench.WorkbenchConfiguration;
-import net.sf.taverna.t2.workbench.models.graph.GraphElement;
-import net.sf.taverna.t2.workbench.models.graph.GraphEventManager;
-import net.sf.taverna.t2.workbench.models.graph.svg.SVGGraphController;
-import net.sf.taverna.t2.workbench.selection.DataflowSelectionModel;
-import net.sf.taverna.t2.workbench.selection.SelectionManager;
-import net.sf.taverna.t2.workbench.ui.Updatable;
-import net.sf.taverna.t2.workbench.views.graph.AutoScrollInteractor;
-import net.sf.taverna.t2.workbench.views.graph.menu.ResetDiagramAction;
-import net.sf.taverna.t2.workbench.views.graph.menu.ZoomInAction;
-import net.sf.taverna.t2.workbench.views.graph.menu.ZoomOutAction;
-
-import org.apache.batik.swing.JSVGCanvas;
-import org.apache.batik.swing.JSVGScrollPane;
-import org.apache.batik.swing.gvt.GVTTreeRendererAdapter;
-import org.apache.batik.swing.gvt.GVTTreeRendererEvent;
-import org.apache.log4j.Logger;
-
-import uk.org.taverna.platform.run.api.InvalidRunIdException;
-import uk.org.taverna.platform.run.api.RunService;
-import uk.org.taverna.scufl2.api.core.Processor;
-import uk.org.taverna.scufl2.api.core.Workflow;
-import uk.org.taverna.scufl2.api.port.WorkflowPort;
-import uk.org.taverna.scufl2.api.profiles.Profile;
-
-/**
- * Use to display the graph for fresh workflow runs and allow the user to click
- * on processors to see the intermediate results for processors pulled from
- * provenance.
- */
-@SuppressWarnings("serial")
-public class MonitorGraphComponent extends JPanel implements Updatable {
-       private static Logger logger = 
Logger.getLogger(MonitorGraphComponent.class);
-
-       private SVGGraphController graphController;
-       private JPanel diagramPanel;
-       private GraphMonitor graphMonitor;
-
-       private Map<String, SVGGraphController> graphControllerMap = new 
HashMap<>();
-       private Map<String, GraphMonitor> graphMonitorMap = new HashMap<>();
-       private Map<String, JPanel> diagramPanelMap = new HashMap<>();
-       private Map<String, Action[]> diagramActionsMap = new HashMap<>();
-
-       @SuppressWarnings("unused")
-       private Timer timer;
-       private CardLayout cardLayout;
-       @SuppressWarnings("unused")
-       private JLabel statusLabel;
-
-       private final RunService runService;
-       private final ColourManager colourManager;
-       private final WorkbenchConfiguration workbenchConfiguration;
-       private final SelectionManager selectionManager;
-
-       public MonitorGraphComponent(RunService runService, ColourManager 
colourManager,
-                       WorkbenchConfiguration workbenchConfiguration, 
SelectionManager selectionManager) {
-               this.runService = runService;
-               this.colourManager = colourManager;
-               this.workbenchConfiguration = workbenchConfiguration;
-               this.selectionManager = selectionManager;
-
-               cardLayout = new CardLayout();
-               setLayout(cardLayout);
-
-//             ActionListener taskPerformer = new ActionListener() {
-//                     public void actionPerformed(ActionEvent evt) {
-//                             if (graphController != null) {
-//                                     graphController.redraw();
-//                                     graphMonitor.redraw();
-//                             }
-//                             timer.stop();
-//                     }
-//             };
-//             timer = new Timer(100, taskPerformer);
-//
-//             addComponentListener(new ComponentAdapter() {
-//                     public void componentResized(ComponentEvent e) {
-//                             if (timer.isRunning()) {
-//                                     timer.restart();
-//                             } else {
-//                                     timer.start();
-//                             }
-//                     }
-//             });
-
-       }
-
-       @Override
-       protected void finalize() throws Throwable {
-               if (graphController != null)
-                       graphController.shutdown();
-       }
-
-       @Override
-       public void update() {
-               if (graphMonitor != null)
-                       graphMonitor.update();
-       }
-
-       private JPanel createDiagramPanel(String workflowRun) {
-               final JPanel diagramPanel = new JPanel(new BorderLayout());
-
-               try {
-                       Workflow workflow = runService.getWorkflow(workflowRun);
-                       Profile profile = runService.getProfile(workflowRun);
-
-                       // get the default diagram settings
-                       // Alignment alignment = 
Alignment.valueOf(graphViewConfiguration
-                       // .getProperty(GraphViewConfiguration.ALIGNMENT));
-                       // PortStyle portStyle = 
PortStyle.valueOf(graphViewConfiguration
-                       // .getProperty(GraphViewConfiguration.PORT_STYLE));
-
-                       // create an SVG canvas
-                       final JSVGCanvas svgCanvas = new JSVGCanvas(null, true, 
false);
-                       svgCanvas.setEnableZoomInteractor(false);
-                       svgCanvas.setEnableRotateInteractor(false);
-                       svgCanvas.setDocumentState(ALWAYS_DYNAMIC);
-
-                       AutoScrollInteractor asi = new 
AutoScrollInteractor(svgCanvas);
-                       svgCanvas.addMouseListener(asi);
-                       svgCanvas.addMouseMotionListener(asi);
-
-                       final JSVGScrollPane svgScrollPane = new 
MySvgScrollPane(svgCanvas);
-
-                       GVTTreeRendererAdapter gvtTreeRendererAdapter = new 
GVTTreeRendererAdapter() {
-                               @Override
-                               public void 
gvtRenderingCompleted(GVTTreeRendererEvent e) {
-                                       logger.info("Rendered svg");
-//                                     svgScrollPane.reset();
-//                                     diagramPanel.revalidate();
-                               }
-                       };
-                       
svgCanvas.addGVTTreeRendererListener(gvtTreeRendererAdapter);
-
-                       // create a graph controller
-                       SVGGraphController svgGraphController = new 
SVGGraphController(
-                                       workflow, profile, true, svgCanvas, 
null, null,
-                                       colourManager, workbenchConfiguration);
-                       DataflowSelectionModel selectionModel = selectionManager
-                                       
.getWorkflowRunSelectionModel(workflowRun);
-                       
svgGraphController.setDataflowSelectionModel(selectionModel);
-                       svgGraphController
-                                       .setGraphEventManager(new 
MonitorGraphEventManager(
-                                                       selectionModel));
-
-                       graphControllerMap.put(workflowRun, svgGraphController);
-
-                       // Toolbar with actions related to graph
-                       JToolBar graphActionsToolbar = 
graphActionsToolbar(workflowRun, svgCanvas);
-                       graphActionsToolbar.setAlignmentX(LEFT_ALIGNMENT);
-                       graphActionsToolbar.setFloatable(false);
-
-                       // Panel to hold the toolbars
-                       JPanel toolbarPanel = new JPanel();
-                       toolbarPanel.setLayout(new BoxLayout(toolbarPanel, 
PAGE_AXIS));
-                       toolbarPanel.add(graphActionsToolbar);
-
-                       diagramPanel.add(toolbarPanel, NORTH);
-                       diagramPanel.add(svgScrollPane, CENTER);
-
-                       // JTextField workflowHierarchy = new 
JTextField(workflow.getName());
-                       // diagramPanel.add(workflowHierarchy, 
BorderLayout.SOUTH);
-               } catch (InvalidRunIdException e) {
-                       diagramPanel.add(new JLabel("Workflow run ID invalid", 
JLabel.CENTER),
-                                       CENTER);
-               }
-               return diagramPanel;
-       }
-
-       protected JToolBar graphActionsToolbar(String workflowRun, JSVGCanvas 
svgCanvas) {
-               JToolBar toolBar = new JToolBar();
-               toolBar.setAlignmentX(LEFT_ALIGNMENT);
-               toolBar.setFloatable(false);
-
-               JButton resetDiagramButton = new JButton();
-               resetDiagramButton.setBorder(new EmptyBorder(0, 2, 0, 2));
-               JButton zoomInButton = new JButton();
-               zoomInButton.setBorder(new EmptyBorder(0, 2, 0, 2));
-               JButton zoomOutButton = new JButton();
-               zoomOutButton.setBorder(new EmptyBorder(0, 2, 0, 2));
-
-               Action resetDiagramAction = svgCanvas.new 
ResetTransformAction();
-               ResetDiagramAction.setResultsAction(resetDiagramAction);
-               resetDiagramAction.putValue(SHORT_DESCRIPTION, "Reset Diagram");
-               resetDiagramAction.putValue(SMALL_ICON, refreshIcon);
-               resetDiagramButton.setAction(resetDiagramAction);
-
-               Action zoomInAction = svgCanvas.new ZoomAction(1.2);
-               ZoomInAction.setResultsAction(zoomInAction);
-               zoomInAction.putValue(SHORT_DESCRIPTION, "Zoom In");
-               zoomInAction.putValue(SMALL_ICON, zoomInIcon);
-               zoomInButton.setAction(zoomInAction);
-
-               Action zoomOutAction = svgCanvas.new ZoomAction(1 / 1.2);
-               ZoomOutAction.setResultsAction(zoomOutAction);
-               zoomOutAction.putValue(SHORT_DESCRIPTION, "Zoom Out");
-               zoomOutAction.putValue(SMALL_ICON, zoomOutIcon);
-               zoomOutButton.setAction(zoomOutAction);
-
-               // diagramActionsMap.put(workflowRun, new Action[] { 
resetDiagramAction, zoomInAction,
-               // zoomOutAction });
-
-               toolBar.add(resetDiagramButton);
-               toolBar.add(zoomInButton);
-               toolBar.add(zoomOutButton);
-
-               return toolBar;
-       }
-
-       // public void setStatus(Status status) {
-       // switch (status) {
-       // case RUNNING :
-       // statusLabel.setText("Workflow running");
-       // statusLabel.setIcon(WorkbenchIcons.workingIcon);
-       // if (workflow != null){ // should not be null really, workflow should 
be set before this
-       // method is called
-       // workflow.setIsRunning(true);
-       // }
-       // break;
-       // case FINISHED :
-       // statusLabel.setText("Workflow finished");
-       // statusLabel.setIcon(WorkbenchIcons.tickIcon);
-       // if (workflow != null){// should not be null really, workflow should 
be set before this method
-       // is called
-       // workflow.setIsRunning(false);
-       // }
-       // break;
-       // }
-       // }
-
-       public void setWorkflowRun(String workflowRun) throws 
InvalidRunIdException {
-               if (workflowRun != null) {
-                       if (!diagramPanelMap.containsKey(workflowRun))
-                               addWorkflowRun(workflowRun);
-                       graphController = graphControllerMap.get(workflowRun);
-                       diagramPanel = diagramPanelMap.get(workflowRun);
-                       graphMonitor = graphMonitorMap.get(workflowRun);
-                       Action[] actions = diagramActionsMap.get(workflowRun);
-                       if (actions != null && actions.length == 3) {
-                               ResetDiagramAction.setDesignAction(actions[0]);
-                               ZoomInAction.setDesignAction(actions[1]);
-                               ZoomOutAction.setDesignAction(actions[2]);
-                       }
-                       cardLayout.show(this, 
String.valueOf(diagramPanel.hashCode()));
-                       // graphController.redraw();
-               }
-       }
-
-       public void addWorkflowRun(String workflowRun) throws 
InvalidRunIdException {
-               JPanel newDiagramPanel = createDiagramPanel(workflowRun);
-               add(newDiagramPanel, 
String.valueOf(newDiagramPanel.hashCode()));
-               diagramPanelMap.put(workflowRun, newDiagramPanel);
-               graphMonitorMap.put(workflowRun,
-                               new 
GraphMonitor(graphControllerMap.get(workflowRun),
-                                               
runService.getWorkflowReport(workflowRun)));
-       }
-
-       public void removeWorkflowRun(String workflowRun) {
-               JPanel removedDiagramPanel = 
diagramPanelMap.remove(workflowRun);
-               if (removedDiagramPanel != null)
-                       remove(removedDiagramPanel);
-               SVGGraphController removedController = graphControllerMap
-                               .remove(workflowRun);
-               if (removedController != null)
-                       removedController.shutdown();
-               graphMonitorMap.remove(workflowRun);
-               diagramActionsMap.remove(workflowRun);
-       }
-
-       private class MonitorGraphEventManager implements GraphEventManager {
-               private final DataflowSelectionModel selectionModel;
-
-               public MonitorGraphEventManager(DataflowSelectionModel 
selectionModel) {
-                       this.selectionModel = selectionModel;
-               }
-
-               @Override
-               public void mouseClicked(final GraphElement graphElement, short 
button,
-                               boolean altKey, boolean ctrlKey, boolean 
metaKey, int x, int y,
-                               int screenX, int screenY) {
-                       Object workflowObject = graphElement.getWorkflowBean();
-                       if (workflowObject instanceof Processor
-                                       || workflowObject instanceof 
WorkflowPort)
-                               selectionModel.addSelection(workflowObject);
-               }
-
-               @Override
-               public void mouseDown(GraphElement graphElement, short button,
-                               boolean altKey, boolean ctrlKey, boolean 
metaKey, int x, int y,
-                               int screenX, int screenY) {
-               }
-
-               @Override
-               public void mouseMoved(GraphElement graphElement, short button,
-                               boolean altKey, boolean ctrlKey, boolean 
metaKey, int x, int y,
-                               int screenX, int screenY) {
-               }
-
-               @Override
-               public void mouseUp(GraphElement graphElement, short button,
-                               boolean altKey, boolean ctrlKey, boolean 
metaKey, int x, int y,
-                               int screenX, int screenY) {
-               }
-
-               @Override
-               public void mouseOut(GraphElement graphElement, short button,
-                               boolean altKey, boolean ctrlKey, boolean 
metaKey, int x, int y,
-                               int screenX, int screenY) {
-               }
-
-               @Override
-               public void mouseOver(GraphElement graphElement, short button,
-                               boolean altKey, boolean ctrlKey, boolean 
metaKey, int x, int y,
-                               int screenX, int screenY) {
-               }
-       }
-
-       private class MySvgScrollPane extends JSVGScrollPane {
-               private static final long serialVersionUID = 
6890422410714378543L;
-
-               public MySvgScrollPane(JSVGCanvas canvas) {
-                       super(canvas);
-               }
-
-               @Override
-               public void reset() {
-                       super.resizeScrollBars();
-                       super.reset();
-               }
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/TableMonitorComponent.java
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/TableMonitorComponent.java
 
b/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/TableMonitorComponent.java
deleted file mode 100644
index bb82421..0000000
--- 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/TableMonitorComponent.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2013 The University of Manchester
- *
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- 
******************************************************************************/
-package net.sf.taverna.t2.workbench.views.monitor.progressreport;
-
-import java.awt.CardLayout;
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.swing.JPanel;
-import javax.swing.JScrollPane;
-
-import net.sf.taverna.t2.workbench.activityicons.ActivityIconManager;
-import net.sf.taverna.t2.workbench.selection.SelectionManager;
-import net.sf.taverna.t2.workbench.ui.Updatable;
-import uk.org.taverna.platform.report.WorkflowReport;
-import uk.org.taverna.platform.run.api.InvalidRunIdException;
-import uk.org.taverna.platform.run.api.RunService;
-
-/**
- * @author David Withers
- */
-@SuppressWarnings("serial")
-public class TableMonitorComponent extends JPanel implements Updatable {
-       private Map<String, WorkflowRunProgressTreeTable> tableMap = new 
HashMap<>();
-       private Map<String, WorkflowRunProgressTreeTableModel> tableModelMap = 
new HashMap<>();
-       private WorkflowRunProgressTreeTable table;
-       private WorkflowRunProgressTreeTableModel tableModel;
-       private CardLayout cardLayout;
-
-       private final RunService runService;
-       private final SelectionManager selectionManager;
-       private final ActivityIconManager activityIconManager;
-
-       public TableMonitorComponent(RunService runService,
-                       SelectionManager selectionManager,
-                       ActivityIconManager activityIconManager) {
-               this.runService = runService;
-               this.selectionManager = selectionManager;
-               this.activityIconManager = activityIconManager;
-
-               cardLayout = new CardLayout();
-               setLayout(cardLayout);
-       }
-
-       public void setWorkflowRun(String workflowRun) throws 
InvalidRunIdException {
-               if (workflowRun != null) {
-                       if (!tableMap.containsKey(workflowRun))
-                               addWorkflowRun(workflowRun);
-                       table = tableMap.get(workflowRun);
-                       tableModel = tableModelMap.get(workflowRun);
-                       cardLayout.show(this, String.valueOf(table.hashCode()));
-               }
-       }
-
-       public void addWorkflowRun(String workflowRun) throws 
InvalidRunIdException {
-               WorkflowReport workflowReport = runService
-                               .getWorkflowReport(workflowRun);
-               WorkflowRunProgressTreeTableModel newTableModel = new 
WorkflowRunProgressTreeTableModel(
-                               workflowReport);
-               WorkflowRunProgressTreeTable newTable = new 
WorkflowRunProgressTreeTable(
-                               newTableModel, activityIconManager,
-                               
selectionManager.getWorkflowRunSelectionModel(workflowRun));
-
-               add(new JScrollPane(newTable), 
String.valueOf(newTable.hashCode()));
-               tableMap.put(workflowRun, newTable);
-               tableModelMap.put(workflowRun, newTableModel);
-       }
-
-       public void removeWorkflowRun(String workflowRun) {
-               WorkflowRunProgressTreeTable removedTable = tableMap
-                               .remove(workflowRun);
-               if (removedTable != null)
-                       remove(removedTable);
-               tableModelMap.remove(workflowRun);
-       }
-
-       @Override
-       public void update() {
-               if (tableModel != null)
-                       tableModel.update();
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/WorkflowRunProgressTreeCellRenderer.java
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/WorkflowRunProgressTreeCellRenderer.java
 
b/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/WorkflowRunProgressTreeCellRenderer.java
deleted file mode 100644
index 4c4d6ad..0000000
--- 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/WorkflowRunProgressTreeCellRenderer.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester
- *
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- 
******************************************************************************/
-package net.sf.taverna.t2.workbench.views.monitor.progressreport;
-
-import static 
net.sf.taverna.t2.workbench.icons.WorkbenchIcons.workflowExplorerIcon;
-
-import java.awt.Component;
-import java.util.Set;
-
-import javax.swing.Icon;
-import javax.swing.JTree;
-import javax.swing.tree.DefaultMutableTreeNode;
-import javax.swing.tree.DefaultTreeCellRenderer;
-
-import net.sf.taverna.t2.workbench.activityicons.ActivityIconManager;
-import uk.org.taverna.platform.report.ActivityReport;
-import uk.org.taverna.platform.report.ProcessorReport;
-import uk.org.taverna.platform.report.WorkflowReport;
-
-/**
- * Cell renderer for Workflow Explorer tree.
- *
- * @author Alex Nenadic
- */
-@SuppressWarnings("serial")
-public class WorkflowRunProgressTreeCellRenderer extends 
DefaultTreeCellRenderer {
-       private ActivityIconManager activityIconManager;
-
-       public WorkflowRunProgressTreeCellRenderer(ActivityIconManager 
activityIconManager) {
-               this.activityIconManager = activityIconManager;
-       }
-
-       @Override
-       public Component getTreeCellRendererComponent(JTree tree, Object value,
-                       boolean sel, boolean expanded, boolean leaf, int row,
-                       boolean hasFocus) {
-               Component result = super.getTreeCellRendererComponent(tree, 
value, sel,
-                               expanded, leaf, row, hasFocus);
-
-               Object userObject = ((DefaultMutableTreeNode) 
value).getUserObject();
-
-               WorkflowRunProgressTreeCellRenderer renderer = 
(WorkflowRunProgressTreeCellRenderer) result;
-
-               if (userObject instanceof WorkflowReport) // the root node
-                       renderWorkflowReport(renderer, (WorkflowReport) 
userObject);
-               else if (userObject instanceof ProcessorReport)
-                       renderProcessorReport(renderer, (ProcessorReport) 
userObject);
-
-               return result;
-       }
-
-       private void renderWorkflowReport(
-                       WorkflowRunProgressTreeCellRenderer renderer,
-                       WorkflowReport workflowReport) {
-               renderer.setIcon(workflowExplorerIcon);
-               renderer.setText(workflowReport.getSubject().getName());
-       }
-
-       private void renderProcessorReport(WorkflowRunProgressTreeCellRenderer 
renderer,
-                       ProcessorReport processorReport) {
-               /*
-                * Get the activity associated with the processor - currently 
only
-                * one gets displayed
-                */
-               Set<ActivityReport> activityReports = processorReport
-                               .getActivityReports();
-               String text = processorReport.getSubject().getName();
-               if (!activityReports.isEmpty()) {
-                       ActivityReport activityReport = 
activityReports.iterator()
-                                       .next();
-                       Icon icon = 
activityIconManager.iconForActivity(activityReport
-                                       .getSubject());
-                       if (icon != null)
-                               renderer.setIcon(icon);
-               }
-               renderer.setText(text);
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/WorkflowRunProgressTreeTable.java
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/WorkflowRunProgressTreeTable.java
 
b/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/WorkflowRunProgressTreeTable.java
deleted file mode 100644
index f1f031c..0000000
--- 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/WorkflowRunProgressTreeTable.java
+++ /dev/null
@@ -1,112 +0,0 @@
-package net.sf.taverna.t2.workbench.views.monitor.progressreport;
-
-import javax.swing.ListSelectionModel;
-import javax.swing.event.ListSelectionEvent;
-import javax.swing.event.ListSelectionListener;
-import javax.swing.tree.DefaultMutableTreeNode;
-import javax.swing.tree.TreeNode;
-import javax.swing.tree.TreePath;
-
-import net.sf.taverna.t2.lang.observer.Observable;
-import net.sf.taverna.t2.lang.observer.SwingAwareObserver;
-import net.sf.taverna.t2.lang.ui.treetable.JTreeTable;
-import net.sf.taverna.t2.workbench.activityicons.ActivityIconManager;
-import net.sf.taverna.t2.workbench.selection.DataflowSelectionModel;
-import net.sf.taverna.t2.workbench.selection.events.DataflowSelectionMessage;
-import uk.org.taverna.platform.report.StatusReport;
-import uk.org.taverna.scufl2.api.core.Processor;
-import uk.org.taverna.scufl2.api.core.Workflow;
-import uk.org.taverna.scufl2.api.port.WorkflowPort;
-
-@SuppressWarnings("serial")
-public class WorkflowRunProgressTreeTable extends JTreeTable {
-       private final WorkflowRunProgressTreeTableModel treeTableModel;
-       private final DataflowSelectionModel selectionModel;
-       private final DataflowSelectionObserver dataflowSelectionObserver;
-
-       public WorkflowRunProgressTreeTable(
-                       WorkflowRunProgressTreeTableModel treeTableModel,
-                       ActivityIconManager activityIconManager,
-                       DataflowSelectionModel selectionModel) {
-               super(treeTableModel);
-
-               this.treeTableModel = treeTableModel;
-               this.selectionModel = selectionModel;
-
-               this.tree.setCellRenderer(new 
WorkflowRunProgressTreeCellRenderer(
-                               activityIconManager));
-               this.tree.setEditable(false);
-               this.tree.setExpandsSelectedPaths(true);
-               this.tree.setDragEnabled(false);
-               this.tree.setScrollsOnExpand(false);
-
-               getTableHeader().setReorderingAllowed(false);
-               getSelectionModel().setSelectionMode(
-                               ListSelectionModel.SINGLE_SELECTION);
-               getSelectionModel().addListSelectionListener(
-                               new TableSelectionListener());
-
-               dataflowSelectionObserver = new DataflowSelectionObserver();
-               selectionModel.addObserver(dataflowSelectionObserver);
-       }
-
-       @Override
-       protected void finalize() throws Throwable {
-               selectionModel.removeObserver(dataflowSelectionObserver);
-       }
-
-       /**
-        * Return object in the tree part of this JTreeTable that corresponds to
-        * this row. It will either be a workflow (tree root) or a processor.
-        */
-       public Object getTreeObjectForRow(int row) {
-               TreePath path = tree.getPathForRow(row);
-               if (path == null)
-                       return null;
-               return ((DefaultMutableTreeNode) path.getLastPathComponent())
-                               .getUserObject();
-       }
-
-       public void setSelectedRowForObject(Object workflowObject) {
-               // Find the row for the object in the tree
-               DefaultMutableTreeNode node = 
treeTableModel.getNodeForObject(workflowObject);
-               if (node != null) {
-                       TreeNode[] path = node.getPath();
-                       tree.scrollPathToVisible(new TreePath(path));
-                       int row = tree.getRowForPath(new TreePath(path));
-                       if (row >= 0)
-                               // Set selected row on the table
-                               setRowSelectionInterval(row, row);
-               }
-       }
-
-       private class DataflowSelectionObserver extends 
SwingAwareObserver<DataflowSelectionMessage> {
-               @Override
-               public void notifySwing(Observable<DataflowSelectionMessage> 
sender,
-                               DataflowSelectionMessage message) {
-                       for (Object selection : selectionModel.getSelection()) {
-                               if (selection instanceof Processor
-                                               || selection instanceof 
Workflow)
-                                       setSelectedRowForObject(selection);
-                               else if (selection instanceof WorkflowPort)
-                                       setSelectedRowForObject(((WorkflowPort) 
selection)
-                                                       .getParent());
-                       }
-               }
-       }
-
-       private class TableSelectionListener implements ListSelectionListener {
-               @Override
-               public void valueChanged(ListSelectionEvent e) {
-                       if (e.getValueIsAdjusting())
-                               return;
-                       int selectedRow = getSelectedRow();
-                       if (selectedRow < 0)
-                               return;
-                       Object selection = getTreeObjectForRow(selectedRow);
-                       if (selection instanceof StatusReport)
-                               selectionModel.addSelection(((StatusReport<?, 
?>) selection)
-                                               .getSubject());
-               }
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/WorkflowRunProgressTreeTableModel.java
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/WorkflowRunProgressTreeTableModel.java
 
b/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/WorkflowRunProgressTreeTableModel.java
deleted file mode 100644
index 1e2e6e9..0000000
--- 
a/taverna-workbench-monitor-view/src/main/java/net/sf/taverna/t2/workbench/views/monitor/progressreport/WorkflowRunProgressTreeTableModel.java
+++ /dev/null
@@ -1,279 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester
- *
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- 
******************************************************************************/
-package net.sf.taverna.t2.workbench.views.monitor.progressreport;
-
-import static java.util.Collections.nCopies;
-import static 
net.sf.taverna.t2.workbench.views.monitor.progressreport.WorkflowRunProgressTreeTableModel.Column.values;
-import static 
net.sf.taverna.t2.workbench.views.results.processor.ProcessorResultsComponent.formatMilliseconds;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.SortedSet;
-
-import javax.swing.tree.DefaultMutableTreeNode;
-import javax.swing.tree.TreeNode;
-
-import net.sf.taverna.t2.lang.ui.treetable.AbstractTreeTableModel;
-import net.sf.taverna.t2.lang.ui.treetable.TreeTableModel;
-import uk.org.taverna.platform.report.ActivityReport;
-import uk.org.taverna.platform.report.Invocation;
-import uk.org.taverna.platform.report.ProcessorReport;
-import uk.org.taverna.platform.report.State;
-import uk.org.taverna.platform.report.StatusReport;
-import uk.org.taverna.platform.report.WorkflowReport;
-
-/**
- * A TreeTableModel used to display the progress of a workfow run. The workflow
- * and its processors (some of which may be nested) are represented as a tree,
- * where their properties, such as status, start and finish times, number of
- * iterations, etc. are represented as table columns.
- * 
- * @author Alex Nenadic
- * @author Stian Soiland-Reyes
- * @author David Withers
- */
-public class WorkflowRunProgressTreeTableModel extends AbstractTreeTableModel {
-       public static final String NAME = "Name";
-       public static final String STATUS = "Status";
-       public static final String AVERAGE_ITERATION_TIME = "Average time per 
iteration";
-       public static final String ITERATIONS = "Queued iterations";
-       public static final String ITERATIONS_DONE = "Completed iterations";
-       public static final String ITERATIONS_FAILED = "Iterations with errors";
-
-       public enum Column {
-               NAME("Name", TreeTableModel.class), STATUS("Status"), 
ITERATIONS_QUEUED(
-                               "Queued iterations"), 
ITERATIONS_DONE("Iterations done"), ITERATIONS_FAILED(
-                               "Iterations w/errors"), AVERAGE_ITERATION_TIME(
-                               "Average time/iteration"), START_TIME(
-                               "First iteration started", Date.class), 
FINISH_TIME(
-                               "Last iteration ended", Date.class);
-
-               private final String label;
-               private final Class<?> columnClass;
-
-               Column(String label) {
-                       this(label, String.class);
-               }
-
-               Column(String label, Class<?> columnClass) {
-                       this.label = label;
-                       this.columnClass = columnClass;
-               }
-
-               public Class<?> getColumnClass() {
-                       return columnClass;
-               }
-
-               public String getLabel() {
-                       return label;
-               }
-
-               @Override
-               public String toString() {
-                       return label;
-               }
-       }
-
-       // Table data (maps workflow element nodes to column data associated 
with them)
-       private final Map<DefaultMutableTreeNode, List<Object>> data = new 
HashMap<>();
-       private final Map<Object, DefaultMutableTreeNode> nodeForObject = new 
HashMap<>();
-       private final DefaultMutableTreeNode rootNode;
-
-       public WorkflowRunProgressTreeTableModel(WorkflowReport workflowReport) 
{
-               super(new DefaultMutableTreeNode(workflowReport));
-               rootNode = (DefaultMutableTreeNode) this.getRoot();
-               createTree(workflowReport, rootNode);
-       }
-
-       private void createTree(WorkflowReport workflowReport, 
DefaultMutableTreeNode root) {
-               // If this is the root of the tree rather than a root of the 
nested sub-tree
-               if (root.equals(rootNode)) {
-                       List<Object> columnData = new 
ArrayList<>(nCopies(values().length,
-                                       null));
-                       setColumnValues(workflowReport, columnData);
-                       nodeForObject.put(workflowReport, root);
-                       nodeForObject.put(workflowReport.getSubject(), root);
-                       data.put(root, columnData);
-               }
-               // One row for each processor
-               for (ProcessorReport processorReport : 
workflowReport.getProcessorReports()) {
-                       List<Object> columnData = new 
ArrayList<>(nCopies(values().length,
-                                       null));
-                       DefaultMutableTreeNode processorNode = new 
DefaultMutableTreeNode(
-                                       processorReport);
-                       setColumnValues(processorReport, columnData);
-                       nodeForObject.put(processorReport, processorNode);
-                       nodeForObject.put(processorReport.getSubject(), 
processorNode);
-                       data.put(processorNode, columnData);
-                       root.add(processorNode);
-
-                       Set<ActivityReport> activityReports = 
processorReport.getActivityReports();
-                       if (activityReports.size() == 1) {
-                               WorkflowReport nestedWorkflowReport = 
activityReports.iterator().next()
-                                               .getNestedWorkflowReport();
-                               if (nestedWorkflowReport != null)
-                                       // create sub-tree
-                                       createTree(nestedWorkflowReport, 
processorNode);
-                       }
-               }
-       }
-
-       public DefaultMutableTreeNode getNodeForObject(Object workflowObject) {
-               return nodeForObject.get(workflowObject);
-       }
-
-       public void setColumnValues(StatusReport<?, ?> report, List<Object> 
columns) {
-               if (report instanceof WorkflowReport) {
-                       WorkflowReport workflowReport = (WorkflowReport) report;
-
-                       State state = workflowReport.getState();
-                       Date startTime = workflowReport.getStartedDate();
-                       Date finishTime = workflowReport.getCompletedDate();
-
-                       columns.set(Column.NAME.ordinal(), 
workflowReport.getSubject().getName());
-                       columns.set(Column.STATUS.ordinal(), state);
-                       columns.set(Column.ITERATIONS_DONE.ordinal(), "-");
-                       columns.set(Column.ITERATIONS_FAILED.ordinal(), "-");
-                       columns.set(Column.ITERATIONS_QUEUED.ordinal(), "-");
-                       columns.set(Column.START_TIME.ordinal(), startTime);
-                       columns.set(Column.FINISH_TIME.ordinal(), finishTime);
-                       if (startTime != null && finishTime != null)
-                               
columns.set(Column.AVERAGE_ITERATION_TIME.ordinal(),
-                                               
formatMilliseconds(finishTime.getTime() - finishTime.getTime()));
-                       else
-                               
columns.set(Column.AVERAGE_ITERATION_TIME.ordinal(), "-");
-               } else if (report instanceof ProcessorReport) {
-                       ProcessorReport processorReport = (ProcessorReport) 
report;
-
-                       State state = processorReport.getState();
-                       SortedSet<Invocation> invocations = processorReport
-                                       .getInvocations();
-
-                       columns.set(Column.NAME.ordinal(), 
processorReport.getSubject()
-                                       .getName());
-                       columns.set(Column.STATUS.ordinal(), state);
-                       columns.set(Column.ITERATIONS_QUEUED.ordinal(),
-                                       processorReport.getJobsQueued());
-                       columns.set(Column.ITERATIONS_DONE.ordinal(),
-                                       processorReport.getJobsCompleted());
-                       columns.set(Column.ITERATIONS_FAILED.ordinal(),
-                                       
processorReport.getJobsCompletedWithErrors());
-
-                       if (invocations.isEmpty()) {
-                               columns.set(Column.START_TIME.ordinal(), null);
-                               columns.set(Column.FINISH_TIME.ordinal(), null);
-                               
columns.set(Column.AVERAGE_ITERATION_TIME.ordinal(), null); // iteration
-                       } else {
-                               Date earliestStartTime = 
invocations.first().getStartedDate();
-                               Date latestFinishTime = 
invocations.first().getCompletedDate();
-                               long totalInvocationTime = 0;
-                               int finishedInvocations = 0;
-
-                               for (Invocation invocation : invocations) {
-                                       // Get the earliest start time of all 
invocations
-                                       Date startTime = 
invocation.getStartedDate();
-                                       if (startTime != null) {
-                                               if 
(startTime.before(earliestStartTime))
-                                                       earliestStartTime = 
startTime;
-                                               // Get the latest finish time 
of all invocations
-                                               Date finishTime = 
invocation.getCompletedDate();
-                                               if (finishTime != null) {
-                                                       if 
(finishTime.after(latestFinishTime)) {
-                                                               
latestFinishTime = finishTime;
-                                                               
totalInvocationTime += finishTime.getTime() - startTime.getTime();
-                                                       }
-                                                       finishedInvocations++;
-                                               }
-                                       }
-                               }
-
-                               columns.set(Column.START_TIME.ordinal(), 
earliestStartTime);
-                               columns.set(Column.FINISH_TIME.ordinal(), 
latestFinishTime);
-                               if (finishedInvocations > 0) {
-                                       long averageTime = totalInvocationTime 
/ finishedInvocations;
-                                       
columns.set(Column.AVERAGE_ITERATION_TIME.ordinal(),
-                                                       
formatMilliseconds(averageTime));
-                               } else
-                                       
columns.set(Column.AVERAGE_ITERATION_TIME.ordinal(), "-");
-                       }
-               }
-       }
-
-       public void update() {
-               update(rootNode);
-               fireTreeNodesChanged(rootNode, rootNode.getPath(), null, null);
-       }
-
-       private void update(DefaultMutableTreeNode node) {
-               setColumnValues((StatusReport<?, ?>) node.getUserObject(), 
data.get(node));
-               for (int i = 0; i < node.getChildCount(); i++)
-                       update((DefaultMutableTreeNode) node.getChildAt(i));
-       }
-
-       //
-       // The TreeModel interface
-       //
-
-       @Override
-       public int getChildCount(Object node) {
-               return ((TreeNode) node).getChildCount();
-       }
-
-       @Override
-       public Object getChild(Object node, int i) {
-               return ((TreeNode) node).getChildAt(i);
-       }
-
-       //
-       // The TreeTableNode interface.
-       //
-
-       @Override
-       public int getColumnCount() {
-               return values().length;
-       }
-
-       @Override
-       public String getColumnName(int column) {
-               return values()[column].getLabel();
-       }
-
-       @Override
-       public Class<?> getColumnClass(int column) {
-               return values()[column].getColumnClass();
-       }
-
-       public Object getValueAt(Object node, Column column) {
-               return getValueAt(node, column.ordinal());
-       }
-
-       @Override
-       public Object getValueAt(Object node, int column) {
-               List<Object> columnValues = data.get(node);
-               if (columnValues == null)
-                       return null;
-               return columnValues.get(column);
-       }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-monitor-view/src/main/resources/META-INF/services/net.sf.taverna.t2.workbench.ui.zaria.UIComponentFactorySPI
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-monitor-view/src/main/resources/META-INF/services/net.sf.taverna.t2.workbench.ui.zaria.UIComponentFactorySPI
 
b/taverna-workbench-monitor-view/src/main/resources/META-INF/services/net.sf.taverna.t2.workbench.ui.zaria.UIComponentFactorySPI
deleted file mode 100644
index cf13a46..0000000
--- 
a/taverna-workbench-monitor-view/src/main/resources/META-INF/services/net.sf.taverna.t2.workbench.ui.zaria.UIComponentFactorySPI
+++ /dev/null
@@ -1 +0,0 @@
-net.sf.taverna.t2.workbench.views.monitor.graph.MonitorGraphComponentFactory
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-monitor-view/src/main/resources/META-INF/services/net.sf.taverna.t2.workbench.ui.zaria.UIComponentSPI
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-monitor-view/src/main/resources/META-INF/services/net.sf.taverna.t2.workbench.ui.zaria.UIComponentSPI
 
b/taverna-workbench-monitor-view/src/main/resources/META-INF/services/net.sf.taverna.t2.workbench.ui.zaria.UIComponentSPI
deleted file mode 100644
index 30f1743..0000000
--- 
a/taverna-workbench-monitor-view/src/main/resources/META-INF/services/net.sf.taverna.t2.workbench.ui.zaria.UIComponentSPI
+++ /dev/null
@@ -1 +0,0 @@
-net.sf.taverna.t2.workbench.views.monitor.graph.MonitorGraphComponent
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-monitor-view/src/main/resources/META-INF/spring/monitor-view-context-osgi.xml
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-monitor-view/src/main/resources/META-INF/spring/monitor-view-context-osgi.xml
 
b/taverna-workbench-monitor-view/src/main/resources/META-INF/spring/monitor-view-context-osgi.xml
deleted file mode 100644
index ab22b97..0000000
--- 
a/taverna-workbench-monitor-view/src/main/resources/META-INF/spring/monitor-view-context-osgi.xml
+++ /dev/null
@@ -1,9 +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";>
-
-</beans:beans>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-monitor-view/src/main/resources/META-INF/spring/monitor-view-context.xml
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-monitor-view/src/main/resources/META-INF/spring/monitor-view-context.xml
 
b/taverna-workbench-monitor-view/src/main/resources/META-INF/spring/monitor-view-context.xml
deleted file mode 100644
index d662d87..0000000
--- 
a/taverna-workbench-monitor-view/src/main/resources/META-INF/spring/monitor-view-context.xml
+++ /dev/null
@@ -1,6 +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";>
-
-</beans>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-parallelize-ui/pom.xml
----------------------------------------------------------------------
diff --git a/taverna-workbench-parallelize-ui/pom.xml 
b/taverna-workbench-parallelize-ui/pom.xml
deleted file mode 100644
index 6fba337..0000000
--- a/taverna-workbench-parallelize-ui/pom.xml
+++ /dev/null
@@ -1,42 +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-exts</artifactId>
-               <version>2.0-SNAPSHOT</version>
-       </parent>
-       <groupId>net.sf.taverna.t2.ui-exts</groupId>
-       <artifactId>parallelize-ui</artifactId>
-       <packaging>bundle</packaging>
-       <name>Parallelize layer contextual view</name>
-       <dependencies>
-               <dependency>
-                       <groupId>net.sf.taverna.t2.ui-api</groupId>
-                       <artifactId>contextual-views-api</artifactId>
-                       <version>${t2.ui.api.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>net.sf.taverna.t2.ui-api</groupId>
-                       <artifactId>menu-api</artifactId>
-                       <version>${t2.ui.api.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>net.sf.taverna.t2.ui-api</groupId>
-                       <artifactId>edits-api</artifactId>
-                       <version>${t2.ui.api.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>net.sf.taverna.t2.ui-api</groupId>
-                       <artifactId>selection-api</artifactId>
-                       <version>${t2.ui.api.version}</version>
-               </dependency>
-
-               <dependency>
-                       <groupId>com.fasterxml.jackson.core</groupId>
-                       <artifactId>jackson-databind</artifactId>
-                       <version>${jackson-databind.version}</version>
-               </dependency>
-       </dependencies>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-parallelize-ui/src/main/java/net/sf/taverna/t2/workbench/parallelize/ParallelizeConfigurationPanel.java
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-parallelize-ui/src/main/java/net/sf/taverna/t2/workbench/parallelize/ParallelizeConfigurationPanel.java
 
b/taverna-workbench-parallelize-ui/src/main/java/net/sf/taverna/t2/workbench/parallelize/ParallelizeConfigurationPanel.java
deleted file mode 100644
index f951da6..0000000
--- 
a/taverna-workbench-parallelize-ui/src/main/java/net/sf/taverna/t2/workbench/parallelize/ParallelizeConfigurationPanel.java
+++ /dev/null
@@ -1,99 +0,0 @@
-package net.sf.taverna.t2.workbench.parallelize;
-
-import java.awt.Dimension;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-
-import javax.swing.JLabel;
-import javax.swing.JOptionPane;
-import javax.swing.JPanel;
-import javax.swing.JTextField;
-import javax.swing.border.EmptyBorder;
-
-import uk.org.taverna.scufl2.api.configurations.Configuration;
-
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.node.ObjectNode;
-
-@SuppressWarnings("serial")
-public class ParallelizeConfigurationPanel extends JPanel {
-
-       private ObjectNode json;
-       private JTextField maxJobsField = new JTextField(10);
-       private final String processorName;
-
-       public ParallelizeConfigurationPanel(Configuration configuration, 
String processorName) {
-               if (configuration.getJson().has("parallelize")) {
-                       json = (ObjectNode) 
configuration.getJson().get("parallelize").deepCopy();
-               } else {
-                       json = configuration.getJsonAsObjectNode().objectNode();
-               }
-               this.processorName = processorName;
-               this.setLayout(new GridBagLayout());
-               this.setBorder(new EmptyBorder(10,10,10,10));
-               populate();
-       }
-
-       public void populate() {
-               this.removeAll();
-               GridBagConstraints gbc = new GridBagConstraints();
-               JLabel jobs = new JLabel("<html><body>Maximum numbers of items 
to process at the same time</body></html>");
-
-               jobs.setBorder(new EmptyBorder(0,0,0,10));
-               gbc.weightx = 0.8;
-               gbc.fill = GridBagConstraints.HORIZONTAL;
-               this.add(jobs, gbc);
-               if (json.has("maximumJobs")) {
-                       maxJobsField.setText(json.get("maximumJobs").asText());
-               } else {
-                       maxJobsField.setText("1");
-               }
-               gbc.weightx = 0.2;
-               gbc.fill = GridBagConstraints.HORIZONTAL;
-               this.add(maxJobsField, gbc);
-               gbc.weightx = 0.1;
-               this.add(new JPanel(), gbc);
-
-               gbc.gridy=1;
-               gbc.gridx=0;
-               gbc.gridwidth=3;
-               gbc.weightx=0;
-               gbc.anchor = GridBagConstraints.SOUTH;
-               gbc.fill = GridBagConstraints.BOTH;
-               gbc.weighty = 1.0;
-               JLabel explanationLabel = new JLabel("<html><body><small>" +
-                                       "The service <b>" +  processorName + 
"</b> will be invoked as soon as the required inputs " +
-                                   "for an iteration are available, but no 
more than the maximum number of items " +
-                                       "will be invoked at the same time."
-                                       + "</small></body></html>");
-               this.add(explanationLabel, gbc);
-
-               this.setPreferredSize(new Dimension(350, 170));
-       }
-
-       public boolean validateConfig() {
-               String errorText = "";
-               int maxJobs = -1;
-               try {
-                       maxJobs = Integer.parseInt(maxJobsField.getText());
-                       if (maxJobs < 1) {
-                               errorText += "The maximum number of items must 
be a positive integer.\n";
-                       }
-               }
-               catch (NumberFormatException e) {
-                       errorText += "The maximum number of items must be an 
integer.\n";
-               }
-
-               if (errorText.length() > 0) {
-                       JOptionPane.showMessageDialog(this, errorText, "", 
JOptionPane.ERROR_MESSAGE);
-                       return false;
-               }
-               return true;
-       }
-
-       public JsonNode getJson() {
-               json.put("maximumJobs", maxJobsField.getText());
-               return json;
-       }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/dc466d6d/taverna-workbench-parallelize-ui/src/main/java/net/sf/taverna/t2/workbench/parallelize/ParallelizeConfigureAction.java
----------------------------------------------------------------------
diff --git 
a/taverna-workbench-parallelize-ui/src/main/java/net/sf/taverna/t2/workbench/parallelize/ParallelizeConfigureAction.java
 
b/taverna-workbench-parallelize-ui/src/main/java/net/sf/taverna/t2/workbench/parallelize/ParallelizeConfigureAction.java
deleted file mode 100644
index 6727c59..0000000
--- 
a/taverna-workbench-parallelize-ui/src/main/java/net/sf/taverna/t2/workbench/parallelize/ParallelizeConfigureAction.java
+++ /dev/null
@@ -1,185 +0,0 @@
-/**
- *
- */
-package net.sf.taverna.t2.workbench.parallelize;
-
-import java.awt.BorderLayout;
-import java.awt.FlowLayout;
-import java.awt.Frame;
-import java.awt.event.ActionEvent;
-import java.util.Iterator;
-import java.util.Map.Entry;
-
-import javax.swing.AbstractAction;
-import javax.swing.JButton;
-import javax.swing.JDialog;
-import javax.swing.JOptionPane;
-import javax.swing.JPanel;
-
-import net.sf.taverna.t2.workbench.edits.Edit;
-import net.sf.taverna.t2.workbench.edits.EditException;
-import net.sf.taverna.t2.workbench.edits.EditManager;
-import net.sf.taverna.t2.workbench.helper.HelpEnabledDialog;
-import net.sf.taverna.t2.workbench.selection.SelectionManager;
-import net.sf.taverna.t2.workflow.edits.AddChildEdit;
-import net.sf.taverna.t2.workflow.edits.ChangeJsonEdit;
-
-import org.apache.log4j.Logger;
-
-import uk.org.taverna.scufl2.api.common.Scufl2Tools;
-import uk.org.taverna.scufl2.api.configurations.Configuration;
-import uk.org.taverna.scufl2.api.core.Processor;
-import uk.org.taverna.scufl2.api.profiles.Profile;
-
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.node.ObjectNode;
-
-/**
- * @author alanrw
- * @author David Withers
- */
-@SuppressWarnings("serial")
-public class ParallelizeConfigureAction extends AbstractAction {
-
-       private Frame owner;
-       private final Processor processor;
-       private final ParallelizeContextualView parallelizeContextualView;
-
-       private EditManager editManager;
-
-       private static Logger logger = 
Logger.getLogger(ParallelizeConfigureAction.class);
-
-       private final Scufl2Tools scufl2Tools = new Scufl2Tools();
-       private final SelectionManager selectionManager;
-
-       public ParallelizeConfigureAction(Frame owner,
-                       ParallelizeContextualView parallelizeContextualView,
-                       Processor processor, EditManager editManager, 
SelectionManager selectionManager) {
-               super("Configure");
-               this.owner = owner;
-               this.parallelizeContextualView = parallelizeContextualView;
-               this.processor = processor;
-               this.editManager = editManager;
-               this.selectionManager = selectionManager;
-       }
-
-       public void actionPerformed(ActionEvent e) {
-               String processorName = processor.getName();
-               String title = "Parallel jobs for service " + processorName;
-               final JDialog dialog = new HelpEnabledDialog(owner, title, 
true);
-               Configuration configuration;
-               try {
-                       configuration = scufl2Tools.configurationFor(processor, 
selectionManager.getSelectedProfile());
-               } catch (IndexOutOfBoundsException ex) {
-                       configuration = new Configuration();
-               }
-               ParallelizeConfigurationPanel parallelizeConfigurationPanel = 
new ParallelizeConfigurationPanel(configuration, processorName);
-               dialog.add(parallelizeConfigurationPanel, BorderLayout.CENTER);
-
-               JPanel buttonPanel = new JPanel();
-               buttonPanel.setLayout(new FlowLayout());
-
-               JButton okButton = new JButton(new OKAction(dialog,
-                               parallelizeConfigurationPanel));
-               buttonPanel.add(okButton);
-
-               JButton resetButton = new JButton(new ResetAction(
-                               parallelizeConfigurationPanel));
-               buttonPanel.add(resetButton);
-
-               JButton cancelButton = new JButton(new CancelAction(dialog));
-               buttonPanel.add(cancelButton);
-
-               dialog.add(buttonPanel, BorderLayout.SOUTH);
-               dialog.pack();
-               dialog.setLocationRelativeTo(null);
-               dialog.setVisible(true);
-       }
-
-       public class ResetAction extends AbstractAction {
-
-               private final ParallelizeConfigurationPanel 
parallelizeConfigurationPanel;
-
-               public ResetAction(ParallelizeConfigurationPanel 
parallelizeConfigurationPanel) {
-                       super("Reset");
-                       this.parallelizeConfigurationPanel = 
parallelizeConfigurationPanel;
-               }
-
-               public void actionPerformed(ActionEvent e) {
-                       parallelizeConfigurationPanel.populate();
-               }
-
-       }
-
-       public class OKAction extends AbstractAction {
-
-               private final ParallelizeConfigurationPanel 
parallelizeConfigurationPanel;
-               private final JDialog dialog;
-
-               public OKAction(JDialog dialog, ParallelizeConfigurationPanel 
parallelizeConfigurationPanel) {
-                       super("OK");
-                       this.dialog = dialog;
-                       this.parallelizeConfigurationPanel = 
parallelizeConfigurationPanel;
-               }
-
-               public void actionPerformed(ActionEvent e) {
-                       if (parallelizeConfigurationPanel.validateConfig()) {
-                               try {
-                                       try {
-                                               Configuration configuration = 
scufl2Tools.configurationFor(processor, selectionManager.getSelectedProfile());
-                                               ObjectNode json = 
configuration.getJsonAsObjectNode().deepCopy();
-                                               ObjectNode parallelizeNode = 
null;
-                                               if (json.has("parallelize")) {
-                                                       parallelizeNode = 
(ObjectNode) json.get("parallelize");
-                                               } else {
-                                                       parallelizeNode = 
json.objectNode();
-                                                       json.put("parallelize", 
parallelizeNode);
-                                               }
-                                               JsonNode newParallelizeNode = 
parallelizeConfigurationPanel.getJson();
-                                               Iterator<Entry<String, 
JsonNode>> fields = newParallelizeNode.fields();
-                                               while (fields.hasNext()) {
-                                                       Entry<String, JsonNode> 
entry = fields.next();
-                                                       
parallelizeNode.set(entry.getKey(), entry.getValue());
-                                               }
-                                               Edit<Configuration> edit = new 
ChangeJsonEdit(configuration, json);
-                                               
editManager.doDataflowEdit(selectionManager.getSelectedWorkflowBundle(), edit);
-                                       } catch (IndexOutOfBoundsException ex) {
-                                               Configuration configuration = 
new Configuration();
-                                               
configuration.setConfigures(processor);
-                                               ObjectNode json = 
configuration.getJsonAsObjectNode();
-                                               json.put("parallelize", 
parallelizeConfigurationPanel.getJson());
-                                               Edit<Profile> edit = new 
AddChildEdit<Profile>(selectionManager.getSelectedProfile(), configuration);
-                                               
editManager.doDataflowEdit(selectionManager.getSelectedWorkflowBundle(), edit);
-                                       }
-                                       dialog.setVisible(false);
-                                       if (parallelizeContextualView != null) {
-                                               
parallelizeContextualView.refreshView();
-                                       }
-                               } catch (EditException e1) {
-                                       logger.warn("Could not configure jobs", 
e1);
-                                       JOptionPane.showMessageDialog(owner, 
"Could not configure jobs",
-                                                       "An error occured when 
configuring jobs: " + e1.getMessage(),
-                                                       
JOptionPane.ERROR_MESSAGE);
-                               }
-                       }
-               }
-
-       }
-
-       public class CancelAction extends AbstractAction {
-
-               private final JDialog dialog;
-
-               public CancelAction(JDialog dialog) {
-                       super("Cancel");
-                       this.dialog = dialog;
-
-               }
-
-               public void actionPerformed(ActionEvent e) {
-                       dialog.setVisible(false);
-               }
-
-       }
-
-}

Reply via email to