You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@taverna.apache.org by re...@apache.org on 2015/03/23 17:38:05 UTC

[21/51] [partial] incubator-taverna-engine git commit:

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/ProcessorInputPort.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/ProcessorInputPort.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/ProcessorInputPort.java
deleted file mode 100644
index ebd8d86..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/ProcessorInputPort.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.workflowmodel;
-
-/**
- * Input port on a Processor, is both a filtering input port and a processor
- * port
- * 
- * @author Tom Oinn
- */
-public interface ProcessorInputPort extends FilteringInputPort, ProcessorPort {
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/ProcessorOutputPort.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/ProcessorOutputPort.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/ProcessorOutputPort.java
deleted file mode 100644
index fda5d01..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/ProcessorOutputPort.java
+++ /dev/null
@@ -1,31 +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.workflowmodel;
-
-/**
- * Input port on a Processor, is both an event forwarding output port and a
- * processor port
- * 
- * @author Tom Oinn
- */
-public interface ProcessorOutputPort extends EventForwardingOutputPort,
-		ProcessorPort {
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/ProcessorPort.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/ProcessorPort.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/ProcessorPort.java
deleted file mode 100644
index 2491159..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/ProcessorPort.java
+++ /dev/null
@@ -1,32 +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.workflowmodel;
-
-/**
- * An {@link ProcessorInputPort} or {@link ProcessorOutputPort} belonging to a
- * {@link Processor}.
- */
-public interface ProcessorPort extends Port {
-	/**
-	 * Get the Processor to which this port belongs
-	 */
-	public Processor getProcessor();
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/RunDeletionListener.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/RunDeletionListener.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/RunDeletionListener.java
deleted file mode 100644
index f595d50..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/RunDeletionListener.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * 
- */
-package net.sf.taverna.t2.workflowmodel;
-
-/**
- * A RunDeletionListener is notified when a run is deleted. It is then able to
- * take any specific action needed to deal with the deletion of the run, for
- * example deleting data that is not held within Taverna.
- * 
- * @author alanrw
- */
-public interface RunDeletionListener {
-	void deleteRun(String runToDelete);
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/TokenProcessingEntity.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/TokenProcessingEntity.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/TokenProcessingEntity.java
deleted file mode 100644
index 777ca63..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/TokenProcessingEntity.java
+++ /dev/null
@@ -1,57 +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.workflowmodel;
-
-import static net.sf.taverna.t2.annotation.HierarchyRole.CHILD;
-
-import java.util.List;
-
-import net.sf.taverna.t2.annotation.HierarchyTraversal;
-import net.sf.taverna.t2.workflowmodel.processor.iteration.IterationTypeMismatchException;
-
-/**
- * Superinterface for all classes within the workflow model which consume and
- * emit workflow data tokens.
- * 
- * @author Tom Oinn
- */
-public interface TokenProcessingEntity extends NamedWorkflowEntity {
-	@HierarchyTraversal(hierarchies = { "workflowStructure" }, role = { CHILD })
-	List<? extends EventHandlingInputPort> getInputPorts();
-
-	@HierarchyTraversal(hierarchies = { "workflowStructure" }, role = { CHILD })
-	List<? extends EventForwardingOutputPort> getOutputPorts();
-
-	/**
-	 * Run a collection level based type check on the token processing entity
-	 * 
-	 * @return true if the typecheck was successful or false if the check failed
-	 *         because there were preconditions missing such as unsatisfied
-	 *         input types
-	 * @throws IterationTypeMismatchException
-	 *             if the typing occurred but didn't match because of an
-	 *             iteration mismatch
-	 * @throws InvalidDataflowException
-	 *             if the entity depended on a dataflow that was not valid
-	 */
-	boolean doTypeCheck() throws IterationTypeMismatchException,
-			InvalidDataflowException;
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/WorkflowItem.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/WorkflowItem.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/WorkflowItem.java
deleted file mode 100644
index c50e50f..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/WorkflowItem.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package net.sf.taverna.t2.workflowmodel;
-
-import net.sf.taverna.t2.workflowmodel.processor.dispatch.DispatchStack;
-import net.sf.taverna.t2.workflowmodel.processor.iteration.IterationStrategy;
-
-/**
- * An item that forms a structural part of a Workflow.
- * 
- * Workflow item are {@link Dataflow}, its {@link Processor} and {@link Port}
- * s, and other deeper structural parts like {@link DispatchStack} and
- * {@link IterationStrategy}.
- * 
- * @author Stian Soiland-Reyes
- */
-public interface WorkflowItem {
-	// FIXME: Should this be deleted?
-    // TODO: Implement this for every WorkflowItem
-    
-//    /**
-//     * Mark this item (and its child WorkflowItems) as immutable.
-//     * 
-//     * Subsequent edits to its structural components will
-//     * throw a RuntimeException like UnsupportedOperationException.
-//     * 
-//     */
-//    public void setImmutable();
-    
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/WorkflowStructureException.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/WorkflowStructureException.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/WorkflowStructureException.java
deleted file mode 100644
index 2cbbfbc..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/WorkflowStructureException.java
+++ /dev/null
@@ -1,36 +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.workflowmodel;
-
-/**
- * Thrown predominantly at runtime under circumstances that suggest an
- * inconsistancy in the workflow model. This might include attempting to feed
- * data into a port that doesn't exist or has an unknown name or similar errors.
- * 
- * @author Tom OInn
- */
-public class WorkflowStructureException extends RuntimeException {
-	private static final long serialVersionUID = 1L;
-
-	public WorkflowStructureException(String string) {
-		super(string);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/DisabledActivityHealthChecker.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/DisabledActivityHealthChecker.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/DisabledActivityHealthChecker.java
deleted file mode 100644
index 2946a9d..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/DisabledActivityHealthChecker.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/**
- * 
- */
-package net.sf.taverna.t2.workflowmodel.health;
-
-import static net.sf.taverna.t2.visit.VisitReport.Status.SEVERE;
-import static net.sf.taverna.t2.workflowmodel.health.HealthCheck.DISABLED;
-
-import java.util.List;
-
-import net.sf.taverna.t2.visit.VisitReport;
-import net.sf.taverna.t2.workflowmodel.processor.activity.DisabledActivity;
-
-/**
- * Check on the health of a DisabledActivity
- * 
- * @author alanrw
- * 
- */
-public class DisabledActivityHealthChecker implements
-		HealthChecker<DisabledActivity> {
-
-	/**
-	 * The visitor can visit DisabledActivitys.
-	 */
-	@Override
-	public boolean canVisit(Object o) {
-		return ((o != null) && (o instanceof DisabledActivity));
-	}
-
-	/**
-	 * The check is not time consuming as it simply constructs a VisitReport
-	 */
-	@Override
-	public boolean isTimeConsuming() {
-		return false;
-	}
-
-	/**
-	 * The result of the visit is simply a VisitReport to state that the service
-	 * is not available.
-	 */
-	@Override
-	public VisitReport visit(DisabledActivity o, List<Object> ancestry) {
-		return new VisitReport(HealthCheck.getInstance(), o,
-				"Service is not available", DISABLED, SEVERE);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/HealthCheck.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/HealthCheck.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/HealthCheck.java
deleted file mode 100644
index 75b10d1..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/HealthCheck.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * 
- */
-package net.sf.taverna.t2.workflowmodel.health;
-
-import net.sf.taverna.t2.visit.VisitKind;
-import net.sf.taverna.t2.visit.Visitor;
-
-/**
- * A HealthCheck is a kind of visit that determines if the corresponding object
- * in a workflow (normally an Activity) will work during a workflow run.
- * 
- * @author alanrw
- * 
- */
-public class HealthCheck extends VisitKind {
-	/*
-	 * The following values indicate the type of results that can be associated
-	 * with a VisitReport generated by a health-checking visitor.
-	 */
-
-	public static final int NO_PROBLEM = 0;
-	public static final int NOT_IMPLEMENTED = 1;
-	public static final int CONNECTION_PROBLEM = 2;
-	public static final int INVALID_URL = 3;
-	public static final int TIME_OUT = 4;
-	public static final int IO_PROBLEM = 5;
-	public static final int MISSING_CLASS = 6;
-	public static final int MISSING_DEPENDENCY = 7;
-	public static final int INVALID_SCRIPT = 8;
-	public static final int NO_CONFIGURATION = 9;
-	public static final int NULL_VALUE = 10;
-	public static final int DEFAULT_VALUE = 11;
-	public static final int BAD_WSDL = 12;
-	public static final int NOT_HTTP = 13;
-	public static final int UNSUPPORTED_STYLE = 14;
-	public static final int UNKNOWN_OPERATION = 15;
-	public static final int NO_ENDPOINTS = 16;
-	public static final int INVALID_CONFIGURATION = 17;
-	public static final int NULL_DATATYPE = 18;
-	public static final int DISABLED = 19;
-	public static final int DATATYPE_SOURCE = 20;
-	public static final int UNRECOGNIZED = 21;
-    public static final int LOOP_CONNECTION = 22;
-    public static final int UNMANAGED_LOCATION = 23;
-    public static final int INCOMPATIBLE_MIMETYPES = 24;
-    public static final int HIGH_PORT_DEPTH = 25;
-
-    @SuppressWarnings("rawtypes")
-	private static final Class healthCheckerClass = HealthChecker.class;
-
-    /**
-	 * Sub-classes of HealthChecker are used to perform HealthCheck visits.
-	 */
-	@Override
-	@SuppressWarnings("unchecked")
-	public Class<? extends Visitor<?>> getVisitorClass() {
-		return healthCheckerClass;
-	}
-
-	private static class Singleton {
-		private static HealthCheck instance = new HealthCheck();
-	}
-
-	public static HealthCheck getInstance() {
-		return Singleton.instance;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/HealthChecker.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/HealthChecker.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/HealthChecker.java
deleted file mode 100644
index 589766a..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/HealthChecker.java
+++ /dev/null
@@ -1,37 +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.workflowmodel.health;
-
-import net.sf.taverna.t2.visit.Visitor;
-
-/**
- * An SPI interface whose implementation performs a health check on an arbitrary
- * instance.
- * 
- * @author Stuart Owen
- * @author David Withers
- * 
- * @param <Type>
- *            the type of the item being checked
- */
-public interface HealthChecker<T> extends Visitor<T> {
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/RemoteHealthChecker.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/RemoteHealthChecker.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/RemoteHealthChecker.java
deleted file mode 100644
index 725dd96..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/RemoteHealthChecker.java
+++ /dev/null
@@ -1,220 +0,0 @@
-/**
- * 
- */
-package net.sf.taverna.t2.workflowmodel.health;
-
-import static java.lang.System.currentTimeMillis;
-import static java.net.HttpURLConnection.HTTP_GONE;
-import static java.net.HttpURLConnection.HTTP_INTERNAL_ERROR;
-import static java.net.HttpURLConnection.HTTP_NOT_FOUND;
-import static java.net.HttpURLConnection.HTTP_OK;
-import static net.sf.taverna.t2.visit.VisitReport.Status.SEVERE;
-import static net.sf.taverna.t2.visit.VisitReport.Status.WARNING;
-import static net.sf.taverna.t2.workflowmodel.health.HealthCheck.CONNECTION_PROBLEM;
-import static net.sf.taverna.t2.workflowmodel.health.HealthCheck.INVALID_URL;
-import static net.sf.taverna.t2.workflowmodel.health.HealthCheck.IO_PROBLEM;
-import static net.sf.taverna.t2.workflowmodel.health.HealthCheck.NOT_HTTP;
-import static net.sf.taverna.t2.workflowmodel.health.HealthCheck.NO_PROBLEM;
-import static net.sf.taverna.t2.workflowmodel.health.HealthCheck.TIME_OUT;
-
-import java.io.IOException;
-import java.lang.ref.WeakReference;
-import java.net.HttpURLConnection;
-import java.net.MalformedURLException;
-import java.net.SocketTimeoutException;
-import java.net.URL;
-import java.net.URLConnection;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
-
-import javax.net.ssl.SSLException;
-
-import net.sf.taverna.t2.visit.VisitReport;
-import net.sf.taverna.t2.visit.VisitReport.Status;
-import net.sf.taverna.t2.workflowmodel.processor.activity.Activity;
-
-import org.apache.log4j.Logger;
-
-/**
- * A RemoteHealthChecker performs a visit to an Activity by trying to contact a
- * specific endpoint
- * 
- * @author alanrw
- */
-public abstract class RemoteHealthChecker implements HealthChecker<Object> {
-	public static final long ENDPOINT_EXPIRY_MILLIS = 30 * 1000; // 30 seconds
-	private static final Logger logger = Logger.getLogger(RemoteHealthChecker.class);
-	private static int timeout = 10000; // TODO Manage via bean?
-	private static long endpointExpiryMillis = ENDPOINT_EXPIRY_MILLIS;
-
-	public static int getTimeoutInSeconds() {
-		return timeout / 1000;
-	}
-
-	public static void setTimeoutInSeconds(int timeout) {
-		RemoteHealthChecker.timeout = timeout * 1000;
-	}
-
-	public static long getEndpointExpiryInMilliseconds() {
-		return endpointExpiryMillis;
-	}
-
-	public static void setEndpointExpiryInMilliseconds(int endpointExpiry) {
-		endpointExpiryMillis = endpointExpiry;
-	}
-
-	/**
-	 * Clear the cached endpoint statuses. Normally {@link RemoteHealthChecker}
-	 * will only check an endpoint again if it has been more than
-	 * {@link #getEndpointExpiryInMilliseconds()} milliseconds since last check,
-	 * by default 30 seconds.
-	 */
-	public static void clearCachedEndpointStatus() {
-		visitReportsByEndpoint.clear();
-	}
-
-	private static Map<String, WeakReference<VisitReport>> visitReportsByEndpoint = new ConcurrentHashMap<>();
-
-	/**
-	 * Try to contact the specified endpoint as part of the health-checking of
-	 * the Activity.
-	 * 
-	 * @param activity
-	 *            The activity that is being checked
-	 * @param endpoint
-	 *            The String corresponding to the URL of the endpoint
-	 * 
-	 * @return
-	 */
-	public static VisitReport contactEndpoint(Activity<?> activity,
-			String endpoint) {
-		WeakReference<VisitReport> cachedReportRef = visitReportsByEndpoint
-				.get(endpoint);
-		VisitReport cachedReport = null;
-		if (cachedReportRef != null)
-			cachedReport = cachedReportRef.get();
-		if (cachedReport != null) {
-			long now = currentTimeMillis();
-			long age = now - cachedReport.getCheckTime();
-			if (age < getEndpointExpiryInMilliseconds()) {
-				VisitReport newReport;
-				try {
-					// Make a copy
-					newReport = cachedReport.clone();
-					// But changed the subject
-					newReport.setSubject(activity);
-					logger.info("Returning cached report for endpoint "
-							+ endpoint + ": " + newReport);
-					return newReport;
-				} catch (CloneNotSupportedException e) {
-					logger.warn("Could not clone VisitReport " + cachedReport,
-							e);
-				}
-			}
-		}
-		
-		Status status = Status.OK;
-		String message = "Responded OK";
-		int resultId = NO_PROBLEM;
-		URLConnection connection = null;
-		int responseCode = HTTP_OK;
-		Exception ex = null;
-		try {
-			URL url = new URL(endpoint);
-			connection = url.openConnection();
-			connection.setReadTimeout(timeout);
-			connection.setConnectTimeout(timeout);
-			if (connection instanceof HttpURLConnection) {
-				HttpURLConnection httpConnection = (HttpURLConnection) connection;
-				httpConnection.setRequestMethod("HEAD");
-				httpConnection.connect();
-				responseCode = httpConnection.getResponseCode();
-				if (responseCode != HTTP_OK) {
-					try {
-						if ((connection != null)
-								&& (connection.getInputStream() != null))
-							connection.getInputStream().close();
-					} catch (IOException e) {
-						logger.info(
-								"Unable to close connection to " + endpoint, e);
-					}
-					connection = url.openConnection();
-					connection.setReadTimeout(timeout);
-					connection.setConnectTimeout(timeout);
-					httpConnection = (HttpURLConnection) connection;
-					httpConnection.setRequestMethod("GET");
-					httpConnection.connect();
-					responseCode = httpConnection.getResponseCode();
-				}
-				if (responseCode != HTTP_OK) {
-					if ((responseCode > HTTP_INTERNAL_ERROR)) {
-						status = WARNING;
-						message = "Unexpected response";
-						resultId = CONNECTION_PROBLEM;
-					} else if ((responseCode == HTTP_NOT_FOUND)
-							|| (responseCode == HTTP_GONE)) {
-						status = WARNING;
-						message = "Bad response";
-						resultId = CONNECTION_PROBLEM;
-					}
-				}
-			} else {
-			    connection.connect();
-				status = WARNING;
-				message = "Not HTTP";
-				resultId = NOT_HTTP;
-			}
-		} catch (MalformedURLException e) {
-			status = SEVERE;
-			message = "Invalid URL";
-			resultId = INVALID_URL;
-			ex = e;
-		} catch (SocketTimeoutException e) {
-			status = SEVERE;
-			message = "Timed out";
-			resultId = TIME_OUT;
-			ex = e;
-		} catch (SSLException e){
-			// Some kind of error when trying to establish an HTTPS connection to the endpoint
-			status = SEVERE;
-			message = "HTTPS connection problem";
-			resultId = IO_PROBLEM; // SSLException is an IOException
-			ex = e;
-		} catch (IOException e) {
-			status = SEVERE;
-			message = "Read problem";
-			resultId = IO_PROBLEM;
-			ex = e;
-		} finally {
-			try {
-				if ((connection != null)
-						&& (connection.getInputStream() != null))
-					connection.getInputStream().close();
-			} catch (IOException e) {
-				logger.info("Unable to close connection to " + endpoint, e);
-			}
-		}
-		
-		VisitReport vr = new VisitReport(HealthCheck.getInstance(), activity, message,
-				resultId, status);
-		vr.setProperty("endpoint", endpoint);
-		if (ex != null)
-		    vr.setProperty("exception", ex);
-		if (responseCode != HTTP_OK)
-			vr.setProperty("responseCode", Integer.toString(responseCode));
-		if (resultId == TIME_OUT)
-			vr.setProperty("timeOut", Integer.toString(timeout));
-		visitReportsByEndpoint.put(endpoint, new WeakReference<>(vr));
-		return vr;
-	}
-
-	/**
-	 * A remote health-check is time consuming as it tries to contact an
-	 * external resource.
-	 */
-	@Override
-	public boolean isTimeConsuming() {
-		return true;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/UnrecognizedActivityHealthChecker.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/UnrecognizedActivityHealthChecker.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/UnrecognizedActivityHealthChecker.java
deleted file mode 100644
index 478603d..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/UnrecognizedActivityHealthChecker.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/**
- * 
- */
-package net.sf.taverna.t2.workflowmodel.health;
-
-import static net.sf.taverna.t2.visit.VisitReport.Status.SEVERE;
-import static net.sf.taverna.t2.workflowmodel.health.HealthCheck.UNRECOGNIZED;
-
-import java.util.List;
-
-import net.sf.taverna.t2.visit.VisitReport;
-import net.sf.taverna.t2.workflowmodel.processor.activity.UnrecognizedActivity;
-
-/**
- * Check on the health of a UnrecognizedActivity
- * 
- * @author alanrw
- * 
- */
-public class UnrecognizedActivityHealthChecker implements
-		HealthChecker<UnrecognizedActivity> {
-
-	/**
-	 * The visitor can visit {@link UnrecognizedActivity}s.
-	 */
-	@Override
-	public boolean canVisit(Object o) {
-		return ((o != null) && (o instanceof UnrecognizedActivity));
-	}
-
-	/**
-	 * The check is not time consuming as it simply constructs a VisitReport
-	 */
-	@Override
-	public boolean isTimeConsuming() {
-		return false;
-	}
-
-	/**
-	 * The result of the visit is simply a VisitReport to state that the service
-	 * is not available.
-	 */
-	@Override
-	public VisitReport visit(UnrecognizedActivity o, List<Object> ancestry) {
-		return new VisitReport(HealthCheck.getInstance(), o,
-				"Service is unrecognized", UNRECOGNIZED, SEVERE);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/package.html
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/package.html b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/package.html
deleted file mode 100644
index 6cbc3b5..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/health/package.html
+++ /dev/null
@@ -1,6 +0,0 @@
-<body>
-
-A package that contains a set of classes to be used in testing a Dataflow prior to invocation.<br>
-These can carry our various tests such as a service endpoint being accessible. HealthChecker provides an
-SPI extension point to allow 3rd party developers to implement their own Activity checkers.
-</body>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/package.html
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/package.html b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/package.html
deleted file mode 100644
index abaa693..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/package.html
+++ /dev/null
@@ -1,3 +0,0 @@
-<body>
-Defines classes and interfaces for workflow level entities and events.
-</body>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AbstractActivity.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AbstractActivity.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AbstractActivity.java
deleted file mode 100644
index 3a13c1b..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AbstractActivity.java
+++ /dev/null
@@ -1,264 +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.workflowmodel.processor.activity;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import net.sf.taverna.t2.annotation.AbstractAnnotatedThing;
-import net.sf.taverna.t2.annotation.annotationbeans.MimeType;
-import net.sf.taverna.t2.reference.ExternalReferenceSPI;
-import net.sf.taverna.t2.workflowmodel.EditException;
-import net.sf.taverna.t2.workflowmodel.Edits;
-import net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean;
-import net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean;
-import net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityPortsDefinitionBean;
-
-import org.apache.log4j.Logger;
-
-/**
- * Convenience abstract superclass for generic Activity instances. Parameterised
- * on the configuration type used by the Activity implementation - when this
- * object is serialised the getConfiguration method is used to store specific
- * details of the activity, this is then used immediately after a call to the
- * default constructor when deserialising from XML on a workflow load.
- * <p>
- * This class holds port sets and mappings, and returns references directly to
- * them rather than copies thereof.
- * <p>
- * If you're writing an abstract activity (one that cannot be directly invoked)
- * you should extend this class for convenience. This can be useful when you
- * wish to specify some kind of abstract definition of a process which will be
- * bound at workflow invocation time to a particular concrete activity through
- * the action of a custom dispatch stack layer (which you will also provide)
- *
- * @author Tom Oinn
- * @author Stuart Owen
- *
- * @param <ConfigType>
- *            type of configuration object to be used to hold configuration
- *            information
- */
-public abstract class AbstractActivity<ConfigType> extends
-		AbstractAnnotatedThing<Activity<?>> implements Activity<ConfigType> {
-	private static Logger logger = Logger.getLogger(AbstractActivity.class);
-
-	private Edits edits;
-
-	protected Map<String, String> inputPortMapping = new HashMap<>();
-	protected Map<String, String> outputPortMapping = new HashMap<>();
-	protected Set<ActivityOutputPort> outputPorts = new HashSet<>();
-	protected Set<ActivityInputPort> inputPorts = new HashSet<>();
-
-	@Override
-	public void setEdits(Edits edits) {
-		if (edits == null)
-			throw new IllegalArgumentException("Edits can not be null.");
-		this.edits = edits;
-	}
-
-	/**
-	 * @return the edits
-	 */
-	public Edits getEdits() {
-		if (edits == null)
-			throw new IllegalStateException(
-					"Unable to run this meathod until setEdits has been called");
-		return edits;
-	}
-
-	/**
-	 * @see net.sf.taverna.t2.workflowmodel.processor.activity.Activity#configure(java.lang.Object)
-	 */
-	@Override
-	public abstract void configure(ConfigType conf)
-			throws ActivityConfigurationException;
-
-	/**
-	 * @see net.sf.taverna.t2.workflowmodel.processor.activity.Activity#getConfiguration()
-	 */
-	@Override
-	public abstract ConfigType getConfiguration();
-
-	/*
-	 * (non-Javadoc)
-	 *
-	 * @see net.sf.taverna.t2.workflowmodel.processor.activity.Activity#getInputPortMapping()
-	 */
-	@Override
-	public final Map<String, String> getInputPortMapping() {
-		return this.inputPortMapping;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 *
-	 * @see net.sf.taverna.t2.workflowmodel.processor.activity.Activity#getInputPorts()
-	 */
-	@Override
-	public final Set<ActivityInputPort> getInputPorts() {
-		return inputPorts;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 *
-	 * @see net.sf.taverna.t2.workflowmodel.processor.activity.Activity#getOutputPortMapping()
-	 */
-	@Override
-	public final Map<String, String> getOutputPortMapping() {
-		return this.outputPortMapping;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 *
-	 * @see net.sf.taverna.t2.workflowmodel.processor.activity.Activity#getOutputPorts()
-	 */
-	@Override
-	public final Set<ActivityOutputPort> getOutputPorts() {
-		return outputPorts;
-	}
-
-	/**
-	 * Creates and adds a new input port with the provided properties.
-	 *
-	 * @see #removeInputs()
-	 * @param portName -
-	 *            the name of the port to be created.
-	 * @param portDepth -
-	 *            the depth of the port to be created.
-	 */
-	protected void addInput(
-			String portName,
-			int portDepth,
-			boolean allowsLiteralValues,
-			List<Class<? extends ExternalReferenceSPI>> handledReferenceSchemes,
-			Class<?> translatedElementClass) {
-		if (handledReferenceSchemes == null)
-			handledReferenceSchemes = Collections.emptyList();
-		inputPorts.add(getEdits().createActivityInputPort(portName, portDepth,
-				allowsLiteralValues, handledReferenceSchemes,
-				translatedElementClass));
-	}
-
-	/**
-	 * Creates and adds a new output port with the provided properties.
-	 *
-	 * @see #removeOutputs()
-	 * @param portName -
-	 *            the name of the port to be created.
-	 * @param portDepth -
-	 *            the depth of the port to be created
-	 * @param granularDepth -
-	 *            the granular depth of the port to be created
-	 * @param mimeTypes -
-	 *            a List of String representations of the MIME type this port
-	 *            will emit as outputs.
-	 */
-	protected void addOutput(String portName, int portDepth, int granularDepth) {
-		outputPorts.add(getEdits().createActivityOutputPort(
-				portName, portDepth, granularDepth));
-	}
-
-	/**
-	 * Convenience method, creates a new output port with depth and granular
-	 * depth both set to the value for depth, i.e. no streaming behaviour.
-	 * <p>
-	 *
-	 * @see #removeOutputs()
-	 * @param portName
-	 * @param portDepth
-	 */
-	protected void addOutput(String portName, int portDepth) {
-		addOutput(portName, portDepth, portDepth);
-	}
-
-	/**
-	 * <p>
-	 * Simplifies configuring the Activity input and output ports if its
-	 * ConfigType is an implementation of {@link ActivityPortsDefinitionBean}
-	 * </p>
-	 * <p>
-	 * For an Activity that has ports that are defined dynamically it is natural
-	 * that is ConfigType will not implement this interface.
-	 * </p>
-	 *
-	 * @param configBean
-	 */
-	protected void configurePorts(ActivityPortsDefinitionBean configBean) {
-		removeInputs();
-		for (ActivityInputPortDefinitionBean inputDef : configBean
-				.getInputPortDefinitions()) {
-			addInput(inputDef.getName(), inputDef.getDepth(), inputDef
-					.getAllowsLiteralValues(), inputDef
-					.getHandledReferenceSchemes(), inputDef
-					.getTranslatedElementType());
-			// TODO - use the mime types from the config bean if required,
-			// probably best handled elsewhere though
-		}
-		removeOutputs();
-
-		for (ActivityOutputPortDefinitionBean outputDef : configBean
-				.getOutputPortDefinitions()) {
-			ActivityOutputPort createActivityOutputPort = getEdits()
-					.createActivityOutputPort(outputDef.getName(),
-							outputDef.getDepth(), outputDef.getGranularDepth());
-//			addOutput(outputDef.getName(), outputDef.getDepth(), outputDef
-//					.getGranularDepth());
-			outputPorts.add(createActivityOutputPort);
-			// add the mime types as annotations
-			for (String mimeType : outputDef.getMimeTypes())
-				setMimeType(createActivityOutputPort, mimeType);
-		}
-	}
-
-	private void setMimeType(ActivityOutputPort outputPort, String mimeType) {
-		MimeType mimeTypeAnnotation = new MimeType();
-		mimeTypeAnnotation.setText(mimeType);
-		try {
-			getEdits()
-					.getAddAnnotationChainEdit(outputPort, mimeTypeAnnotation)
-					.doEdit();
-		} catch (EditException e) {
-			logger.error(e);
-		}
-	}
-
-	/**
-	 * Remove existing output ports.
-	 */
-	protected void removeOutputs() {
-		outputPorts.clear();
-	}
-
-	/**
-	 * Remove existing input ports
-	 *
-	 */
-	protected void removeInputs() {
-		inputPorts.clear();
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AbstractAsynchronousActivity.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AbstractAsynchronousActivity.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AbstractAsynchronousActivity.java
deleted file mode 100644
index 4dd0409..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AbstractAsynchronousActivity.java
+++ /dev/null
@@ -1,81 +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.workflowmodel.processor.activity;
-
-import java.util.Map;
-
-import net.sf.taverna.t2.reference.T2Reference;
-
-/**
- * Abstract superclass for asynchronous activities. Activity providers should only
- * have to implement the configuration and invocation methods to have a fully
- * functional activity - serialisation and deserialisation are handled
- * automatically.
- * 
- * @author Tom Oinn
- * 
- * @param <ConfigType>
- *            the configuration type used for this activity
- */
-public abstract class AbstractAsynchronousActivity<ConfigType> extends
-		AbstractActivity<ConfigType> implements AsynchronousActivity<ConfigType> {
-
-	/**
-	 * Called immediately after object construction by the deserialisation
-	 * framework with a configuration bean built from the auto-generated XML.
-	 * <p>
-	 * This method is responsible for the creation of input and output ports,
-	 * something that is currently done in the constructor of the Taverna 1
-	 * Processor class.
-	 */
-	@Override
-	public abstract void configure(ConfigType conf)
-			throws ActivityConfigurationException;
-
-	/**
-	 * Get a configuration bean representing the definition of the activity. This
-	 * bean should contain enough information to rebuild the input and output
-	 * port sets, mappings are explicitly handled by the serialisation framework
-	 * but the ports are assumed to be generated during the configuration stage
-	 * rather than explicitly stored.
-	 */
-	@Override
-	public abstract ConfigType getConfiguration();
-
-	/**
-	 * Request an asynchronous invocation of the activity on the specified data.
-	 * The data items are named relative to the input port names of the activity
-	 * (as opposed to the parent processor), the invocation layer is responsible
-	 * for translating these appropriately before this method is called. The
-	 * callback object provides access to a DataManager instance that can be
-	 * used to resolve the entity identifiers in the data map, push results up
-	 * and signal failure conditions.
-	 * <p>
-	 * This method must not block! However it happens this method must return
-	 * immediately after creating the new activity invocation. Do not do any
-	 * heavy lifting in the body of this method without creating a new thread
-	 * specifically for it.
-	 */
-	@Override
-	public abstract void executeAsynch(Map<String, T2Reference> data,
-			AsynchronousActivityCallback callback);
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/Activity.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/Activity.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/Activity.java
deleted file mode 100644
index 4bec988..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/Activity.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007-2008 The University of Manchester
- *
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.t2.workflowmodel.processor.activity;
-
-import static net.sf.taverna.t2.annotation.HierarchyRole.CHILD;
-
-import java.util.Map;
-import java.util.Set;
-
-import net.sf.taverna.t2.annotation.Annotated;
-import net.sf.taverna.t2.annotation.HierarchyTraversal;
-import net.sf.taverna.t2.workflowmodel.Configurable;
-import net.sf.taverna.t2.workflowmodel.Edits;
-
-/**
- * Defines a single abstract or concrete invokable activity. Each Processor
- * contains at least one of these and may contain many, similarly the dispatch
- * stack may create new Activity instances from e.g. dynamic lookup or
- * resolution of an abstract activity to a concrete activity or set of
- * activities.
- * 
- * @param <ConfigurationType>
- *            the ConfigurationType associated with the Activity. This is an
- *            arbitrary java class that provides details on how the Activity is
- *            configured..
- * @author Tom Oinn
- * @author David Withers
- */
-public interface Activity<ConfigurationType> extends Annotated<Activity<?>>,
-		Configurable<ConfigurationType> {
-	/**
-	 * An Activity contains a set of named input ports. Names must be unique
-	 * within this set.
-	 *
-	 * @return the set of input ports for this activity
-	 */
-	@HierarchyTraversal(hierarchies = { "workflowStructure" }, role = { CHILD })
-	Set<ActivityInputPort> getInputPorts();
-
-	/**
-	 * A processor may have different input port names to the activity or
-	 * activities it contains. This map is keyed on the processor input port
-	 * names with the corresponding value being the activity port name.
-	 * 
-	 * @return mapping from processor input port names to activity input port
-	 *         names
-	 */
-	Map<String, String> getInputPortMapping();
-
-	/**
-	 * An Activity contains a set of named output ports. As with input ports
-	 * names must be unique within the set.
-	 * 
-	 * @return
-	 */
-	@HierarchyTraversal(hierarchies = { "workflowStructure" }, role = { CHILD })
-	Set<ActivityOutputPort> getOutputPorts();
-
-	/**
-	 * Outputs of the activity may be named differently to those of the
-	 * processor. This map is keyed on an activity output port name with each
-	 * corresponding value being the processor output port name to which the
-	 * activity output is bound.
-	 * 
-	 * @return mapping from activity output port name to processor output port
-	 *         name
-	 */
-	Map<String, String> getOutputPortMapping();
-
-	@Override
-	abstract void configure(ConfigurationType conf)
-			throws ActivityConfigurationException;
-
-	void setEdits(Edits edits);
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityAndBeanWrapper.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityAndBeanWrapper.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityAndBeanWrapper.java
deleted file mode 100644
index e5a619e..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityAndBeanWrapper.java
+++ /dev/null
@@ -1,62 +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.workflowmodel.processor.activity;
-
-import java.awt.datatransfer.Transferable;
-
-/**
- * Used when dragging activities from the palette onto "something". Place it
- * inside a {@link Transferable} when doing a drag operation. Contains an
- * {@link Activity} and its configuration bean.
- * 
- * @author Ian Dunlop
- */
-public class ActivityAndBeanWrapper {
-	/** The Activity being dragged */
-	private Activity<?> activity;
-	/** The bean used to configure the activity */
-	private Object bean;
-	private String name;
-
-	public Activity<?> getActivity() {
-		return activity;
-	}
-
-	public void setActivity(Activity<?> activity) {
-		this.activity = activity;
-	}
-
-	public Object getBean() {
-		return bean;
-	}
-
-	public void setBean(Object bean) {
-		this.bean = bean;
-	}
-
-	public String getName() {
-		return name;
-	}
-
-	public void setName(String name) {
-		this.name = name;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityConfigurationException.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityConfigurationException.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityConfigurationException.java
deleted file mode 100644
index 0774b40..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityConfigurationException.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007-2008 The University of Manchester   
- * 
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *    
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *    
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.t2.workflowmodel.processor.activity;
-
-import net.sf.taverna.t2.workflowmodel.ConfigurationException;
-
-/**
- * Thrown when attempting to configure an Activity instance with an invalid
- * configuration. Causes may include actual configuration errors, unavailable
- * activities etc.
- * 
- * @author Tom Oinn
- */
-public class ActivityConfigurationException extends ConfigurationException {
-	private static final long serialVersionUID = 6940385954331153900L;
-
-	/**
-	 * @param msg
-	 *            a message describing the reason for the exception.
-	 */
-	public ActivityConfigurationException(String msg) {
-		super(msg);
-	}
-
-	/**
-	 * @param cause
-	 *            a previous exception that caused this
-	 *            ActivityConfigurationException to be thrown.
-	 */
-	public ActivityConfigurationException(Throwable cause) {
-		super(cause);
-	}
-
-	/**
-	 * @param msg
-	 *            a message describing the reason for the exception.
-	 * @param cause
-	 *            a previous exception that caused this
-	 *            ActivityConfigurationException to be thrown.
-	 */
-	public ActivityConfigurationException(String msg, Throwable cause) {
-		super(msg, cause);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityFactory.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityFactory.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityFactory.java
deleted file mode 100644
index 49eaff4..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityFactory.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2010 The University of Manchester
- *
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.t2.workflowmodel.processor.activity;
-
-import java.net.URI;
-import java.util.Set;
-
-import com.fasterxml.jackson.databind.JsonNode;
-
-/**
- * Factory for creating {@link Activity} instances.
- * 
- * @author David Withers
- */
-public interface ActivityFactory {
-	/**
-	 * Creates a new <code>Activity</code> instance.
-	 * 
-	 * @return the new <code>Activity</code> instance
-	 */
-	Activity<?> createActivity();
-
-	/**
-	 * What type of <code>Activity</code>s can this factory create?
-	 * 
-	 * @return the type of the <code>Activity</code>s that this factory can
-	 *         create
-	 */
-	URI getActivityType();
-
-	/**
-	 * Returns the JSON Schema for the configuration required by the
-	 * <code>Activity</code>.
-	 * 
-	 * @return the JSON Schema for the configuration required by the
-	 *         <code>Activity</code>
-	 */
-	JsonNode getActivityConfigurationSchema();
-
-	/**
-	 * Returns the <code>ActivityInputPort</code>s that the
-	 * <code>Activity</code> requires to be present in order to execute with the
-	 * specified configuration.
-	 * <p>
-	 * If the <code>Activity</code> does not require any input port for the
-	 * configuration then an empty set is returned.
-	 * 
-	 * @param configuration
-	 *            the configuration
-	 * @return the <code>ActivityInputPort</code>s that the
-	 *         <code>Activity</code> requires to be present in order to execute
-	 */
-	Set<ActivityInputPort> getInputPorts(JsonNode configuration)
-			throws ActivityConfigurationException;
-
-	/**
-	 * Returns the <code>ActivityOutputPort</code>s that the
-	 * <code>Activity</code> requires to be present in order to execute with the
-	 * specified configuration.
-	 * <p>
-	 * If the <code>Activity</code> does not require any output ports for the
-	 * configuration then an empty set is returned.
-	 * 
-	 * @param configuration
-	 *            the configuration
-	 * @return the <code>ActivityOutputPort</code>s that the
-	 *         <code>Activity</code> requires to be present in order to execute
-	 */
-	Set<ActivityOutputPort> getOutputPorts(JsonNode configuration)
-			throws ActivityConfigurationException;
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityInputPort.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityInputPort.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityInputPort.java
deleted file mode 100644
index 93e4cc8..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityInputPort.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007-2009 The University of Manchester   
- * 
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *    
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *    
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.t2.workflowmodel.processor.activity;
-
-import java.util.List;
-
-import net.sf.taverna.t2.reference.ExternalReferenceSPI;
-import net.sf.taverna.t2.workflowmodel.InputPort;
-
-/**
- * Specialisation of InputPort to capture the extra information required by
- * Activity instances.
- * 
- * @author Tom Oinn
- */
-public interface ActivityInputPort extends InputPort, ActivityPort {
-	/**
-	 * Declares that the DataDocument instances fed as input data (either
-	 * directly or as elements of a collection) to this input port must contain
-	 * at least one of the specified ReferenceScheme types. This is used to
-	 * specify that e.g. an activity can only accept URLs, values or similar.
-	 * 
-	 * @return Class objects representing the reference scheme types which this
-	 *         input can handle
-	 */
-	List<Class<? extends ExternalReferenceSPI>> getHandledReferenceSchemes();
-
-	/**
-	 * Literal values are a special case as they are not represented by
-	 * reference schemes - in rare cases activities may choose to deny literal
-	 * values, forcing *all* their inputs to be in a particular reference
-	 * scheme. If this is the case then this method should return false, if the
-	 * activity is capable of handling literal types without any upconversion to
-	 * references (please do implement this!) then it returns false
-	 * 
-	 * @return true if the activity can cope with literal values, false if it
-	 *         requires them to be converted to an instance of a reference
-	 *         scheme class (as defined by getHandledReferenceSchemes)
-	 */
-	boolean allowsLiteralValues();
-
-	/**
-	 * The Java object type desired when the input data reference is converted
-	 * to an object. This is only used by the parent Activity when invoking the
-	 * data facade. Where the input data is a list this returns the type of leaf
-	 * nodes within the collection structure - the instances of this type will
-	 * always be wrapped up in a Java collection rather than an array type
-	 * <p>
-	 * Note that this is not intended to allow activities to consume arbitrary
-	 * java classes, activities such as the API consumer should handle this
-	 * through the reference scheme mechanism backed by an appropriate store
-	 * (most likely an in-memory hash of active objects)
-	 * 
-	 * @return the desired class of the object returned by the data facade when
-	 *         converting the input data reference into a java object. This will
-	 *         almost always be String.class or byte[].class but other cases may
-	 *         exist.
-	 */
-	Class<?> getTranslatedElementClass();
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityOutputPort.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityOutputPort.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityOutputPort.java
deleted file mode 100644
index 8b82939..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityOutputPort.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2009 The University of Manchester   
- * 
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *    
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *    
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.t2.workflowmodel.processor.activity;
-
-import net.sf.taverna.t2.workflowmodel.OutputPort;
-
-/**
- * The output port of an {@link Activity}.
- * 
- * @author Stian Soiland-Reyes
- */
-public interface ActivityOutputPort extends OutputPort, ActivityPort {
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityPort.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityPort.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityPort.java
deleted file mode 100644
index 3a1208c..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/ActivityPort.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2009 The University of Manchester   
- * 
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *    
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *    
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.t2.workflowmodel.processor.activity;
-
-import net.sf.taverna.t2.workflowmodel.Port;
-
-/**
- * The input or output port of an {@link Activity}.
- * 
- * @see ActivityInputPort
- * @see ActivityOutputPort
- * @author Stian Soiland-Reyes
- */
-public interface ActivityPort extends Port {
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AsynchronousActivity.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AsynchronousActivity.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AsynchronousActivity.java
deleted file mode 100644
index dfcb326..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AsynchronousActivity.java
+++ /dev/null
@@ -1,50 +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.workflowmodel.processor.activity;
-
-import java.util.Map;
-
-import net.sf.taverna.t2.reference.T2Reference;
-
-/**
- * A concrete invokable activity with an asynchronous invocation API and no
- * knowledge of invocation context. This is the most common concrete activity
- * type in Taverna 2, it has no knowledge of any enclosing iteration or other
- * handling process. The activity may stream results in the sense that it can
- * use the AsynchronousActivityCallback object to push multiple results followed
- * by a completion event. If a completion event is received by the callback
- * before any data events the callback will insert a data event containing empty
- * collections of the appropriate depth.
- * 
- * @param <ConfigurationType>
- *            the ConfigurationType associated with the Activity.
- * @author Tom Oinn
- */
-public interface AsynchronousActivity<ConfigurationType> extends
-		Activity<ConfigurationType> {
-	/**
-	 * Invoke the activity in an asynchronous manner. The activity uses the
-	 * specified ActivityCallback object to push results, errors and completion
-	 * events back to the dispatch stack.
-	 */
-	void executeAsynch(Map<String, T2Reference> data,
-			AsynchronousActivityCallback callback);
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AsynchronousActivityCallback.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AsynchronousActivityCallback.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AsynchronousActivityCallback.java
deleted file mode 100644
index f8522f6..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/AsynchronousActivityCallback.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007 The University of Manchester   
- * 
- *  Modifications to the initial code base are copyright of their
- *  respective authors, or their employers as appropriate.
- * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public License
- *  as published by the Free Software Foundation; either version 2.1 of
- *  the License, or (at your option) any later version.
- *    
- *  This program is distributed in the hope that it will be useful, but
- *  WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Lesser General Public License for more details.
- *    
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package net.sf.taverna.t2.workflowmodel.processor.activity;
-
-import java.util.Map;
-
-import net.sf.taverna.t2.invocation.InvocationContext;
-import net.sf.taverna.t2.reference.T2Reference;
-import net.sf.taverna.t2.workflowmodel.processor.dispatch.events.DispatchErrorType;
-
-/**
- * The callback interface used by instances of AsynchronousActivity to push
- * results and failure messages back to the invocation layer.
- * 
- * @author Tom Oinn
- */
-public interface AsynchronousActivityCallback {
-	/**
-	 * The invocation context contains resources such as data managers, security
-	 * agents and provenance consumers to be used by the Activity as it runs.
-	 * This replaces the getLocalDataManager and getLocalSecurityManager calls.
-	 */
-	InvocationContext getContext();
-
-	/**
-	 * If an activity proxy wants to create a new thread of activity it should
-	 * use this method unless there is a very good reason not to. This allows
-	 * the workflow framework to control its own thread usage, possibly
-	 * implementing per user, per workflow or per processor thread limit
-	 * policies. Exceptions to this principle might include cases where the
-	 * activity proxy is capable of managing thread usage across all instances
-	 * of that activity type and therefore more efficiently (fewer threads) than
-	 * if it let the workflow manager perform this function.
-	 * 
-	 * @param runMe
-	 *            a Runnable to implement the activity proxy logic.
-	 */
-	void requestRun(Runnable runMe);
-
-	/**
-	 * Push a map of named identifiers out to the invocation layer which is then
-	 * responsible for wrapping them up into an appropriate Job object and
-	 * sending it up the dispatch stack. The keys of the map are names local to
-	 * the activity, the callback object is responsible for rewriting them
-	 * according to the activity mapping rules (i.e. Activity.getXXXPortMapping)
-	 * 
-	 * @param data
-	 *            a single result data packet
-	 * @param index
-	 *            the index of the result in the context of this single process
-	 *            invocation. If there's no streaming involved this should be a
-	 *            zero length int[].
-	 */
-	void receiveResult(Map<String, T2Reference> data, int[] index);
-
-	/**
-	 * If (and only if) the activity is streaming data then this method can be
-	 * called to signal a (possibly partial) completion of the stream. If this
-	 * is a total completion event, i.e. one with a zero length index array and
-	 * there have been no result data sent the callback object will create a
-	 * single job containing empty lists and send that instead otherwise it will
-	 * be passed straight through. The index array is relative to this
-	 * particular activity invocation as the invocation has no contextual
-	 * awareness.
-	 * 
-	 * @param completionIndex
-	 */
-	void receiveCompletion(int[] completionIndex);
-
-	/**
-	 * If the job fails (as opposed to succeeding and sending an error for which
-	 * the receiveResult method is used) this method will cause an error to be
-	 * sent up the dispatch stack, triggering any appropriate handling methods
-	 * such as retry, failover etc. This particular method accepts both a free
-	 * text message and an instance of Throwable for additional information, in
-	 * addition to which it sends an error type which allows upstream layers to
-	 * determine whether they can handle the error or whether it should be
-	 * passed directly upwards.
-	 * 
-	 * @param message
-	 * @param t
-	 */
-	void fail(String message, Throwable t, DispatchErrorType errorType);
-
-	/**
-	 * If the job fails (as opposed to succeeding and sending an error for which
-	 * the receiveResult method is used) this method will cause an error to be
-	 * sent up the dispatch stack, triggering any appropriate handling methods
-	 * such as retry, failover etc. This particular method accepts both a free
-	 * text message and an instance of Throwable for additional information.
-	 * 
-	 * @param message
-	 * @param t
-	 */
-	void fail(String message, Throwable t);
-
-	/**
-	 * If the job fails (as opposed to succeeding and sending an error for which
-	 * the receiveResult method is used) this method will cause an error to be
-	 * sent up the dispatch stack, triggering any appropriate handling methods
-	 * such as retry, failover etc. This method just takes a free text message
-	 * for cases where a failure is properly described by an instance of
-	 * Throwable
-	 * 
-	 * @param message
-	 */
-	void fail(String message);
-
-	/**
-	 * For activities which are going to establish state below the invoke node
-	 * in the monitor tree this method returns the owning process identifier
-	 * allocated to the invoke node. This is particularly necessary for nested
-	 * workflow activities.
-	 * <p>
-	 * Any calls to Monitor.register... must establish a state tree rooted at
-	 * this node, they may assume that this node already exists.
-	 */
-	String getParentProcessIdentifier();
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/5f1ddb71/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/DisabledActivity.java
----------------------------------------------------------------------
diff --git a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/DisabledActivity.java b/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/DisabledActivity.java
deleted file mode 100644
index e219635..0000000
--- a/taverna-workflowmodel-api/src/main/java/net/sf/taverna/t2/workflowmodel/processor/activity/DisabledActivity.java
+++ /dev/null
@@ -1,191 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2007-2011 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.workflowmodel.processor.activity;
-
-import java.util.HashSet;
-import java.util.Map;
-
-import net.sf.taverna.t2.workflowmodel.OutputPort;
-
-import org.apache.log4j.Logger;
-
-/**
- * A disabled activity is a wrapper for an Activity that is offline or similarly
- * disabled. This cannot be done just by setting a flag on the corresponding
- * activity as special code needs to be used to create the ports of the disabled
- * activity that, obviously, cannot be done by confighuring the offline
- * activity.
- *
- * @author alanrw
- */
-public final class DisabledActivity extends
-		NonExecutableActivity<ActivityAndBeanWrapper> {
-	public static final String URI = "http://ns.taverna.org.uk/2010/activity/disabled";
-	private static final Logger logger = Logger
-			.getLogger(DisabledActivity.class);
-
-	/**
-	 * Conf holds the offline Activity and its configuration.
-	 */
-	private ActivityAndBeanWrapper conf;
-	private Object lastWorkingConfiguration;
-
-	/**
-	 * It is not possible to create a "naked" DisabledActivity.
-	 */
-	private DisabledActivity() {
-		super();
-		lastWorkingConfiguration = null;
-	}
-
-	/**
-	 * Create a DisabledActivity that represents an offline activity of the
-	 * specified class with the specified configuration. This constructor is
-	 * commonly used when reading in an Activity which cannot be initially
-	 * configured because it is offline.
-	 *
-	 * @param activityClass
-	 *            The class of Activity that is offline.
-	 * @param config
-	 *            The configuration of the offline Activity.
-	 * @throws InstantiationException
-	 * @throws IllegalAccessException
-	 * @throws ActivityConfigurationException
-	 */
-	public DisabledActivity(Class<? extends Activity<?>> activityClass,
-			Object config) throws InstantiationException,
-			IllegalAccessException, ActivityConfigurationException {
-		this(activityClass.newInstance(), config);
-	}
-
-	/**
-	 * Create a DisabledActivity that represents a specific Activity with its
-	 * configuration.
-	 *
-	 * @param activity
-	 *            The Activity that is offline
-	 * @param config
-	 *            The configuration of the activity.
-	 */
-	public DisabledActivity(Activity<?> activity, Object config) {
-		this();
-		ActivityAndBeanWrapper disabledConfig = new ActivityAndBeanWrapper();
-		disabledConfig.setActivity(activity);
-		disabledConfig.setBean(config);
-		try {
-			configure(disabledConfig);
-		} catch (ActivityConfigurationException e) {
-			logger.error(e);
-		}
-	}
-
-	/**
-	 * Create a DisabledActivity that represents a specific Activity that is now
-	 * disabled e.g. by its remote endpoint going offline. Note that in this
-	 * case, the ports of the DisabledActivity and their mapping to the
-	 * containing Processor's ports can be inherited from the Activity that is
-	 * now disabled.
-	 * 
-	 * @param activity
-	 *            The Activity that is now disabled.
-	 */
-	public DisabledActivity(Activity<?> activity) {
-		this(activity, activity.getConfiguration());
-		for (ActivityInputPort aip : activity.getInputPorts())
-			addInput(aip.getName(), aip.getDepth(), aip.allowsLiteralValues(),
-					aip.getHandledReferenceSchemes(),
-					aip.getTranslatedElementClass());
-		for (OutputPort op : activity.getOutputPorts())
-			addOutput(op.getName(), op.getDepth(), op.getGranularDepth());
-		getInputPortMapping().clear();
-		getInputPortMapping().putAll(activity.getInputPortMapping());
-		getOutputPortMapping().clear();
-		getOutputPortMapping().putAll(activity.getOutputPortMapping());
-	}
-
-	@Override
-	public void configure(ActivityAndBeanWrapper conf)
-			throws ActivityConfigurationException {
-		this.conf = conf;
-	}
-
-	@Override
-	public ActivityAndBeanWrapper getConfiguration() {
-		return conf;
-	}
-
-	/**
-	 * @return The Activity that has been disabled
-	 */
-	public Activity<?> getActivity() {
-		return getConfiguration().getActivity();
-	}
-
-	/**
-	 * @return The configuration of the Activity that has been disabled
-	 */
-	public Object getActivityConfiguration() {
-		return getConfiguration().getBean();
-	}
-
-	public boolean configurationWouldWork() {
-		return configurationWouldWork(conf.getBean());
-	}
-
-	public boolean configurationWouldWork(Object newConfig) {
-		boolean result = true;
-		lastWorkingConfiguration = null;
-		try {
-			@SuppressWarnings("unchecked")
-			Activity<Object> aa = conf.getActivity().getClass().newInstance();
-			aa.configure(newConfig);
-			boolean unknownPort = false;
-			Map<String, String> currentInputPortMap = getInputPortMapping();
-			HashSet<String> currentInputNames = new HashSet<>();
-			currentInputNames.addAll(currentInputPortMap.values()) ;
-			for (ActivityInputPort aip : aa.getInputPorts())
-				currentInputNames.remove(aip.getName());
-			unknownPort = !currentInputNames.isEmpty();
-
-			if (!unknownPort) {
-				Map<String, String> currentOutputPortMap = getOutputPortMapping();
-				HashSet<String> currentOutputNames = new HashSet<>();
-				currentOutputNames.addAll(currentOutputPortMap.values());
-				for (OutputPort aop : aa.getOutputPorts())
-					currentOutputNames.remove(aop.getName());
-				unknownPort = !currentOutputNames.isEmpty();
-			}
-			if (unknownPort)
-				result = false;
-		} catch (ActivityConfigurationException ex) {
-			result = false;
-		} catch (InstantiationException|IllegalAccessException e) {
-			return false;
-		}
-		if (result)
-		    lastWorkingConfiguration = newConfig;
-		return result;
-	}
-
-	public Object getLastWorkingConfiguration() {
-	    return lastWorkingConfiguration;
-	}
-}