3 import jalview.datamodel.*;
\r
4 import java.util.Vector;
\r
5 public class FormatAdapter
\r
8 public static Vector formats = new Vector();
\r
10 formats.addElement("FASTA");
\r
11 formats.addElement("MSF");
\r
12 formats.addElement("PileUp");
\r
13 formats.addElement("CLUSTAL");
\r
14 formats.addElement("BLC");
\r
15 formats.addElement("PIR");
\r
16 formats.addElement("PFAM");
\r
19 public static SequenceI[] readFile(String inFile, String type, String format)
\r
24 AlignFile afile = null;
\r
25 if (format.equals("FASTA"))
\r
26 afile = new FastaFile(inFile, type);
\r
27 else if (format.equals("MSF"))
\r
28 afile = new MSFfile(inFile, type);
\r
29 else if (format.equals("PileUp"))
\r
30 afile = new PileUpfile(inFile, type);
\r
31 else if (format.equals("CLUSTAL"))
\r
32 afile = new ClustalFile(inFile, type);
\r
33 else if (format.equals("BLC"))
\r
34 afile = new BLCFile(inFile, type);
\r
35 else if (format.equals("PIR"))
\r
36 afile = new PIRFile(inFile, type);
\r
37 else if (format.equals("PFAM"))
\r
38 afile = new PfamFile(inFile, type);
\r
40 return afile.getSeqsAsArray();
\r
42 catch (Exception e) {
\r
43 System.err.println("Failed to read alignment using the '"+format+"' reader.");
\r
44 e.printStackTrace();
\r
51 public static String formatSequences(String format, Vector seqs)
\r
53 SequenceI [] s = new SequenceI[seqs.size()];
\r
55 for (int i = 0; i < seqs.size(); i++)
\r
56 s[i] = (SequenceI) seqs.elementAt(i);
\r
60 AlignFile afile = null;
\r
61 if (format.equals("FASTA"))
\r
62 afile = new FastaFile();
\r
63 else if (format.equals("MSF"))
\r
64 afile = new MSFfile();
\r
65 else if (format.equals("PileUp"))
\r
66 afile = new PileUpfile();
\r
67 else if (format.equals("CLUSTAL"))
\r
68 afile = new ClustalFile();
\r
69 else if (format.equals("BLC"))
\r
70 afile = new BLCFile();
\r
71 else if (format.equals("PIR"))
\r
72 afile = new PIRFile();
\r
73 else if (format.equals("PFAM"))
\r
74 afile = new PfamFile();
\r
77 return afile.print();
\r
79 catch (Exception e) {
\r
80 System.err.println("Failed to write alignment as a '"+format+"' file\n");
\r
81 e.printStackTrace();
\r