*/
package jalview.io;
+import java.io.File;
+
import jalview.datamodel.*;
/**
- * DOCUMENT ME!
+ * A low level class for alignment and feature IO
+ * with alignment formatting methods used by both applet
+ * and application for generating flat alignment files.
+ * It also holds the lists of magic format names
+ * that the applet and application will allow the user to read or write files with.
*
* @author $author$
* @version $Revision$
*/
public class AppletFormatAdapter
{
- /** DOCUMENT ME!! */
+ /**
+ * List of valid format strings used in the isValidFormat method
+ */
public static final String[] READABLE_FORMATS = new String[]
{
"BLC", "CLUSTAL", "FASTA", "MSF", "PileUp", "PIR", "PFAM", "STH", "PDB", "JnetFile"
};
-
+ /**
+ * List of valid format strings for use by callers of the formatSequences method
+ */
public static final String[] WRITEABLE_FORMATS = new String[]
{
"BLC", "CLUSTAL", "FASTA", "MSF", "PileUp", "PIR", "PFAM" , "AMSA"
};
-
+ /**
+ * List of extensions corresponding to file format types
+ * in WRITABLE_FNAMES that are writable by the
+ * application.
+ */
public static final String[] WRITABLE_EXTENSIONS = new String[]
{ "fa, fasta, fastq", "aln", "pfam", "msf", "pir", "blc","amsa","jar" };
-
+ /**
+ * List of writable formats by the application. Order must
+ * correspond with the WRITABLE_EXTENSIONS list of formats.
+ */
public static final String[] WRITABLE_FNAMES = new String[]
{ "Fasta", "Clustal", "PFAM", "MSF", "PIR", "BLC", "AMSA", "Jalview" };
+ /**
+ * List of readable format file extensions by application in order
+ * corresponding to READABLE_FNAMES
+ */
public static final String[] READABLE_EXTENSIONS = new String[]
{
"fa, fasta, fastq", "aln", "pfam", "msf", "pir", "blc",
"amsa","jar"
};
+ /**
+ * List of readable formats by application in order
+ * corresponding to READABLE_EXTENSIONS
+ */
public static final String[] READABLE_FNAMES = new String[]
{
"Fasta", "Clustal", "PFAM", "MSF", "PIR", "BLC", "AMSA","Jalview"
/**
* Construct an output class for an alignment in a particular filetype
*
- * @param format DOCUMENT ME!
- * @param seqs DOCUMENT ME!
- * @param jvsuffix passed to AlnFile class
+ * @param format string name of alignment format
+ * @param alignment the alignment to be written out
+ * @param jvsuffix passed to AlnFile class controls whether /START-END is added to sequence names
*
* @return alignment flat file contents
*/
return null;
}
+ public static void main(String[] args)
+ {
+ int i=0;
+ while (i<args.length)
+ {
+ File f = new File(args[i]);
+ if (f.exists())
+ {
+ try {
+ AppletFormatAdapter afa = new AppletFormatAdapter();
+ afa.readFile(args[i], FILE, new IdentifyFile().Identify(args[i], FILE));
+ } catch (Exception e)
+ {
+ System.err.println("Exception when dealing with "+i+"'th argument: "+args[i]+"\n"+e);
+ }
+ } else {
+ System.err.println("Ignoring argument '"+args[i]+"' ("+i+"'th)- not a readable file.");
+ }
+ i++;
+ }
+
+ }
}