1 package jalview.ext.forester.io;
3 import jalview.api.FeatureSettingsModelI;
4 import jalview.datamodel.AlignmentI;
5 import jalview.datamodel.SequenceI;
6 import jalview.ext.archaeopteryx.Tree;
7 import jalview.ext.treeviewer.TreeI;
8 import jalview.ext.treeviewer.TreeParserI;
9 import jalview.io.AlignFile;
10 import jalview.io.DataSourceType;
11 import jalview.io.FileParse;
13 import java.io.IOException;
15 import org.forester.io.parsers.PhylogenyParser;
16 import org.forester.io.parsers.nexus.NexusPhylogeniesParser;
17 import org.forester.io.parsers.phyloxml.PhyloXmlParser;
18 import org.forester.phylogeny.Phylogeny;
20 public class ForesterParser extends AlignFile
21 implements TreeParserI
23 private final PhylogenyParser parser;
25 private TreeI[] parsedTrees;
27 protected ForesterParser(PhylogenyParser foresterParser, FileParse source)
29 parser = foresterParser;
32 public static ForesterParser createNexusParser(FileParse source)
34 return new ForesterParser(new NexusPhylogeniesParser(), source);
37 public static ForesterParser createPhyloXmlParser(FileParse source)
39 // support non-xsd validating?
40 return new ForesterParser(
41 PhyloXmlParser.createPhyloXmlParserXsdValidating(), source);
45 public void parse() throws IOException
47 Phylogeny[] foresterTrees = parser.parse();
48 parsedTrees = new TreeI[foresterTrees.length];
50 for (int i = 0; i < foresterTrees.length; i++)
52 parsedTrees[i] = new Tree(foresterTrees[i]);
58 public void setSource(Object source) throws IOException
60 parser.setSource(source);
65 public String getName()
67 return parser.getName();
71 public SequenceI[] getSeqsAsArray()
73 // TODO Auto-generated method stub
78 public void addAnnotations(AlignmentI al)
80 // TODO Auto-generated method stub
85 public void addGroups(AlignmentI al)
87 // TODO Auto-generated method stub
92 public void setSeqs(SequenceI[] sequencesArray)
94 // TODO Auto-generated method stub
99 public boolean hasWarningMessage()
101 // TODO Auto-generated method stub
106 public String getWarningMessage()
108 // TODO Auto-generated method stub
113 public String getInFile()
115 // TODO Auto-generated method stub
120 public DataSourceType getDataSourceType()
122 // TODO Auto-generated method stub
127 public FeatureSettingsModelI getFeatureColourScheme()
129 // TODO Auto-generated method stub
136 public String print(SequenceI[] seqs, boolean jvsuffix)
138 // TODO Auto-generated method stub
143 public TreeI[] getParsedTrees()