fairly pointless catch exception error information added. (attempt to
[jalview.git] / src / jalview / io / FormatAdapter.java
1 package jalview.io;\r
2 \r
3 import jalview.datamodel.*;\r
4 import java.util.Vector;\r
5 public class FormatAdapter\r
6 {\r
7 \r
8   public static Vector formats = new Vector();\r
9   static{\r
10     formats.addElement("FASTA");\r
11     formats.addElement("MSF");\r
12     formats.addElement("CLUSTAL");\r
13     formats.addElement("BLC");\r
14     formats.addElement("PIR");\r
15     formats.addElement("PFAM");\r
16   }\r
17 \r
18   public static SequenceI[] readFile(String inFile, String type, String format)\r
19   {\r
20 \r
21     try\r
22     {\r
23       AlignFile afile = null;\r
24       if (format.equals("FASTA"))\r
25         afile = new FastaFile(inFile, type);\r
26       else if (format.equals("MSF"))\r
27         afile = new MSFfile(inFile, type);\r
28       else if (format.equals("CLUSTAL"))\r
29         afile = new ClustalFile(inFile, type);\r
30       else if (format.equals("BLC"))\r
31         afile = new BLCFile(inFile, type);\r
32       else if (format.equals("PIR"))\r
33         afile = new PIRFile(inFile, type);\r
34       else if (format.equals("PFAM"))\r
35         afile = new PfamFile(inFile, type);\r
36 \r
37       return afile.getSeqsAsArray();\r
38     }\r
39     catch (Exception e)  {\r
40     System.err.println("Failed to read alignment using the '"+format+"' reader.");\r
41     e.printStackTrace();\r
42     }\r
43 \r
44     return null;\r
45   }\r
46 \r
47 \r
48   public static String formatSequences(String format, Vector seqs)\r
49   {\r
50     SequenceI [] s = new SequenceI[seqs.size()];\r
51 \r
52     for (int i = 0; i < seqs.size(); i++)\r
53       s[i] = (SequenceI) seqs.elementAt(i);\r
54 \r
55     try\r
56     {\r
57       AlignFile afile = null;\r
58       if (format.equals("FASTA"))\r
59         afile = new FastaFile();\r
60       else if (format.equals("MSF"))\r
61         afile = new MSFfile();\r
62       else if (format.equals("CLUSTAL"))\r
63         afile = new ClustalFile();\r
64       else if (format.equals("BLC"))\r
65         afile = new BLCFile();\r
66       else if (format.equals("PIR"))\r
67         afile = new PIRFile();\r
68       else if (format.equals("PFAM"))\r
69         afile = new PfamFile();\r
70 \r
71       afile.setSeqs(s);\r
72       return afile.print();\r
73     }\r
74     catch (Exception e)  {\r
75       System.err.println("Failed to write alignment as a '"+format+"' file\n");\r
76       e.printStackTrace();\r
77     }\r
78 \r
79     return null;\r
80   }\r
81 }\r