http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/ProvenanceWriter.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/ProvenanceWriter.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/ProvenanceWriter.java
deleted file mode 100644
index 23ad705..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/ProvenanceWriter.java
+++ /dev/null
@@ -1,676 +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.provenance.lineageservice;
-
-import static 
net.sf.taverna.t2.provenance.connector.AbstractProvenanceConnector.DataflowInvocationTable.DataflowInvocation;
-
-import java.sql.Blob;
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-import java.util.UUID;
-
-import 
net.sf.taverna.t2.provenance.connector.AbstractProvenanceConnector.ActivityTable;
-import 
net.sf.taverna.t2.provenance.connector.AbstractProvenanceConnector.DataBindingTable;
-import 
net.sf.taverna.t2.provenance.connector.AbstractProvenanceConnector.DataflowInvocationTable;
-import 
net.sf.taverna.t2.provenance.connector.AbstractProvenanceConnector.ProcessorEnactmentTable;
-import 
net.sf.taverna.t2.provenance.connector.AbstractProvenanceConnector.ServiceInvocationTable;
-import net.sf.taverna.t2.provenance.lineageservice.utils.NestedListNode;
-import net.sf.taverna.t2.provenance.lineageservice.utils.Port;
-import net.sf.taverna.t2.provenance.lineageservice.utils.PortBinding;
-import net.sf.taverna.t2.provenance.lineageservice.utils.ProvenanceProcessor;
-
-import org.apache.log4j.Logger;
-
-import uk.org.taverna.configuration.database.DatabaseManager;
-
-/**
- * Handles all the writing out of provenance items to the database layer. Uses
- * standard SQL so all specific instances of this class can extend this writer
- * to handle all of the db writes
- * 
- * @author Paolo Missier
- * @author Ian Dunlop
- * @author Stuart Owen
- * 
- */
-public class ProvenanceWriter {
-
-       protected static Logger logger = 
Logger.getLogger(ProvenanceWriter.class);
-       protected int cnt; // counts number of calls to PortBinding
-       protected ProvenanceQuery pq = null;
-       private final DatabaseManager databaseManager;
-
-       public ProvenanceWriter(DatabaseManager databaseManager) {
-               this.databaseManager = databaseManager;
-       }
-
-       public Connection getConnection() throws SQLException {
-               return databaseManager.getConnection();
-       }
-
-       public void closeCurrentModel() {
-
-       }
-
-       /**
-        * add each Port as a row into the Port DB table <strong>note: no static
-        * port type available as part of the dataflow...</strong>
-        * 
-        * @param ports
-        * @param wfId
-        * @throws SQLException
-        */
-       public void addPorts(List<Port> ports, String wfId) throws SQLException 
{
-               String sql = "INSERT INTO Port "
-                               + "(portName, processorName, isInputPort, 
depth, workflowId, portId, processorId)"
-                               + "  VALUES(?,?,?,?,?,?,?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       for (Port v : ports) {
-                               ps.setString(1, v.getPortName());
-                               ps.setString(2, v.getProcessorName());
-                               ps.setBoolean(3, v.isInputPort());
-                               int depth = v.getDepth() >= 0 ? v.getDepth() : 
0;
-                               ps.setInt(4, depth);
-                               ps.setString(5, wfId);
-                               ps.setString(6, v.getIdentifier());
-                               ps.setString(7, v.getProcessorId());
-
-                               try {
-                                       ps.executeUpdate();
-                               } catch (Exception e) {
-                                       logger.warn("Could not insert var " + 
v.getPortName(), e);
-                               }
-                       }
-               }
-       }
-
-       @SuppressWarnings("static-access")
-       public void addDataflowInvocation(
-                       
net.sf.taverna.t2.provenance.lineageservice.utils.DataflowInvocation invocation)
-                       throws SQLException {
-               String sql = "INSERT INTO " + 
DataflowInvocation.DataflowInvocation
-                               + "(" + DataflowInvocation.dataflowInvocationId 
+ ","
-                               + DataflowInvocation.workflowId + ","
-                               + DataflowInvocation.invocationStarted + ","
-                               + DataflowInvocation.invocationEnded + ","
-                               + DataflowInvocation.inputsDataBinding + ","
-                               + DataflowInvocation.outputsDataBinding + ","
-                               + DataflowInvocation.parentProcessorEnactmentId 
+ ","
-                               + DataflowInvocation.workflowRunId + ","
-                               + DataflowInvocation.completed + ") "
-                               + " VALUES(?,?,?,?,?,?,?,?,?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql);) {
-                       ps.setString(1, invocation.getDataflowInvocationId());
-                       ps.setString(2, invocation.getWorkflowId());
-                       ps.setTimestamp(3, invocation.getInvocationStarted());
-                       ps.setTimestamp(4, invocation.getInvocationEnded());
-                       ps.setString(5, invocation.getInputsDataBindingId());
-                       ps.setString(6, invocation.getOutputsDataBindingId());
-                       ps.setString(7, 
invocation.getParentProcessorEnactmentId());
-                       ps.setString(8, invocation.getWorkflowRunId());
-                       ps.setBoolean(9, invocation.getCompleted());
-
-                       ps.executeUpdate();
-               }
-       }
-
-       /**
-        * inserts one row into the ARC DB table
-        * 
-        * @param sourcePort
-        * @param destinationPort
-        * @param workflowId
-        */
-       public void addDataLink(Port sourcePort, Port destinationPort,
-                       String workflowId) throws SQLException {
-               String sql = "INSERT INTO Datalink (workflowId, 
sourceProcessorName, "
-                               + " sourcePortName, destinationProcessorName, 
destinationPortName,"
-                               + " sourcePortId, destinationPortId) "
-                               + "VALUES(?,?,?,?,?,?,?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       ps.setString(1, workflowId);
-                       ps.setString(2, sourcePort.getProcessorName());
-                       ps.setString(3, sourcePort.getPortName());
-                       ps.setString(4, destinationPort.getProcessorName());
-                       ps.setString(5, destinationPort.getPortName());
-                       ps.setString(6, sourcePort.getIdentifier());
-                       ps.setString(7, destinationPort.getIdentifier());
-
-                       ps.executeUpdate();
-               }
-       }
-
-       public void addDataBinding(
-                       
net.sf.taverna.t2.provenance.lineageservice.utils.DataBinding dataBinding)
-                       throws SQLException {
-               String sql = "INSERT INTO " + DataBindingTable.DataBinding + "("
-                               + DataBindingTable.dataBindingId + ","
-                               + DataBindingTable.portId + "," + 
DataBindingTable.t2Reference
-                               + "," + DataBindingTable.workflowRunId + ") 
VALUES(?,?,?,?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       ps.setString(1, dataBinding.getDataBindingId());
-                       ps.setString(2, dataBinding.getPort().getIdentifier());
-                       ps.setString(3, dataBinding.getT2Reference());
-                       ps.setString(4, dataBinding.getWorkflowRunId());
-                       ps.executeUpdate();
-                       if (logger.isDebugEnabled())
-                               logger.debug("adding DataBinding:\n " + 
dataBinding);
-               }
-       }
-
-       public void addWFId(String wfId) throws SQLException {
-               String sql = "INSERT INTO Workflow (workflowId) VALUES (?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       ps.setString(1, wfId);
-                       ps.executeUpdate();
-               }
-       }
-
-       public void addWFId(String wfId, String parentWorkflowId,
-                       String externalName, Blob dataflow) throws SQLException 
{
-               String sql = "INSERT INTO Workflow (workflowId, 
parentWorkflowId, externalName, dataflow) "
-                               + "VALUES (?, ?, ?, ?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       ps.setString(1, wfId);
-                       ps.setString(2, parentWorkflowId);
-                       ps.setString(3, externalName);
-                       ps.setBlob(4, dataflow);
-
-                       ps.executeUpdate();
-               }
-       }
-
-       public void addWorkflowRun(String wfId, String workflowRunId)
-                       throws SQLException {
-               String sql = "INSERT INTO WorkflowRun (workflowRunId, 
workflowId) VALUES (?,?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       ps.setString(1, workflowRunId);
-                       ps.setString(2, wfId);
-
-                       ps.executeUpdate();
-               }
-       }
-
-       /**
-        * insert new processor into the provenance DB
-        * 
-        * @param name
-        * @throws SQLException
-        */
-       public ProvenanceProcessor addProcessor(String name, String wfID,
-                       boolean isTopLevel) throws SQLException {
-               ProvenanceProcessor provProc = new ProvenanceProcessor();
-               provProc.setIdentifier(UUID.randomUUID().toString());
-               provProc.setProcessorName(name);
-               provProc.setWorkflowId(wfID);
-               provProc.setTopLevelProcessor(isTopLevel);
-               // pType is unknown
-               addProcessor(provProc);
-               return provProc;
-       }
-
-       /**
-        * add a processor to the static portion of the DB with given name, 
type and
-        * workflowId scope
-        * 
-        * @param name
-        * @param type
-        * @param workflowId
-        * @throws SQLException
-        */
-       public void addProcessor(ProvenanceProcessor provProc) throws 
SQLException {
-               String sql = "INSERT INTO Processor (processorName, 
firstActivityClass, workflowId, isTopLevel, processorId) "
-                               + "VALUES (?,?,?,?,?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql);) {
-                       ps.setString(1, provProc.getProcessorName());
-                       ps.setString(2, provProc.getFirstActivityClassName());
-                       ps.setString(3, provProc.getWorkflowId());
-                       ps.setBoolean(4, provProc.isTopLevelProcessor());
-                       ps.setString(5, provProc.getIdentifier());
-
-                       ps.executeUpdate();
-               }
-       }
-
-       public void addProcessorEnactment(
-                       
net.sf.taverna.t2.provenance.lineageservice.utils.ProcessorEnactment enactment)
-                       throws SQLException {
-               String sql = "INSERT INTO "
-                               + ProcessorEnactmentTable.ProcessorEnactment + 
"("
-                               + ProcessorEnactmentTable.processEnactmentId + 
","
-                               + ProcessorEnactmentTable.workflowRunId + ","
-                               + ProcessorEnactmentTable.processorId + ","
-                               + ProcessorEnactmentTable.processIdentifier + 
","
-                               + ProcessorEnactmentTable.iteration + ","
-                               + 
ProcessorEnactmentTable.parentProcessorEnactmentId + ","
-                               + ProcessorEnactmentTable.enactmentStarted + ","
-                               + ProcessorEnactmentTable.enactmentEnded + ","
-                               + 
ProcessorEnactmentTable.initialInputsDataBindingId + ","
-                               + 
ProcessorEnactmentTable.finalOutputsDataBindingId
-                               + ") VALUES(?,?,?,?,?,?,?,?,?,?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       ps.setString(1, enactment.getProcessEnactmentId());
-                       ps.setString(2, enactment.getWorkflowRunId());
-                       ps.setString(3, enactment.getProcessorId());
-                       ps.setString(4, enactment.getProcessIdentifier());
-                       ps.setString(5, enactment.getIteration());
-                       ps.setString(6, 
enactment.getParentProcessorEnactmentId());
-                       ps.setTimestamp(7, enactment.getEnactmentStarted());
-                       ps.setTimestamp(8, enactment.getEnactmentEnded());
-                       ps.setString(9, 
enactment.getInitialInputsDataBindingId());
-                       ps.setString(10, 
enactment.getFinalOutputsDataBindingId());
-                       ps.executeUpdate();
-
-                       if (logger.isDebugEnabled())
-                               logger.debug("adding ProcessorEnactment 
binding:\n "
-                                               + enactment);
-               }
-       }
-
-       public String addCollection(String processorId, String collId,
-                       String parentCollectionId, String iteration, String 
portName,
-                       String dataflowId) throws SQLException {
-               String newParentCollectionId = null;
-               String sql = "INSERT INTO Collection (processorNameRef, 
workflowRunId, portName, iteration, parentCollIdRef, collId) "
-                               + "VALUES(?, ?, ?, ?, ?, ?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       if (parentCollectionId == null)
-                               // this is a top-level list
-                               parentCollectionId = "TOP";
-
-                       newParentCollectionId = collId;
-
-                       ps.setString(1, processorId);
-                       ps.setString(2, dataflowId);
-                       ps.setString(3, portName);
-                       ps.setString(4, iteration);
-                       ps.setString(5, parentCollectionId);
-                       ps.setString(6, collId);
-
-                       ps.executeUpdate();
-               }
-
-               return newParentCollectionId;
-       }
-
-       public void addData(String dataRef, String wfInstanceId, Object data)
-                       throws SQLException {
-               String sql = "INSERT INTO Data 
(dataReference,wfInstanceID,data) VALUES (?,?,?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql);) {
-                       ps.setString(1, dataRef);
-                       ps.setString(2, wfInstanceId);
-                       ps.setString(3, (String) data);
-
-                       ps.executeUpdate();
-
-                       cnt++;
-
-                       logger.debug("addData executed on data value from char: 
"
-                                       + data);
-               } catch (SQLException e) {
-                       // the same ID will come in several times -- 
duplications are
-                       // expected, don't panic
-               }
-       }
-
-       /**
-        * OBSOLETE
-        * <p/>
-        * adds (dataRef, data) pairs to the Data table (only for string data)
-        */
-       public void addData(String dataRef, String wfInstanceId, byte[] data)
-                       throws SQLException {
-               String sql = "INSERT INTO Data 
(dataReference,wfInstanceID,data) VALUES (?,?,?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       ps.setString(1, dataRef);
-                       ps.setString(2, wfInstanceId);
-                       ps.setBytes(3, data);
-
-                       ps.executeUpdate();
-
-                       cnt++;
-
-                       logger.debug("addData executed on data value from char: 
" + data);
-
-               } catch (SQLException e) {
-                       // the same ID will come in several times -- 
duplications are
-                       // expected, don't panic
-               }
-       }
-
-       public void addPortBinding(PortBinding vb) throws SQLException {
-               logger.debug("START addVarBinding proc " + vb.getProcessorName()
-                               + " port " + vb.getPortName());
-               String sql = "INSERT INTO PortBinding (workflowId, 
processorNameRef, workflowRunId, portName, valueType, value, ref, collIdRef, 
iteration,positionInColl) "
-                               + "VALUES(?,?,?,?,?,?,?,?,?,?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       ps.setString(1, vb.getWorkflowId());
-                       ps.setString(2, vb.getProcessorName());
-                       ps.setString(3, vb.getWorkflowRunId());
-                       ps.setString(4, vb.getPortName());
-                       ps.setString(5, vb.getValueType());
-                       ps.setString(6, vb.getValue());
-                       ps.setString(7, vb.getReference());
-                       ps.setString(8, vb.getCollIDRef());
-                       ps.setString(9, vb.getIteration());
-                       ps.setInt(10, vb.getPositionInColl());
-
-                       logger.debug("addVarBinding query: \n" + ps.toString());
-                       ps.executeUpdate();
-                       logger.debug("insert done");
-
-                       logger.debug("COMPLETE addVarBinding proc " + 
vb.getProcessorName()
-                                       + " port " + vb.getPortName());
-
-                       cnt++; // who uses this?
-               }
-       }
-
-       /**
-        * persists var v back to DB
-        * 
-        * @param v
-        * @throws SQLException
-        */
-       public void updatePort(Port v) throws SQLException {
-               String sql = "UPDATE Port SET isInputPort=?, depth=?,"
-                               + "resolvedDepth=?, iterationStrategyOrder=? "
-                               + "WHERE portId=?";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       ps.setInt(1, v.isInputPort() ? 1 : 0);
-                       ps.setInt(2, v.getDepth());
-                       if (v.isResolvedDepthSet()) {
-                               ps.setInt(3, v.getResolvedDepth());
-                       } else {
-                               ps.setString(3, null);
-                       }
-                       ps.setInt(4, v.getIterationStrategyOrder());
-                       ps.setString(5, v.getIdentifier());
-                       ps.execute();
-               }
-       }
-
-       public void updateProcessorEnactment(
-                       
net.sf.taverna.t2.provenance.lineageservice.utils.ProcessorEnactment enactment) 
{
-               String sql = "UPDATE " + 
ProcessorEnactmentTable.ProcessorEnactment
-                               + " SET " + 
ProcessorEnactmentTable.finalOutputsDataBindingId
-                               + "=?, " + 
ProcessorEnactmentTable.enactmentEnded + "=?"
-                               + " WHERE " + 
ProcessorEnactmentTable.processEnactmentId + "=?";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       ps.setString(1, 
enactment.getFinalOutputsDataBindingId());
-                       ps.setTimestamp(2, enactment.getEnactmentEnded());
-                       ps.setString(3, enactment.getProcessEnactmentId());
-
-                       ps.executeUpdate();
-               } catch (SQLException e) {
-                       logger.warn("****  insert failed for query ", e);
-               }
-       }
-
-       public void updatePortBinding(PortBinding vb) {
-               String sql = "UPDATE PortBinding SET valueType = ?, value = ?, 
ref = ?, collIdRef = ?, positionInColl = ? "
-                               + "WHERE portName = ? AND workflowRunId = ? AND 
processorNameRef = ? AND iteration = ?"                         ;
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       // Update values
-                       ps.setString(1, vb.getValueType());
-                       ps.setString(2, vb.getValue());
-                       ps.setString(3, vb.getReference());
-                       ps.setString(4, vb.getCollIDRef());
-                       ps.setInt(5, vb.getPositionInColl());
-                       // Where clauses
-                       ps.setString(6, vb.getPortName());
-                       ps.setString(7, vb.getWorkflowRunId());
-                       ps.setString(8, vb.getProcessorName());
-                       ps.setString(9, vb.getIteration());
-
-                       ps.executeUpdate();
-
-                       cnt++;
-
-               } catch (SQLException e) {
-                       logger.warn("****  insert failed for query ", e);
-               }
-       }
-
-       public void replaceCollectionRecord(NestedListNode nln, String 
prevPName,
-                       String prevPortName) {
-               String sql = "DELETE FROM Collection WHERE collId = ? AND 
workflowRunId = ?"
-                               + " AND portName = ? AND processorNameRef = ? 
AND iteration = ?";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       ps.setString(1, nln.getCollectionT2Reference());
-                       ps.setString(2, nln.getWorkflowRunId());
-                       ps.setString(3, prevPortName);
-                       ps.setString(4, prevPName);
-                       ps.setString(5, nln.getIteration());
-
-                       ps.executeUpdate();
-               } catch (SQLException e) {
-                       logger.warn("Error replacing collection record", e);
-               }
-
-               try {
-                       addCollection(prevPName, nln.getCollectionT2Reference(),
-                                       nln.getParentCollIdRef(), 
nln.getIteration(), prevPortName,
-                                       nln.getWorkflowRunId());
-               } catch (SQLException e) {
-                       logger.warn("Collection insert failed", e);
-               }
-       }
-
-       /**
-        * deletes DB contents for the static structures -- called prior to 
each run
-        * 
-        * @throws SQLException
-        */
-       public void clearDBStatic() throws SQLException {
-               try (Connection connection = getConnection();
-                               Statement stmt = connection.createStatement()) {
-                       stmt.executeUpdate("DELETE FROM Workflow");
-                       stmt.executeUpdate("DELETE FROM Processor");
-                       stmt.executeUpdate("DELETE FROM Datalink");
-                       stmt.executeUpdate("DELETE FROM Port");
-                       stmt.executeUpdate("DELETE FROM " + 
ActivityTable.Activity);
-                       logger.info("DB cleared STATIC");
-               } catch (SQLException e) {
-                       logger.warn("Could not clear static database", e);
-               }
-       }
-
-       /**
-        * deletes DB contents for the static structures -- called prior to 
each run
-        * 
-        * @throws SQLException
-        */
-       public void clearDBStatic(String wfID) throws SQLException {
-               try (Connection connection = getConnection()) {
-                       try (PreparedStatement ps = connection
-                                       .prepareStatement("DELETE FROM Workflow 
WHERE workflowId = ?")) {
-                               ps.setString(1, wfID);
-                               ps.executeUpdate();
-                       }
-                       try (PreparedStatement ps = connection
-                                       .prepareStatement("DELETE FROM 
Processor WHERE workflowId = ?")) {
-                               ps.setString(1, wfID);
-                               ps.executeUpdate();
-                       }
-                       try (PreparedStatement ps = connection
-                                       .prepareStatement("DELETE FROM Datalink 
WHERE workflowId = ?")) {
-                               ps.setString(1, wfID);
-                               ps.executeUpdate();
-                       }
-                       try (PreparedStatement ps = connection
-                                       .prepareStatement("DELETE FROM Port 
WHERE workflowId = ?")) {
-                               ps.setString(1, wfID);
-                               ps.executeUpdate();
-                       }
-                       try (PreparedStatement ps = connection
-                                       .prepareStatement("DELETE FROM " + 
ActivityTable.Activity
-                                                       + " WHERE " + 
ActivityTable.workflowId + "=?")) {
-                               ps.setString(1, wfID);
-                               ps.executeUpdate();
-                       }
-               }
-               logger.info("DB cleared STATICfor wfID " + wfID);
-       }
-
-       public Set<String> clearDBDynamic() throws SQLException {
-               return clearDBDynamic(null);
-       }
-
-       private void delete(Connection connection, Object table, String runID) 
throws SQLException {
-               if (runID != null) {
-                       try (PreparedStatement ps = connection
-                                       .prepareStatement("DELETE FROM " + table
-                                                       + " WHERE workflowRunId 
= ?")) {
-                               ps.setString(1, runID);
-                               ps.executeUpdate();
-                       }
-               } else
-                       try (PreparedStatement ps = connection
-                                       .prepareStatement("DELETE FROM " + 
table)) {
-                               ps.executeUpdate();
-                       }
-       }
-       /**
-        * deletes DB contents for all runs -- for testing purposes
-        * 
-        * @throws SQLException
-        */
-       public Set<String> clearDBDynamic(String runID) throws SQLException {
-               Set<String> refsToRemove = collectValueReferences(runID);
-               // collect all relevant refs from PortBinding and Collection
-
-               try (Connection connection = getConnection()) {
-                       delete(connection, "WorkflowRun", runID);
-                       delete(connection, "PortBinding", runID);
-                       delete(connection, "Collection", runID);
-                       delete(connection, 
DataflowInvocationTable.DataflowInvocation, runID);
-                       delete(connection, 
ServiceInvocationTable.ServiceInvocation, runID);
-                       delete(connection, 
ProcessorEnactmentTable.ProcessorEnactment, runID);
-                       delete(connection, DataBindingTable.DataBinding, runID);
-               }
-               logger.info("DB cleared DYNAMIC");
-               return refsToRemove;
-       }
-
-       private Set<String> collectValueReferences(String runID)
-                       throws SQLException {
-               Set<String> refs = new HashSet<>();
-               try (Connection connection = getConnection()) {
-                       String sql = "SELECT value FROM PortBinding";
-                       if (runID != null)
-                               sql += " WHERE workflowRunId = ?";
-                       try (PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                               if (runID != null)
-                                       ps.setString(1, runID);
-                               ResultSet rs = ps.executeQuery();
-                               while (rs.next())
-                                       refs.add(rs.getString("value"));
-                       }
-
-                       sql = "SELECT collId FROM Collection";
-                       if (runID != null)
-                               sql += " WHERE workflowRunId = ?";
-                       try (PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                               if (runID != null)
-                                       ps.setString(1, runID);
-                               ResultSet rs = ps.executeQuery();
-                               while (rs.next())
-                                       refs.add(rs.getString("collId"));
-                       }
-               } catch (SQLException e) {
-                       logger.error("Problem collecting value references for: 
" + runID
-                                       + " : " + e);
-               }
-               return refs;
-       }
-
-       public void clearDD() {
-               try (Connection connection = getConnection();
-                               Statement stmt = connection.createStatement()) {
-                       stmt.executeUpdate("DELETE FROM DD");
-               } catch (SQLException e) {
-                       logger.warn("Error execting delete query for provenance 
records", e);
-               }
-       }
-
-       /**
-        * used to support the implementation of
-        * 
-        * @param pname
-        * @param vFrom
-        * @param valFrom
-        * @param vTo
-        * @param valTo
-        * @param iteration
-        * @param workflowRunId
-        */
-       public void writeDDRecord(String pFrom, String vFrom, String valFrom,
-                       String pTo, String vTo, String valTo, String iteration,
-                       String workflowRunId) {
-               String sql = "INSERT INTO DD 
(PFrom,VFrom,valFrom,PTo,VTo,valTo,iteration,workflowRun) VALUES "
-                               + "(?,?,?,?,?,?,?)";
-               try (Connection connection = getConnection();
-                               PreparedStatement ps = 
connection.prepareStatement(sql)) {
-                       ps.setString(1, pFrom);
-                       ps.setString(2, vFrom);
-                       ps.setString(3, valFrom);
-                       ps.setString(4, pTo);
-                       ps.setString(5, vTo);
-                       ps.setString(6, iteration);
-                       ps.setString(7, workflowRunId);
-                       ps.executeUpdate();
-               } catch (SQLException e) {
-                       logger.warn("Error inserting record into DD", e);
-               }
-       }
-
-       public void setQuery(ProvenanceQuery query) {
-               this.pq = query;
-       }
-
-       public ProvenanceQuery getQuery() {
-               return this.pq;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/URIGenerator.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/URIGenerator.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/URIGenerator.java
deleted file mode 100644
index 94a0b8a..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/URIGenerator.java
+++ /dev/null
@@ -1,58 +0,0 @@
-package net.sf.taverna.t2.provenance.lineageservice;
-
-import java.net.URI;
-import java.net.URISyntaxException;
-
-public class URIGenerator {
-
-       public String makeT2ReferenceURI(String collId) {
-               // collId is of the form t2:list//<UUID>
-               // map to a proper URI
-               
-               String[] tokens = collId.split("//");
-               String type = tokens[0].split(":")[1];
-               String namespace = tokens[1].split("/")[0].split("\\?")[0];
-               String dataId = tokens[1].split("\\?")[1];
-               return "http://ns.taverna.org.uk/2011/data/"; + namespace + "/" 
+ type + "/" + dataId;
-       }
-
-       public String makeWFInstanceURI(String workflowRunId) {
-               return "http://ns.taverna.org.uk/2011/run/"; + workflowRunId + 
"/";
-       }
-
-       public String makeWorkflowURI(String wfId) {
-               return "http://ns.taverna.org.uk/2010/workflow/"; + wfId + "/";
-       }
-
-       public String makePortURI(String wfId, String pName, String vName,
-                       boolean inputPort) {            
-               return makeProcessorURI(pName, wfId) + (inputPort ? "in/" : 
"out/")
-                               + escape(vName);
-       }
-
-       public String escape(String part) {
-               try {
-                       return new URI(null, null, part.replace("/", "%47"), 
null)
-                                       .getRawPath();
-               } catch (URISyntaxException e) {
-                       throw new RuntimeException("Can't escape URI part " + 
part, e);
-               }
-       }
-       
-       public String makeProcessorURI(String pName, String wfId) {
-               return makeWorkflowURI(wfId) + "processor/" + escape(pName) + 
"/";
-       }
-
-       public String makeIteration(String workflowRunId, String workflowId,
-                       String processorName, String iteration) {
-               String iterationUri = iteration.replace(',', '-').replace('[', 
' ')
-                               .replace(']', ' ').trim();
-
-               return makeWFInstanceURI(workflowRunId) + "workflow/" + 
workflowId
-                               + "/processor/" + processorName + "/iteration/" 
+ iterationUri;
-       }
-
-       public URI makeRunUri(String workflowRunId) {
-               return URI.create(makeWFInstanceURI(workflowRunId));
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/WorkflowDataProcessor.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/WorkflowDataProcessor.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/WorkflowDataProcessor.java
deleted file mode 100644
index 25369fd..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/WorkflowDataProcessor.java
+++ /dev/null
@@ -1,453 +0,0 @@
-/**
- * 
- */
-package net.sf.taverna.t2.provenance.lineageservice;
-
-import static 
net.sf.taverna.t2.provenance.lineageservice.utils.ProvenanceUtils.iterationToString;
-import static 
net.sf.taverna.t2.provenance.lineageservice.utils.ProvenanceUtils.parentProcess;
-
-import java.sql.SQLException;
-import java.sql.Timestamp;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.UUID;
-import java.util.concurrent.ConcurrentHashMap;
-
-import net.sf.taverna.t2.facade.WorkflowInstanceFacade.State;
-import net.sf.taverna.t2.provenance.item.DataflowRunComplete;
-import net.sf.taverna.t2.provenance.item.ProvenanceItem;
-import net.sf.taverna.t2.provenance.item.WorkflowDataProvenanceItem;
-import net.sf.taverna.t2.provenance.lineageservice.utils.DataBinding;
-import net.sf.taverna.t2.provenance.lineageservice.utils.DataflowInvocation;
-import net.sf.taverna.t2.provenance.lineageservice.utils.Port;
-import net.sf.taverna.t2.provenance.lineageservice.utils.PortBinding;
-import net.sf.taverna.t2.provenance.lineageservice.utils.ProcessorEnactment;
-
-import org.apache.log4j.Logger;
-
-/**
- * @author paolo
- * this class manages the outputs from a workflow, as they come along through 
WorkflowData events
- */
-public class WorkflowDataProcessor {
-       private static Logger logger = 
Logger.getLogger(WorkflowDataProcessor.class);
-
-       // set of trees (impl as lists), one for each portName
-       // PM portName not enough must use the WFID as context as well, because 
the same output portName 
-       // may occur in multiple nested workflows 
-       Map<String, List<WorkflowDataNode>> workflowDataTrees = new 
HashMap<>();  
-
-       protected Map<String, Timestamp> workflowStarted = new 
ConcurrentHashMap<>(); 
-
-       ProvenanceQuery pq=null;
-       ProvenanceWriter pw = null;
-
-       protected Map<String, ProcessorEnactment> 
invocationProcessToProcessEnactment = new ConcurrentHashMap<>();
-
-       /**
-        * adds the input ProvenanceItem event to the tree structure 
corresponding
-        * to the portName found in the item. Repeated invocations of this 
method
-        * incrementally reconstruct the tree structure for each of the workflow
-        * outputs
-        * 
-        * @param root
-        */
-       public void addWorkflowDataItem(ProvenanceItem provenanceItem) {
-               WorkflowDataProvenanceItem workflowDataItem = 
(WorkflowDataProvenanceItem) provenanceItem;
-               
-               WorkflowDataNode wdn = new WorkflowDataNode();
-               wdn.setProcessId(provenanceItem.getProcessId());
-               wdn.setPortName(workflowDataItem.getPortName());
-               wdn.setInputPort(workflowDataItem.isInputPort());
-               wdn.setValue(workflowDataItem.getData().toString());
-               int[] index = workflowDataItem.getIndex();
-               String iterationToString = iterationToString(index);
-               wdn.setIndex(iterationToString);
-               wdn.setWorkflowID(workflowDataItem.getWorkflowId());
-
-               if (wdn.getValue().contains("list"))
-                       wdn.setList(true);  // HACK
-               else
-                       wdn.setList(false);
-
-               // position this wdn into the tree associated to its portName
-               List<WorkflowDataNode> aTree = 
workflowDataTrees.get(wdn.getPortName());
-
-               if (aTree == null)  { // first item in the tree
-                       aTree = new ArrayList<WorkflowDataNode>();
-                       workflowDataTrees.put(wdn.getPortName(), aTree);
-               } else
-                       // update parent pointers
-                       for (WorkflowDataNode aNode: aTree)
-                               if (isParent(wdn.getIndex(), aNode.getIndex())) 
{
-                                       aNode.setParent(wdn);
-
-                                       // set position in collection as the 
last index in the vector
-                                       
aNode.setRelativePosition(getPosition(aNode));
-                               }
-               aTree.add(wdn);
-       }
-
-       /**
-        * writes records to PortBinding or Collection by traversing the 
trees<br/>
-        * expect this to be invoked after workflow completion
-        * 
-        * @param workflowId
-        *            the external name of the dataflow (not the UUID)
-        * @param workflowRunId
-        *            the runID
-        */
-       public void processTrees(DataflowRunComplete completeEvent,
-                       String workflowRunId) {
-               String workflowId = completeEvent.getWorkflowId();
-               logger.debug("processing output trees");
-
-               // i:inputPortName -> t2Ref
-               Map<String, String> workflowPortData = new HashMap<>();
-               
-               for (Map.Entry<String, List<WorkflowDataNode>> entry : 
workflowDataTrees
-                               .entrySet()) {
-                       String portName = entry.getKey();
-                       List<WorkflowDataNode> tree = entry.getValue();
-
-                       PortBinding vb = null;
-
-                       logger.debug("storing tree for var "+portName+" in 
workflow with ID "+workflowId+" and instance "+workflowRunId);
-                       for (WorkflowDataNode node:tree) {
-                               try {
-                                       if 
(!node.getWorkflowID().equals(workflowId))
-                                               continue;
-
-                                       if (node.getIndex().equals("[]")) {
-                                               // Store top-level workflow 
inputs/outputs
-                                               if (! 
node.getProcessId().equals(completeEvent.getProcessId()))
-                                                       
//logger.warn("Unexpected process ID " + node.getProcessId() + " expected " + 
completeEvent.getProcessId());
-                                                       continue;
-                                               String portKey = 
(node.isInputPort() ? "/i:" : "/o:") + node.getPortName();
-                                               workflowPortData.put(portKey, 
node.getValue());
-                                       }
-                                       
-                                       if (node.isList) {
-                                               logger.debug("creating 
collection entry for "
-                                                               + node.value + 
" with index " + node.index);
-
-                                               if (node.getParent() != null) {
-                                                       logger.debug(" and 
parent " + node.parent.index);
-                                                       // write a collection 
record to DB
-                                                       
getPw().addCollection(workflowId, node.getValue(),
-                                                                       
node.getParent().getValue(),
-                                                                       
node.getIndex(), portName, workflowRunId);
-                                               } else
-                                                       
getPw().addCollection(workflowId, node.getValue(),
-                                                                       null, 
node.getIndex(), portName,
-                                                                       
workflowRunId);
-                                       } else {
-                                               logger.debug("creating 
PortBinding for " + node.value
-                                                               + " with index 
" + node.index);
-
-                                               vb = new PortBinding();
-
-                                               vb.setWorkflowId(workflowId);
-                                               
vb.setWorkflowRunId(workflowRunId);
-
-                                               
vb.setProcessorName(pq.getWorkflow(workflowId)
-                                                               
.getExternalName());
-
-                                               // vb.setValueType(); // TODO 
not sure what to set this to
-                                               vb.setPortName(portName);
-                                               
vb.setIteration(node.getIndex());
-                                               vb.setValue(node.getValue());
-
-                                               if (node.getParent() != null) {
-                                                       logger.debug(" in 
collection "
-                                                                       + 
node.getParent().value + " with index "
-                                                                       + 
node.getParent().getIndex());
-
-                                                       
vb.setCollIDRef(node.getParent().getValue());
-                                                       
vb.setPositionInColl(node.getRelativePosition());
-                                               } else
-                                                       
vb.setPositionInColl(1); // default
-                                               
-                                               try {
-                                                       
getPw().addPortBinding(vb);
-                                               } catch (SQLException e) {
-                                                       logger.debug("Problem 
processing trees for workflow: "
-                                                                       + 
workflowId
-                                                                       + " 
instance: "
-                                                                       + 
workflowRunId
-                                                                       + " : 
updating instead of inserting");
-                                                       
getPw().updatePortBinding(vb);
-                                               }
-                                       }
-                               } catch (SQLException e) {
-                                       logger.debug(
-                                                       "Database problem 
processing trees for workflow: "
-                                                                       + 
workflowId + " instance: "
-                                                                       + 
workflowRunId + " : " + workflowId, e);
-                               }
-                       }
-               }
-
-               List<Port> ports = getPq().getPortsForDataflow(workflowId);
-               String processId = completeEvent.getProcessId();
-               
-               DataflowInvocation invocation = new DataflowInvocation();
-               
invocation.setDataflowInvocationId(UUID.randomUUID().toString());
-               invocation.setWorkflowId(workflowId);
-               invocation.setWorkflowRunId(workflowRunId);
-               
-               String parentProcessId = parentProcess(processId, 1);
-               if (parentProcessId != null) {
-                       ProcessorEnactment procAct = 
invocationProcessToProcessEnactment
-                                       .get(parentProcessId);
-                       if (procAct != null)
-                               invocation.setParentProcessorEnactmentId(procAct
-                                               .getProcessEnactmentId());
-               }
-
-               
invocation.setInvocationStarted(workflowStarted.get(completeEvent
-                               .getParentId()));
-               
invocation.setInvocationEnded(completeEvent.getInvocationEnded());
-               invocation.setCompleted(completeEvent.getState()
-                               .equals(State.completed));
-
-               // Register data
-               String inputsDataBindingId = UUID.randomUUID().toString();
-               String outputsDataBindingId = UUID.randomUUID().toString();
-               for (Port port : ports) {
-                       String portKey = (port.isInputPort() ? "/i:" : "/o:")
-                                       + port.getPortName();
-                       String t2Reference = workflowPortData.get(portKey);
-                       if (t2Reference == null) {
-                               logger.warn("No workflow port data for " + 
portKey);
-                               continue;
-                       }
-                       DataBinding dataBinding = new DataBinding();
-                       dataBinding
-                                       .setDataBindingId(port.isInputPort() ? 
inputsDataBindingId
-                                                       : outputsDataBindingId);
-                       dataBinding.setPort(port);
-                       dataBinding.setT2Reference(t2Reference);
-                       dataBinding.setWorkflowRunId(workflowRunId);
-                       try {
-                               pw.addDataBinding(dataBinding);
-                       } catch (SQLException e) {
-                               logger.warn("Could not add databinding for " + 
portKey, e);
-                       }
-               }
-
-               invocation.setInputsDataBindingId(inputsDataBindingId);
-               invocation.setOutputsDataBindingId(outputsDataBindingId);
-               try {
-                       pw.addDataflowInvocation(invocation);
-               } catch (SQLException e) {
-                       logger.warn("Could not store dataflow invocation for " 
+ processId,
-                                       e);
-               }
-       }
-
-
-       /**
-        * @param node
-        * @return the last digit in the index 
-        */
-       private int getPosition(WorkflowDataNode node) {
-               String[] vector = node.getIndex()
-                               .substring(1, node.getIndex().length() - 
1).split(",");
-               //TODO need some logic  here to avoid trying to parse "" as 
integer, this is my try
-
-               if ((vector[vector.length-1]).equals(""))
-                       return 1;
-               return Integer.parseInt(vector[vector.length - 1]) + 1;
-       }
-
-       private boolean isParent(String index1, String index2) {
-               // strip first and last '[' ']'
-               String index11 = index1.substring(1, index1.length() - 1);
-               String index22 = index2.substring(1, index2.length() - 1);
-
-               String[] tokens1 = index11.split(",");
-               String[] tokens2 = index22.split(",");
-
-               // [] cannot be parent of [x1,x2,...] with >= 2 elements
-               if (index11.equals("") && tokens2.length > 1)
-                       return false;
-
-               // [] is parent of any [x]
-               if (index11.equals("") && tokens2.length == 1)
-                       return true;
-
-               // [x1,x2, ...,xk] cannot be parent of [x1,x2,...xh] when k < 
h-1 
-               // because [x1,x2,...xh] is more than one level deeper than 
[x1,x2, ...,xk] 
-               if (tokens1.length != tokens2.length - 1)
-                       return false;
-
-               return index22.startsWith(index11);
-       }
-
-       static class WorkflowDataNode {
-               private String portName;
-               private String value;
-               private String index;
-               private String workflowID;
-               private int relativePosition;
-               private boolean isList;
-               private WorkflowDataNode parent;
-               private String processId;
-               private boolean isInputPort;
-
-               public String getProcessId() {
-                       return processId;
-               }
-
-               /**
-                * @return the value
-                */
-               public String getValue() {
-                       return value;
-               }
-
-               public void setProcessId(String processId) {
-                       this.processId = processId;
-
-               }
-
-               /**
-                * @param value
-                *            the value to set
-                */
-               public void setValue(String value) {
-                       this.value = value;
-               }
-
-               /**
-                * @return the index
-                */
-               public String getIndex() {
-                       return index;
-               }
-
-               /**
-                * @param index
-                *            the index to set
-                */
-               public void setIndex(String index) {
-                       this.index = index;
-               }
-
-               /**
-                * @return the portName
-                */
-               public String getPortName() {
-                       return portName;
-               }
-
-               /**
-                * @param portName
-                *            the portName to set
-                */
-               public void setPortName(String portName) {
-                       this.portName = portName;
-               }
-
-               /**
-                * @return the isList
-                */
-               public boolean isList() {
-                       return isList;
-               }
-
-               /**
-                * @param isList
-                *            the isList to set
-                */
-               public void setList(boolean isList) {
-                       this.isList = isList;
-               }
-
-               /**
-                * @return the parent
-                */
-               public WorkflowDataNode getParent() {
-                       return parent;
-               }
-
-               /**
-                * @param parent
-                *            the parent to set
-                */
-               public void setParent(WorkflowDataNode parent) {
-                       this.parent = parent;
-               }
-
-               /**
-                * @return the relativePosition
-                */
-               public int getRelativePosition() {
-                       return relativePosition;
-               }
-
-               /**
-                * @param relativePosition
-                *            the relativePosition to set
-                */
-               public void setRelativePosition(int relativePosition) {
-                       this.relativePosition = relativePosition;
-               }
-
-               /**
-                * @return the workflowID
-                */
-               public String getWorkflowID() {
-                       return workflowID;
-               }
-
-               /**
-                * @param workflowID
-                *            the workflowID to set
-                */
-               public void setWorkflowID(String workflowID) {
-                       this.workflowID = workflowID;
-               }
-
-               public void setInputPort(boolean isInputPort) {
-                       this.isInputPort = isInputPort;
-               }
-
-               public boolean isInputPort() {
-                       return isInputPort;
-               }
-       }
-
-       /**
-        * @return the pq
-        */
-       public ProvenanceQuery getPq() {
-               return pq;
-       }
-
-       /**
-        * @param pq
-        *            the pq to set
-        */
-       public void setPq(ProvenanceQuery pq) {
-               this.pq = pq;
-       }
-
-       /**
-        * @return the pw
-        */
-       public ProvenanceWriter getPw() {
-               return pw;
-       }
-
-       /**
-        * @param pw
-        *            the pw to set
-        */
-       public void setPw(ProvenanceWriter pw) {
-               this.pw = pw;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ActivityType.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ActivityType.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ActivityType.java
deleted file mode 100644
index b5f8644..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ActivityType.java
+++ /dev/null
@@ -1,87 +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.provenance.lineageservice.types;
-
-import net.sf.taverna.t2.provenance.lineageservice.types.ProvenanceEventType;
-
-/**
- * 
- * @author Paolo Missier
- * 
- */
-public class ActivityType implements ProvenanceEventType {
-       private IterationType[] iteration;
-
-       private String id; // attribute
-
-       public ActivityType() {
-       }
-
-       public ActivityType(IterationType[] iteration, String id) {
-               this.iteration = iteration;
-               this.id = id;
-       }
-
-       /**
-        * Gets the iteration value for this ActivityType.
-        * 
-        * @return iteration
-        */
-       public IterationType[] getIteration() {
-               return iteration;
-       }
-
-       /**
-        * Sets the iteration value for this ActivityType.
-        * 
-        * @param iteration
-        */
-       public void setIteration(IterationType[] iteration) {
-               this.iteration = iteration;
-       }
-
-       public IterationType getIteration(int i) {
-               return this.iteration[i];
-       }
-
-       public void setIteration(int i, IterationType _value) {
-               this.iteration[i] = _value;
-       }
-
-       /**
-        * Gets the id value for this ActivityType.
-        * 
-        * @return id
-        */
-       public java.lang.String getId() {
-               return id;
-       }
-
-       /**
-        * Sets the id value for this ActivityType.
-        * 
-        * @param id
-        */
-       public void setId(java.lang.String id) {
-               this.id = id;
-       }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/DataDocumentType.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/DataDocumentType.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/DataDocumentType.java
deleted file mode 100644
index 27fa322..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/DataDocumentType.java
+++ /dev/null
@@ -1,75 +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.provenance.lineageservice.types;
-
-/**
- * 
- * @author Paolo Missier
- * 
- */
-public class DataDocumentType implements ProvenanceEventType {
-       private String reference;
-       private String id; // attribute
-
-       public DataDocumentType() {
-       }
-
-       public DataDocumentType(String reference, String id) {
-               this.reference = reference;
-               this.id = id;
-       }
-
-       /**
-        * Gets the reference value for this DataDocumentType.
-        * 
-        * @return reference
-        */
-       public String getReference() {
-               return reference;
-       }
-
-       /**
-        * Sets the reference value for this DataDocumentType.
-        * 
-        * @param reference
-        */
-       public void setReference(String reference) {
-               this.reference = reference;
-       }
-
-       /**
-        * Gets the id value for this DataDocumentType.
-        * 
-        * @return id
-        */
-       public String getId() {
-               return id;
-       }
-
-       /**
-        * Sets the id value for this DataDocumentType.
-        * 
-        * @param id
-        */
-       public void setId(String id) {
-               this.id = id;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/IterationType.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/IterationType.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/IterationType.java
deleted file mode 100644
index be5389b..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/IterationType.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.provenance.lineageservice.types;
-
-/**
- * 
- * @author Paolo Missier
- * 
- */
-public class IterationType implements ProvenanceEventType {
-       private PortsSequenceType inputdata;
-       private PortsSequenceType outputdata;
-       private String id; // attribute
-
-       public IterationType() {
-       }
-
-       public IterationType(PortsSequenceType inputdata,
-                       PortsSequenceType outputdata, String id) {
-               this.inputdata = inputdata;
-               this.outputdata = outputdata;
-               this.id = id;
-       }
-
-       /**
-        * Gets the inputdata value for this IterationType.
-        * 
-        * @return inputdata
-        */
-       public PortsSequenceType getInputdata() {
-               return inputdata;
-       }
-
-       /**
-        * Sets the inputdata value for this IterationType.
-        * 
-        * @param inputdata
-        */
-       public void setInputdata(PortsSequenceType inputdata) {
-               this.inputdata = inputdata;
-       }
-
-       /**
-        * Gets the outputdata value for this IterationType.
-        * 
-        * @return outputdata
-        */
-       public PortsSequenceType getOutputdata() {
-               return outputdata;
-       }
-
-       /**
-        * Sets the outputdata value for this IterationType.
-        * 
-        * @param outputdata
-        */
-       public void setOutputdata(PortsSequenceType outputdata) {
-               this.outputdata = outputdata;
-       }
-
-       /**
-        * Gets the id value for this IterationType.
-        * 
-        * @return id
-        */
-       public String getId() {
-               return id;
-       }
-
-       /**
-        * Sets the id value for this IterationType.
-        * 
-        * @param id
-        */
-       public void setId(String id) {
-               this.id = id;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/LiteralType.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/LiteralType.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/LiteralType.java
deleted file mode 100644
index 2b87758..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/LiteralType.java
+++ /dev/null
@@ -1,55 +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.provenance.lineageservice.types;
-
-/**
- * 
- * @author Paolo Missier
- * 
- */
-public class LiteralType implements ProvenanceEventType {
-       private String id; // attribute
-
-       public LiteralType() {
-       }
-
-       public LiteralType(String id) {
-               this.id = id;
-       }
-
-       /**
-        * Gets the id value for this LiteralType.
-        * 
-        * @return id
-        */
-       public String getId() {
-               return id;
-       }
-
-       /**
-        * Sets the id value for this LiteralType.
-        * 
-        * @param id
-        */
-       public void setId(String id) {
-               this.id = id;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/PortType.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/PortType.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/PortType.java
deleted file mode 100644
index 6978ac9..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/PortType.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.provenance.lineageservice.types;
-
-/**
- * 
- * @author Paolo Missier
- * 
- */
-public class PortType implements ProvenanceEventType {
-       private DataDocumentType dataDocument;
-       private LiteralType literal;
-       private String name; // attribute
-
-       public PortType() {
-       }
-
-       public PortType(DataDocumentType dataDocument, LiteralType literal,
-                       String name) {
-               this.dataDocument = dataDocument;
-               this.literal = literal;
-               this.name = name;
-       }
-
-       /**
-        * Gets the dataDocument value for this PortType.
-        * 
-        * @return dataDocument
-        */
-       public DataDocumentType getDataDocument() {
-               return dataDocument;
-       }
-
-       /**
-        * Sets the dataDocument value for this PortType.
-        * 
-        * @param dataDocument
-        */
-       public void setDataDocument(DataDocumentType dataDocument) {
-               this.dataDocument = dataDocument;
-       }
-
-       /**
-        * Gets the literal value for this PortType.
-        * 
-        * @return literal
-        */
-       public LiteralType getLiteral() {
-               return literal;
-       }
-
-       /**
-        * Sets the literal value for this PortType.
-        * 
-        * @param literal
-        */
-       public void setLiteral(LiteralType literal) {
-               this.literal = literal;
-       }
-
-       /**
-        * Gets the name value for this PortType.
-        * 
-        * @return name
-        */
-       public String getName() {
-               return name;
-       }
-
-       /**
-        * Sets the name value for this PortType.
-        * 
-        * @param name
-        */
-       public void setName(String name) {
-               this.name = name;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/PortsSequenceType.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/PortsSequenceType.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/PortsSequenceType.java
deleted file mode 100644
index 5eddde8..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/PortsSequenceType.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester   
- * 
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *    
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *    
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- 
******************************************************************************/
-package net.sf.taverna.t2.provenance.lineageservice.types;
-
-/**
- * 
- * @author Paolo Missier
- * 
- */
-public class PortsSequenceType implements ProvenanceEventType {
-       private PortType[] port;
-
-       public PortsSequenceType() {
-       }
-
-       public PortsSequenceType(PortType[] port) {
-               this.port = port;
-       }
-
-       /**
-        * Gets the port value for this PortsSequenceType.
-        * 
-        * @return port
-        */
-       public PortType[] getPort() {
-               return port;
-       }
-
-       /**
-        * Sets the port value for this PortsSequenceType.
-        * 
-        * @param port
-        */
-       public void setPort(PortType[] port) {
-               this.port = port;
-       }
-
-       public PortType getPort(int i) {
-               return this.port[i];
-       }
-
-       public void setPort(int i, PortType _value) {
-               this.port[i] = _value;
-       }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ProcessType.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ProcessType.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ProcessType.java
deleted file mode 100644
index 163bc93..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ProcessType.java
+++ /dev/null
@@ -1,105 +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.provenance.lineageservice.types;
-
-/**
- * 
- * @author Paolo Missier
- * 
- */
-public class ProcessType implements ProvenanceEventType {
-       private ProcessorType[] processor;
-       private String dataflowID; // attribute
-       private String facadeID; // attribute
-
-       public ProcessType() {
-       }
-
-       public ProcessType(ProcessorType[] processor, String dataflowID,
-                       String facadeID) {
-               this.processor = processor;
-               this.dataflowID = dataflowID;
-               this.facadeID = facadeID;
-       }
-
-       /**
-        * Gets the processor value for this ProcessType.
-        * 
-        * @return processor
-        */
-       public ProcessorType[] getProcessor() {
-               return processor;
-       }
-
-       /**
-        * Sets the processor value for this ProcessType.
-        * 
-        * @param processor
-        */
-       public void setProcessor(ProcessorType[] processor) {
-               this.processor = processor;
-       }
-
-       public ProcessorType getProcessor(int i) {
-               return this.processor[i];
-       }
-
-       public void setProcessor(int i, ProcessorType _value) {
-               this.processor[i] = _value;
-       }
-
-       /**
-        * Gets the dataflowID value for this ProcessType.
-        * 
-        * @return dataflowID
-        */
-       public String getDataflowID() {
-               return dataflowID;
-       }
-
-       /**
-        * Sets the dataflowID value for this ProcessType.
-        * 
-        * @param dataflowID
-        */
-       public void setDataflowID(String dataflowID) {
-               this.dataflowID = dataflowID;
-       }
-
-       /**
-        * Gets the facadeID value for this ProcessType.
-        * 
-        * @return facadeID
-        */
-       public String getFacadeID() {
-               return facadeID;
-       }
-
-       /**
-        * Sets the facadeID value for this ProcessType.
-        * 
-        * @param facadeID
-        */
-       public void setFacadeID(String facadeID) {
-               this.facadeID = facadeID;
-       }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ProcessorType.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ProcessorType.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ProcessorType.java
deleted file mode 100644
index 53285df..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ProcessorType.java
+++ /dev/null
@@ -1,83 +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.provenance.lineageservice.types;
-
-/**
- * 
- * @author Paolo Missier
- * 
- */
-public class ProcessorType implements ProvenanceEventType {
-       private ActivityType[] activity;
-       private String id; // attribute
-
-       public ProcessorType() {
-       }
-
-       public ProcessorType(ActivityType[] activity, String id) {
-               this.activity = activity;
-               this.id = id;
-       }
-
-       /**
-        * Gets the activity value for this ProcessorType.
-        * 
-        * @return activity
-        */
-       public ActivityType[] getActivity() {
-               return activity;
-       }
-
-       /**
-        * Sets the activity value for this ProcessorType.
-        * 
-        * @param activity
-        */
-       public void setActivity(ActivityType[] activity) {
-               this.activity = activity;
-       }
-
-       public ActivityType getActivity(int i) {
-               return this.activity[i];
-       }
-
-       public void setActivity(int i, ActivityType _value) {
-               this.activity[i] = _value;
-       }
-
-       /**
-        * Gets the id value for this ProcessorType.
-        * 
-        * @return id
-        */
-       public String getId() {
-               return id;
-       }
-
-       /**
-        * Sets the id value for this ProcessorType.
-        * 
-        * @param id
-        */
-       public void setId(String id) {
-               this.id = id;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ProvenanceEventType.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ProvenanceEventType.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ProvenanceEventType.java
deleted file mode 100644
index 6ebe680..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/types/ProvenanceEventType.java
+++ /dev/null
@@ -1,30 +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.provenance.lineageservice.types;
-
-/**
- * Used by an implementation of Provenance to identify the item type
- * 
- * @author Paolo Missier
- */
-public interface ProvenanceEventType {
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/Activity.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/Activity.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/Activity.java
deleted file mode 100644
index 819fce8..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/Activity.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package net.sf.taverna.t2.provenance.lineageservice.utils;
-
-public class Activity {
-       private String activityId;
-
-       @Override
-       public int hashCode() {
-               return 31 + ((activityId == null) ? 0 : activityId.hashCode());
-       }
-
-       @Override
-       public String toString() {
-               StringBuilder builder = new StringBuilder();
-               builder.append("Activity [activityDefinition=");
-               builder.append(activityDefinition);
-               builder.append("]");
-               return builder.toString();
-       }
-
-       @Override
-       public boolean equals(Object obj) {
-               if (this == obj)
-                       return true;
-               if (obj == null)
-                       return false;
-               if (getClass() != obj.getClass())
-                       return false;
-               Activity other = (Activity) obj;
-               if (activityId == null) {
-                       if (other.activityId != null)
-                               return false;
-               } else if (!activityId.equals(other.activityId))
-                       return false;
-               return true;
-       }
-
-       private String activityDefinition;
-       private Workflow workflow;
-
-       public String getActivityId() {
-               return activityId;
-       }
-
-       public void setActivityId(String activityId) {
-               this.activityId = activityId;
-       }
-
-       public String getActivityDefinition() {
-               return activityDefinition;
-       }
-
-       public void setActivityDefinition(String activityDefinition) {
-               this.activityDefinition = activityDefinition;
-       }
-
-       public Workflow getWorkflow() {
-               return workflow;
-       }
-
-       public void setWorkflow(Workflow workflow) {
-               this.workflow = workflow;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/Collection.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/Collection.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/Collection.java
deleted file mode 100644
index 56340db..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/Collection.java
+++ /dev/null
@@ -1,68 +0,0 @@
-package net.sf.taverna.t2.provenance.lineageservice.utils;
-
-public class Collection {
-       private String identifier;
-       private String parentIdentifier;
-       private String workflowRunIdentifier;
-       private String processorName;
-       private String portName;
-       private String iteration;
-       private String collId;
-
-       public String getIdentifier() {
-               return identifier;
-       }
-
-       public void setIdentifier(String identifier) {
-               this.identifier = identifier;
-       }
-
-       public String getParentIdentifier() {
-               return parentIdentifier;
-       }
-
-       public void setParentIdentifier(String parentIdentifier) {
-               this.parentIdentifier = parentIdentifier;
-       }
-
-       public String getWorkflowRunIdentifier() {
-               return workflowRunIdentifier;
-       }
-
-       public void setWorkflowRunIdentifier(String workflowRunIdentifier) {
-               this.workflowRunIdentifier = workflowRunIdentifier;
-       }
-
-       public String getProcessorName() {
-               return processorName;
-       }
-
-       public void setProcessorName(String processorName) {
-               this.processorName = processorName;
-       }
-
-       public String getPortName() {
-               return portName;
-       }
-
-       public void setPortName(String portName) {
-               this.portName = portName;
-       }
-
-       public String getIteration() {
-               return iteration;
-       }
-
-       public void setIteration(String iteration) {
-               this.iteration = iteration;
-       }
-
-       public void setCollId(String collId) {
-               this.collId = collId;
-       }
-
-       public String getCollId() {
-               return collId;
-       }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DDRecord.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DDRecord.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DDRecord.java
deleted file mode 100644
index ec762c0..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DDRecord.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/**
- * 
- */
-package net.sf.taverna.t2.provenance.lineageservice.utils;
-
-/**
- * a simple bean to hold a database record from the DD table
- * 
- * @author paolo
- * 
- */
-public class DDRecord {
-
-       private String PFrom;
-       private String PTo;
-       private String vTo;
-       private String valTo;
-       private String vFrom;
-       private String valFrom;
-       private String iteration;
-       public boolean isInput;
-
-       @Override
-       public String toString() {
-               return new String("proc: " + PFrom + " vFrom: " + vFrom + " 
valFrom: "
-                               + valFrom + "PTo: " + PTo + " vTo: " + vTo + " 
valTo: " + valTo);
-       }
-
-       /**
-        * @return the vTo
-        */
-       public String getVTo() {
-               return vTo;
-       }
-
-       /**
-        * @param to
-        *            the vTo to set
-        */
-       public void setVTo(String to) {
-               vTo = to;
-       }
-
-       /**
-        * @return the valTo
-        */
-       public String getValTo() {
-               return valTo;
-       }
-
-       /**
-        * @param valTo
-        *            the valTo to set
-        */
-       public void setValTo(String valTo) {
-               this.valTo = valTo;
-       }
-
-       /**
-        * @return the vFrom
-        */
-       public String getVFrom() {
-               return vFrom;
-       }
-
-       /**
-        * @param from
-        *            the vFrom to set
-        */
-       public void setVFrom(String from) {
-               vFrom = from;
-       }
-
-       /**
-        * @return the valFrom
-        */
-       public String getValFrom() {
-               return valFrom;
-       }
-
-       /**
-        * @param valFrom
-        *            the valFrom to set
-        */
-       public void setValFrom(String valFrom) {
-               this.valFrom = valFrom;
-       }
-
-       /**
-        * @return the isInput
-        */
-       public boolean isInput() {
-               return isInput;
-       }
-
-       /**
-        * @param isInput
-        *            the isInput to set
-        */
-       public void setInput(boolean isInput) {
-               this.isInput = isInput;
-       }
-
-       /**
-        * @return the pFrom
-        */
-       public String getPFrom() {
-               return PFrom;
-       }
-
-       /**
-        * @param from
-        *            the pFrom to set
-        */
-       public void setPFrom(String from) {
-               PFrom = from;
-       }
-
-       /**
-        * @return the pTo
-        */
-       public String getPTo() {
-               return PTo;
-       }
-
-       /**
-        * @param to
-        *            the pTo to set
-        */
-       public void setPTo(String to) {
-               PTo = to;
-       }
-
-       /**
-        * @return the iteration
-        */
-       public String getIteration() {
-               return iteration;
-       }
-
-       /**
-        * @param iteration
-        *            the iteration to set
-        */
-       public void setIteration(String iteration) {
-               this.iteration = iteration;
-       }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataBinding.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataBinding.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataBinding.java
deleted file mode 100644
index 3b4f123..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataBinding.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package net.sf.taverna.t2.provenance.lineageservice.utils;
-
-public class DataBinding {
-       private String dataBindingId;
-       private Port port;
-       private String t2Reference;
-       private String workflowRunId;
-
-       public String getDataBindingId() {
-               return dataBindingId;
-       }
-
-       public void setDataBindingId(String dataBindingId) {
-               this.dataBindingId = dataBindingId;
-       }
-
-       public Port getPort() {
-               return port;
-       }
-
-       public void setPort(Port port) {
-               this.port = port;
-       }
-
-       @Override
-       public int hashCode() {
-               int result = 31 + ((dataBindingId == null) ? 0 : dataBindingId
-                               .hashCode());
-               return 31 * result + ((port == null) ? 0 : port.hashCode());
-       }
-
-       @Override
-       public String toString() {
-               StringBuilder builder = new StringBuilder();
-               builder.append("DataBinding [dataBindingId=");
-               builder.append(dataBindingId);
-               builder.append(", port=");
-               builder.append(port);
-               builder.append(", t2Reference=");
-               builder.append(t2Reference);
-               builder.append("]");
-               return builder.toString();
-       }
-
-       @Override
-       public boolean equals(Object obj) {
-               if (this == obj)
-                       return true;
-               if (obj == null)
-                       return false;
-               if (getClass() != obj.getClass())
-                       return false;
-               DataBinding other = (DataBinding) obj;
-               if (dataBindingId == null) {
-                       if (other.dataBindingId != null)
-                               return false;
-               } else if (!dataBindingId.equals(other.dataBindingId))
-                       return false;
-               if (port == null) {
-                       if (other.port != null)
-                               return false;
-               } else if (!port.equals(other.port))
-                       return false;
-               return true;
-       }
-
-       public String getT2Reference() {
-               return t2Reference;
-       }
-
-       public void setT2Reference(String t2Reference) {
-               this.t2Reference = t2Reference;
-       }
-
-       public String getWorkflowRunId() {
-               return workflowRunId;
-       }
-
-       public void setWorkflowRunId(String workflowRunId) {
-               this.workflowRunId = workflowRunId;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataLink.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataLink.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataLink.java
deleted file mode 100644
index db2e42a..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataLink.java
+++ /dev/null
@@ -1,127 +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.provenance.lineageservice.utils;
-
-/**
- * @author paolo
- * 
- */
-
-public class DataLink {
-       private String workflowId;
-       private String sourcePortId;
-       private String sourceProcessorName;
-       private String sourcePortName;
-       private String destinationPortId;
-       private String destinationProcessorName;
-       private String destinationPortName;
-
-       /**
-        * @return the workflowId
-        */
-       public String getWorkflowId() {
-               return workflowId;
-       }
-
-       /**
-        * @param workflowId
-        *            the workflowId to set
-        */
-       public void setWorkflowId(String workflowRunId) {
-               this.workflowId = workflowRunId;
-       }
-
-       public String getSourcePortId() {
-               return sourcePortId;
-       }
-
-       public void setSourcePortId(String sourcePortId) {
-               this.sourcePortId = sourcePortId;
-       }
-
-       /**
-        * @return the sourceProcessorName
-        */
-       public String getSourceProcessorName() {
-               return sourceProcessorName;
-       }
-
-       /**
-        * @param sourceProcessorName
-        *            the sourceProcessorName to set
-        */
-       public void setSourceProcessorName(String sourceProcessorName) {
-               this.sourceProcessorName = sourceProcessorName;
-       }
-
-       /**
-        * @return the sourcePortName
-        */
-       public String getSourcePortName() {
-               return sourcePortName;
-       }
-
-       /**
-        * @param sourcePortName
-        *            the sourcePortName to set
-        */
-       public void setSourcePortName(String sourcePortName) {
-               this.sourcePortName = sourcePortName;
-       }
-
-       public String getDestinationPortId() {
-               return destinationPortId;
-       }
-
-       public void setDestinationPortId(String destinationPortId) {
-               this.destinationPortId = destinationPortId;
-       }
-
-       /**
-        * @return the sourceprocessorNameRef
-        */
-       public String getDestinationProcessorName() {
-               return destinationProcessorName;
-       }
-
-       /**
-        * @param sourceprocessorNameRef
-        *            the sourceprocessorNameRef to set
-        */
-       public void setDestinationProcessorName(String 
destinationProcessorName) {
-               this.destinationProcessorName = destinationProcessorName;
-       }
-
-       /**
-        * @return the destinationPortName
-        */
-       public String getDestinationPortName() {
-               return destinationPortName;
-       }
-
-       /**
-        * @param destinationPortName
-        *            the destinationPortName to set
-        */
-       public void setDestinationPortName(String destinationPortName) {
-               this.destinationPortName = destinationPortName;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataValueExtractor.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataValueExtractor.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataValueExtractor.java
deleted file mode 100644
index 8480197..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataValueExtractor.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * 
- */
-package net.sf.taverna.t2.provenance.lineageservice.utils;
-
-/**
- * @author paolo
- * 
- */
-public interface DataValueExtractor {
-
-       /**
-        * extracts a printable string from a more complex object. This is not 
the
-        * same as toString() as it is applied to an object, rather than being a
-        * method on the object itself
-        * 
-        * @param complexContent
-        *            should really be a byte array FIXME
-        * @return
-        */
-       public String extractString(Object complexContent);
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataflowInvocation.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataflowInvocation.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataflowInvocation.java
deleted file mode 100644
index f838f79..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/DataflowInvocation.java
+++ /dev/null
@@ -1,118 +0,0 @@
-package net.sf.taverna.t2.provenance.lineageservice.utils;
-
-import java.sql.Timestamp;
-
-public class DataflowInvocation {
-       private String dataflowInvocationId;
-       private String workflowId;
-       private String workflowRunId;
-       private String parentProcessorEnactmentId;
-       private String inputsDataBindingId;
-       private String outputsDataBindingId;
-       private Timestamp invocationEnded;
-       private Timestamp invocationStarted;
-       private boolean completed;
-
-       @Override
-       public int hashCode() {
-               return 31 + ((dataflowInvocationId == null) ? 0 : 
dataflowInvocationId
-                               .hashCode());
-       }
-
-       @Override
-       public String toString() {
-               return "DataflowInvocation [dataflowInvocationId="
-                               + dataflowInvocationId + ", 
parentProcessorEnactmentId="
-                               + parentProcessorEnactmentId + ", 
workflowRunId="
-                               + workflowRunId + "]";
-       }
-
-       @Override
-       public boolean equals(Object obj) {
-               if (this == obj)
-                       return true;
-               if (obj == null)
-                       return false;
-               if (getClass() != obj.getClass())
-                       return false;
-               DataflowInvocation other = (DataflowInvocation) obj;
-               if (dataflowInvocationId == null) {
-                       if (other.dataflowInvocationId != null)
-                               return false;
-               } else if 
(!dataflowInvocationId.equals(other.dataflowInvocationId))
-                       return false;
-               return true;
-       }
-
-       public String getDataflowInvocationId() {
-               return dataflowInvocationId;
-       }
-
-       public void setDataflowInvocationId(String dataflowInvocationId) {
-               this.dataflowInvocationId = dataflowInvocationId;
-       }
-
-       public String getWorkflowId() {
-               return workflowId;
-       }
-
-       public void setWorkflowId(String workflowId) {
-               this.workflowId = workflowId;
-       }
-
-       public String getWorkflowRunId() {
-               return workflowRunId;
-       }
-
-       public void setWorkflowRunId(String workflowRunId) {
-               this.workflowRunId = workflowRunId;
-       }
-
-       public String getParentProcessorEnactmentId() {
-               return parentProcessorEnactmentId;
-       }
-
-       public void setParentProcessorEnactmentId(String 
parentProcessorEnactmentId) {
-               this.parentProcessorEnactmentId = parentProcessorEnactmentId;
-       }
-
-       public String getInputsDataBindingId() {
-               return inputsDataBindingId;
-       }
-
-       public void setInputsDataBindingId(String inputsDataBindingId) {
-               this.inputsDataBindingId = inputsDataBindingId;
-       }
-
-       public String getOutputsDataBindingId() {
-               return outputsDataBindingId;
-       }
-
-       public void setOutputsDataBindingId(String outputsDataBindingId) {
-               this.outputsDataBindingId = outputsDataBindingId;
-       }
-
-       public Timestamp getInvocationEnded() {
-               return invocationEnded;
-       }
-
-       public void setInvocationEnded(Timestamp invocationEnded) {
-               this.invocationEnded = invocationEnded;
-       }
-
-       public Timestamp getInvocationStarted() {
-               return invocationStarted;
-       }
-
-       public void setInvocationStarted(Timestamp invocationStarted) {
-               this.invocationStarted = invocationStarted;
-       }
-
-       public void setCompleted(boolean completed) {
-               this.completed = completed;
-       }
-
-       public boolean getCompleted() {
-               return completed;
-       }
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/NestedListNode.java
----------------------------------------------------------------------
diff --git 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/NestedListNode.java
 
b/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/NestedListNode.java
deleted file mode 100644
index c17a11d..0000000
--- 
a/taverna-provenanceconnector/src/main/java/net/sf/taverna/t2/provenance/lineageservice/utils/NestedListNode.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/**
- * 
- */
-package net.sf.taverna.t2.provenance.lineageservice.utils;
-
-/**
- * @author paolo
- * 
- */
-public class NestedListNode {
-       private String collectionT2Reference;
-       private String parentCollectionT2Reference;
-       private String workflowRunId;
-       private String processorName;
-       private String portName;
-       private String iteration;
-
-       /**
-        * @return the collectionT2Reference
-        */
-       public String getCollectionT2Reference() {
-               return collectionT2Reference;
-       }
-
-       /**
-        * @param collectionT2Reference
-        *            the collectionT2Reference to set
-        */
-       public void setCollectionT2Reference(String collectionT2Reference) {
-               this.collectionT2Reference = collectionT2Reference;
-       }
-
-       /**
-        * @return the parentCollIdRef
-        */
-       public String getParentCollIdRef() {
-               return parentCollectionT2Reference;
-       }
-
-       /**
-        * @param parentCollIdRef
-        *            the parentCollIdRef to set
-        */
-       public void setParentCollIdRef(String parentCollIdRef) {
-               this.parentCollectionT2Reference = parentCollIdRef;
-       }
-
-       /**
-        * @return the workflowRunId
-        */
-       public String getWorkflowRunId() {
-               return workflowRunId;
-       }
-
-       /**
-        * @param workflowRunId
-        *            the workflowRunId to set
-        */
-       public void setWorkflowRunId(String workflowRunId) {
-               this.workflowRunId = workflowRunId;
-       }
-
-       /**
-        * @return the processorNameRef
-        */
-       public String getProcessorName() {
-               return processorName;
-       }
-
-       /**
-        * @param nameRef
-        *            the processorNameRef to set
-        */
-       public void setProcessorName(String nameRef) {
-               processorName = nameRef;
-       }
-
-       /**
-        * @return the portName
-        */
-       public String getPortName() {
-               return portName;
-       }
-
-       /**
-        * @param portName
-        *            the portName to set
-        */
-       public void setPortName(String portName) {
-               this.portName = portName;
-       }
-
-       /**
-        * @return the iteration
-        */
-       public String getIteration() {
-               return iteration;
-       }
-
-       /**
-        * @param iteration
-        *            the iteration to set
-        */
-       public void setIteration(String iteration) {
-               this.iteration = iteration;
-       }
-}

Reply via email to