--- /dev/null
+package jalview.ws.api;
+
+import jalview.math.MatrixI;
+import jalview.ws.params.InvalidArgumentException;
+
+import java.io.IOError;
+import java.rmi.ServerError;
+
+public interface DistanceMatrixResultI
+{
+
+ public MatrixI getDistanceMatrixFor(JobId jobId)
+ throws InvalidArgumentException, ServerError, IOError;
+
+
+}
\ No newline at end of file
--- /dev/null
+package jalview.ws.api;
+
+import jalview.analysis.NJTree;
+import jalview.datamodel.SequenceI;
+import jalview.ws.params.InvalidArgumentException;
+import jalview.ws.params.WsParamSetI;
+
+import java.io.IOError;
+import java.rmi.ServerError;
+import java.util.List;
+
+public interface MsaWithGuideTreeI
+{
+ /**
+ * Given a set of sequences
+ *
+ * @param toalign
+ * @param parameters
+ * @return JobId or exceptions are thrown.
+ */
+ public JobId align(List<SequenceI> toalign, NJTree guideTree,
+ WsParamSetI parameters)
+ throws InvalidArgumentException, ServerError, IOError;
+}
\ No newline at end of file
--- /dev/null
+package jalview.ws.api;
+
+import jalview.analysis.NJTree;
+import jalview.ws.params.InvalidArgumentException;
+
+import java.io.IOError;
+import java.rmi.ServerError;
+
+public interface TreeResultI
+{
+
+ public NJTree getTreeFor(JobId jobId)
+ throws InvalidArgumentException, ServerError, IOError;
+}
\ No newline at end of file