From: gmungoc Date: Mon, 28 Nov 2016 14:35:59 +0000 (+0000) Subject: JAL-2344 added FileFormatI.isStructureFile() X-Git-Tag: Release_2_10_3b1~400 X-Git-Url: http://source.jalview.org/gitweb/?p=jalview.git;a=commitdiff_plain;h=70f62620b5f6158be5cd42560d549b2ea4e20c52 JAL-2344 added FileFormatI.isStructureFile() --- diff --git a/src/jalview/io/AppletFormatAdapter.java b/src/jalview/io/AppletFormatAdapter.java index 74fd422..45d65d6 100755 --- a/src/jalview/io/AppletFormatAdapter.java +++ b/src/jalview/io/AppletFormatAdapter.java @@ -75,60 +75,8 @@ public class AppletFormatAdapter private AlignExportSettingI exportSettings; - /** - * 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", "RNAML", "PHYLIP", "JSON", - // IdentifyFile.FeaturesFile, "HTML", "mmCIF" }; - - /** - * List of readable format file extensions by application in order - * corresponding to READABLE_FNAMES - */ - // public static final String[] READABLE_EXTENSIONS = new String[] { - // "fa, fasta, mfa, fastq", "aln", "pfam", "msf", "pir", "blc", "amsa", - // "sto,stk", "xml,rnaml", "phy", "json", ".gff2,gff3", "jar,jvp", - // "html", "cif" }; - - // - // /** - // * 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", "Stockholm", "RNAML", - // "PHYLIP", "JSON", IdentifyFile.FeaturesFile, - // "Jalview", HtmlFile.FILE_DESC, "mmCIF" }; - - /** - * 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", "STH", - // "PHYLIP", "JSON" }; - - /** - * 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, mfa, fastq", "aln", "pfam", "msf", "pir", "blc", "amsa", - // "sto,stk", "phy", "json", "jvp" }; - - /** - * 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", "STH", "PHYLIP", - // "JSON", "Jalview" }; - public static String INVALID_CHARACTERS = "Contains invalid characters"; - // TODO: make these messages dynamic public static String SUPPORTED_FORMATS = "Formats currently supported are\n" + prettyPrint(FileFormat.getReadableFormats()); @@ -194,23 +142,22 @@ public class AppletFormatAdapter this.inFile = file; try { - if (FileFormat.PDB.equals(fileFormat) - || FileFormat.MMCif.equals(fileFormat)) + if (fileFormat.isStructureFile()) { - boolean isParseWithJMOL = StructureImportSettings - .getDefaultPDBFileParser().equalsIgnoreCase( + String structureParser = StructureImportSettings + .getDefaultPDBFileParser(); + boolean isParseWithJMOL = structureParser.equalsIgnoreCase( StructureImportSettings.StructureParser.JMOL_PARSER .toString()); + StructureImportSettings.addSettings(annotFromStructure, + localSecondaryStruct, serviceSecondaryStruct); if (isParseWithJMOL) { - StructureImportSettings.addSettings(annotFromStructure, - localSecondaryStruct, serviceSecondaryStruct); - alignFile = new JmolParser(inFile, sourceType); + alignFile = new JmolParser(inFile, sourceType); } else { - StructureImportSettings.addSettings(annotFromStructure, - localSecondaryStruct, serviceSecondaryStruct); + // todo is MCview parsing obsolete yet? StructureImportSettings.setShowSeqFeatures(true); alignFile = new MCview.PDBfile(annotFromStructure, localSecondaryStruct, serviceSecondaryStruct, inFile, @@ -223,22 +170,6 @@ public class AppletFormatAdapter { alignFile = fileFormat.getAlignmentFile(inFile, sourceType); } - // new FastaFile(inFile, sourceType); - // new MSFfile(inFile, sourceType); - // new PileUpfile(inFile, sourceType); - // new ClustalFile(inFile, sourceType); - // new BLCFile(inFile, sourceType); - // new PIRFile(inFile, sourceType); - // new PfamFile(inFile, sourceType); - // alignFile = new JPredFile(inFile, sourceType); - // ((JPredFile) alignFile).removeNonSequences(); - // new StockholmFile(inFile, sourceType); - // new SimpleBlastFile(inFile, sourceType); - // new PhylipFile(inFile, sourceType); - // new JSONFile(inFile, sourceType); - // new HtmlFile(inFile, sourceType); - // new RnamlFile(inFile, sourceType); - // alignFile = new FeaturesFile(true, inFile, sourceType); return buildAlignmentFromFile(); } catch (Exception e) { diff --git a/src/jalview/io/FileFormat.java b/src/jalview/io/FileFormat.java index d52045c..5f441d2 100644 --- a/src/jalview/io/FileFormat.java +++ b/src/jalview/io/FileFormat.java @@ -404,6 +404,12 @@ public enum FileFormat implements FileFormatI { return new JmolParser(); // todo or null? } + + @Override + public boolean isStructureFile() + { + return true; + } }, MMCif("mmCIF", "cif", true, false) { @@ -427,6 +433,12 @@ public enum FileFormat implements FileFormatI { return new JmolParser(); // todo or null? } + + @Override + public boolean isStructureFile() + { + return true; + } }, Jalview("Jalview", "jar,jvp", true, true) { @@ -591,4 +603,10 @@ public enum FileFormat implements FileFormatI { return true; } + + @Override + public boolean isStructureFile() + { + return false; + } } diff --git a/src/jalview/io/FileFormatI.java b/src/jalview/io/FileFormatI.java index 319df9f..0593d1e 100644 --- a/src/jalview/io/FileFormatI.java +++ b/src/jalview/io/FileFormatI.java @@ -53,4 +53,11 @@ public interface FileFormatI * @return */ boolean isTextFormat(); + + /** + * Answers true if the file format is one that provides a 3D structure + * + * @return + */ + boolean isStructureFile(); }