JAL-2805 Creating jalview sequence now requires the node itself (for the
[jalview.git] / src / jalview / ext / forester / DataConversions.java
index b084382..c6819a5 100644 (file)
@@ -1,10 +1,12 @@
 package jalview.ext.forester;
 
+import jalview.datamodel.Sequence;
 import jalview.datamodel.SequenceI;
 import jalview.math.MatrixI;
 
 import org.forester.evoinference.matrix.distance.DistanceMatrix;
 import org.forester.io.parsers.phyloxml.PhyloXmlDataFormatException;
+import org.forester.phylogeny.PhylogenyNode;
 
 public final class DataConversions
 {
@@ -17,13 +19,14 @@ public final class DataConversions
     {
       foresterSeq.setName(jalviewSequence.getDescription());
     }
-    foresterSeq.setMolecularSequenceAligned(sequenceIsAligned); // all tree
-                                                              // sequences
-                                                              // should
-                                                   // be aligned already
+
+    // all tree sequences should be aligned already
+    foresterSeq.setMolecularSequenceAligned(sequenceIsAligned);
+
     foresterSeq.setMolecularSequence(jalviewSequence.getSequenceAsString());
-    if (jalviewSequence.isProtein()) // add checks for DNA or RNA (infer from
-                                     // forester itself?)
+    
+    // add checks for DNA or RNA (infer from forester itself?)
+    if (jalviewSequence.isProtein())
     {
       try
       {
@@ -39,6 +42,20 @@ public final class DataConversions
 
   }
 
+  public static SequenceI createJalviewSequence(
+          PhylogenyNode foresterNode)
+  {
+    String seq = foresterNode.getNodeData().getSequence()
+            .getMolecularSequence();
+    String seqName = foresterNode.getName();
+
+    SequenceI jalviewSeq = new Sequence(foresterNode.getName(), seq, 1,
+            seq.length() + 1);
+    return jalviewSeq.deriveSequence();
+
+
+  }
+
 
   // public static org.forester.phylogeny.data.Accession
   // createForesterAccession(
@@ -56,10 +73,6 @@ public final class DataConversions
           final MatrixI jalviewInputMatrix,
           final String[] matrixIdentifiers)
   {
-    if (jalviewInputMatrix.width() != jalviewInputMatrix.height())
-    {
-      // some kind of warning?
-    }
 
     DistanceMatrix foresterMatrix = new ForesterMatrix(jalviewInputMatrix,
             matrixIdentifiers);
@@ -71,13 +84,11 @@ public final class DataConversions
           final MatrixI jalviewInputMatrix,
           final SequenceI[] matrixSequences)
   {
-    if (jalviewInputMatrix.width() != jalviewInputMatrix.height())
-    {
-      // some kind of warning?
-    }
     DistanceMatrix foresterMatrix = new ForesterMatrix(jalviewInputMatrix,
             matrixSequences);
     return foresterMatrix;
 
   }
+
+
 }