JAL-1953 2.11.2 with Archeopteryx!
[jalview.git] / src / jalview / ext / forester / io / NexusFile.java
diff --git a/src/jalview/ext/forester/io/NexusFile.java b/src/jalview/ext/forester/io/NexusFile.java
new file mode 100644 (file)
index 0000000..7050f27
--- /dev/null
@@ -0,0 +1,47 @@
+package jalview.ext.forester.io;
+
+import jalview.datamodel.SequenceI;
+import jalview.ext.treeviewer.TreeI;
+import jalview.ext.treeviewer.TreeParserI;
+import jalview.io.AlignFile;
+import jalview.io.FileParse;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.List;
+
+public class NexusFile extends AlignFile
+{
+
+  public NexusFile(FileParse source) throws IOException
+  {
+    super(source);
+  }
+
+  @Override
+  public String print(SequenceI[] seqs, boolean jvsuffix)
+  {
+    // TODO Auto-generated method stub
+    return null;
+  }
+
+  /**
+   * This does not properly work for Nexus yet as Forester's parser doesn't
+   * parse the actual sequences to the tree.
+   */
+  @Override
+  public void parse() throws IOException
+  {
+    TreeParserI parser = ForesterParser
+            .createNexusParser(new File(getDataName()));
+    TreeI[] trees = parser.parse();
+    List<SequenceI> treeSeqs = trees[0].getNodeSequences();
+    for (SequenceI seq : treeSeqs)
+    {
+        seqs.add(seq);
+      }
+    }
+
+  }
+
+