*/
public class AppletFormatAdapter
{
+ private AlignViewportI viewport;
+
+ public static String FILE = "File";
+
+ public static String URL = "URL";
+
+ public static String PASTE = "Paste";
+
+ public static String CLASSLOADER = "ClassLoader";
+
+ /**
+ * add jalview-derived non-secondary structure annotation from PDB structure
+ */
+ boolean annotFromStructure = false;
+
+ /**
+ * add secondary structure from PDB data with built-in algorithms
+ */
+ boolean localSecondaryStruct = false;
+
+ /**
+ * process PDB data with web services
+ */
+ boolean serviceSecondaryStruct = false;
+
+ private AlignFile alignFile = null;
+
+ String inFile;
+
+ /**
+ * character used to write newlines
+ */
+ protected String newline = System.getProperty("line.separator");
+
/**
* List of valid format strings used in the isValidFormat method
*/
public static String SUPPORTED_FORMATS = "Formats currently supported are\n"
+ prettyPrint(READABLE_FORMATS);
+ public AppletFormatAdapter()
+ {
+ }
+
+ public AppletFormatAdapter(AlignViewportI viewport)
+ {
+ this.viewport = viewport;
+ }
+
/**
*
* @param els
return list.toString();
}
- public static String FILE = "File";
-
- public static String URL = "URL";
-
- public static String PASTE = "Paste";
-
- public static String CLASSLOADER = "ClassLoader";
-
- /**
- * add jalview-derived non-secondary structure annotation from PDB structure
- */
- boolean annotFromStructure = false;
-
- /**
- * add secondary structure from PDB data with built-in algorithms
- */
- boolean localSecondaryStruct = false;
-
- /**
- * process PDB data with web services
- */
- boolean serviceSecondaryStruct = false;
-
- AlignFile afile = null;
-
- String inFile;
-
- /**
- * character used to write newlines
- */
- protected String newline = System.getProperty("line.separator");
public void setNewlineString(String nl)
{
Alignment al;
if (format.equals("FASTA"))
{
- afile = new FastaFile(inFile, type);
+ alignFile = new FastaFile(inFile, type);
}
else if (format.equals("MSF"))
{
- afile = new MSFfile(inFile, type);
+ alignFile = new MSFfile(inFile, type);
}
else if (format.equals("PileUp"))
{
- afile = new PileUpfile(inFile, type);
+ alignFile = new PileUpfile(inFile, type);
}
else if (format.equals("CLUSTAL"))
{
- afile = new ClustalFile(inFile, type);
+ alignFile = new ClustalFile(inFile, type);
}
else if (format.equals("BLC"))
{
- afile = new BLCFile(inFile, type);
+ alignFile = new BLCFile(inFile, type);
}
else if (format.equals("PIR"))
{
- afile = new PIRFile(inFile, type);
+ alignFile = new PIRFile(inFile, type);
}
else if (format.equals("PFAM"))
{
- afile = new PfamFile(inFile, type);
+ alignFile = new PfamFile(inFile, type);
}
else if (format.equals("JnetFile"))
{
- afile = new JPredFile(inFile, type);
- ((JPredFile) afile).removeNonSequences();
+ alignFile = new JPredFile(inFile, type);
+ ((JPredFile) alignFile).removeNonSequences();
}
else if (format.equals("PDB"))
{
- afile = new MCview.PDBfile(annotFromStructure,
+ alignFile = new MCview.PDBfile(annotFromStructure,
localSecondaryStruct, serviceSecondaryStruct, inFile, type);
// Uncomment to test Jmol data based PDB processing: JAL-1213
// afile = new jalview.ext.jmol.PDBFileWithJmol(inFile, type);
}
else if (format.equals("STH"))
{
- afile = new StockholmFile(inFile, type);
+ alignFile = new StockholmFile(inFile, type);
}
else if (format.equals("SimpleBLAST"))
{
- afile = new SimpleBlastFile(inFile, type);
+ alignFile = new SimpleBlastFile(inFile, type);
}
else if (format.equals(PhylipFile.FILE_DESC))
{
- afile = new PhylipFile(inFile, type);
+ alignFile = new PhylipFile(inFile, type);
}
else if (format.equals(JSONFile.FILE_DESC))
{
- afile = new JSONFile(inFile, type);
- al = new Alignment(afile.getSeqsAsArray());
- afile.addAnnotations(al);
- for (SequenceGroup sg : afile.getSeqGroups())
+ alignFile = new JSONFile(inFile, type);
+ al = new Alignment(alignFile.getSeqsAsArray());
+ alignFile.addAnnotations(al);
+ ((JSONFile) alignFile).setViewport(viewport);
+ for (SequenceGroup sg : alignFile.getSeqGroups())
{
al.addGroup(sg);
}
}
else if (format.equals(HtmlFile.FILE_DESC))
{
- afile = new HtmlFile(inFile, type);
- al = new Alignment(afile.getSeqsAsArray());
- afile.addAnnotations(al);
- for (SequenceGroup sg : afile.getSeqGroups())
+ alignFile = new HtmlFile(inFile, type);
+ al = new Alignment(alignFile.getSeqsAsArray());
+ alignFile.addAnnotations(al);
+ for (SequenceGroup sg : alignFile.getSeqGroups())
{
al.addGroup(sg);
}
}
else if (format.equals("RNAML"))
{
- afile = new RnamlFile(inFile, type);
+ alignFile = new RnamlFile(inFile, type);
}
- al = new Alignment(afile.getSeqsAsArray());
+ al = new Alignment(alignFile.getSeqsAsArray());
- // afile.addAnnotations(al);
- // afile.addSeqGroups(al);
+ alignFile.addAnnotations(al);
return al;
} catch (Exception e)
try
{
// Possible sequence is just residues with no label
- afile = new FastaFile(">UNKNOWN\n" + inFile, "Paste");
- Alignment al = new Alignment(afile.getSeqsAsArray());
+ alignFile = new FastaFile(">UNKNOWN\n" + inFile, "Paste");
+ Alignment al = new Alignment(alignFile.getSeqsAsArray());
- afile.addSeqGroups(al);
- afile.addAnnotations(al);
+ alignFile.addSeqGroups(al);
+ alignFile.addAnnotations(al);
return al;
} catch (Exception ex)
Alignment al;
if (format.equals("FASTA"))
{
- afile = new FastaFile(source);
+ alignFile = new FastaFile(source);
}
else if (format.equals("MSF"))
{
- afile = new MSFfile(source);
+ alignFile = new MSFfile(source);
}
else if (format.equals("PileUp"))
{
- afile = new PileUpfile(source);
+ alignFile = new PileUpfile(source);
}
else if (format.equals("CLUSTAL"))
{
- afile = new ClustalFile(source);
+ alignFile = new ClustalFile(source);
}
else if (format.equals("BLC"))
{
- afile = new BLCFile(source);
+ alignFile = new BLCFile(source);
}
else if (format.equals("PIR"))
{
- afile = new PIRFile(source);
+ alignFile = new PIRFile(source);
}
else if (format.equals("PFAM"))
{
- afile = new PfamFile(source);
+ alignFile = new PfamFile(source);
}
else if (format.equals("JnetFile"))
{
- afile = new JPredFile(source);
- ((JPredFile) afile).removeNonSequences();
+ alignFile = new JPredFile(source);
+ ((JPredFile) alignFile).removeNonSequences();
}
else if (format.equals("PDB"))
{
- afile = new MCview.PDBfile(annotFromStructure,
+ alignFile = new MCview.PDBfile(annotFromStructure,
localSecondaryStruct, serviceSecondaryStruct, source);
}
else if (format.equals("STH"))
{
- afile = new StockholmFile(source);
+ alignFile = new StockholmFile(source);
}
else if (format.equals("RNAML"))
{
- afile = new RnamlFile(source);
+ alignFile = new RnamlFile(source);
}
else if (format.equals("SimpleBLAST"))
{
- afile = new SimpleBlastFile(source);
+ alignFile = new SimpleBlastFile(source);
}
else if (format.equals(PhylipFile.FILE_DESC))
{
- afile = new PhylipFile(source);
+ alignFile = new PhylipFile(source);
}
else if (format.equals(JSONFile.FILE_DESC))
{
- afile = new JSONFile(source);
- al = new Alignment(afile.getSeqsAsArray());
- afile.addAnnotations(al);
- afile.addSeqGroups(al);
+ alignFile = new JSONFile(source);
+ // ((JSONFile) afile).setViewport(viewport);
+ al = new Alignment(alignFile.getSeqsAsArray());
+ alignFile.addAnnotations(al);
+ alignFile.addSeqGroups(al);
return al;
}
else if (format.equals(HtmlFile.FILE_DESC))
{
- afile = new HtmlFile(source);
+ alignFile = new HtmlFile(source);
}
- al = new Alignment(afile.getSeqsAsArray());
+ al = new Alignment(alignFile.getSeqsAsArray());
+ alignFile.addAnnotations(al);
return al;
} catch (Exception e)
try
{
// Possible sequence is just residues with no label
- afile = new FastaFile(">UNKNOWN\n" + inFile, "Paste");
- Alignment al = new Alignment(afile.getSeqsAsArray());
- afile.addAnnotations(al);
- afile.addSeqGroups(al);
+ alignFile = new FastaFile(">UNKNOWN\n" + inFile, "Paste");
+ Alignment al = new Alignment(alignFile.getSeqsAsArray());
+ alignFile.addAnnotations(al);
+ alignFile.addSeqGroups(al);
return al;
} catch (Exception ex)
else if (format.equalsIgnoreCase(JSONFile.FILE_DESC))
{
afile = new JSONFile();
+ afile.setViewport(viewport);
// Add groups to AlignFile
afile.seqGroups = alignment.getGroups();
}
return null;
}
+
+ public AlignFile getAlignFile()
+ {
+ return alignFile;
+ }
+
+ public void setAlignFile(AlignFile alignFile)
+ {
+ this.alignFile = alignFile;
+ }
}