From: jprocter Date: Tue, 4 Dec 2012 16:12:03 +0000 (+0000) Subject: JAL-1140 - handle VARNA specific RNA exceptions within the IO class and generate... X-Git-Tag: Jalview_2_9~257 X-Git-Url: http://source.jalview.org/gitweb/?a=commitdiff_plain;h=c893db0d67d7708d5fa5d08566168a06a61df13e;p=jalview.git JAL-1140 - handle VARNA specific RNA exceptions within the IO class and generate appropriate error messages --- diff --git a/src/jalview/io/RnamlFile.java b/src/jalview/io/RnamlFile.java index bc6b385..122e6e1 100644 --- a/src/jalview/io/RnamlFile.java +++ b/src/jalview/io/RnamlFile.java @@ -19,354 +19,161 @@ package jalview.io; import jalview.datamodel.AlignmentAnnotation; import jalview.datamodel.Annotation; -import jalview.datamodel.SecondaryStructureAnnotation; import jalview.datamodel.Sequence; -import jalview.datamodel.SequenceFeature; import jalview.datamodel.SequenceI; -import jalview.ws.jws1.Annotate3D; import java.io.BufferedReader; import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.Reader; import java.io.FileReader; -import java.lang.reflect.Array; +import java.io.IOException; import java.util.ArrayList; -import java.util.Collections; -import java.util.Hashtable; -import java.util.List; -import java.util.Vector; - -import javax.xml.parsers.ParserConfigurationException; -import javax.xml.parsers.SAXParser; -import javax.xml.parsers.SAXParserFactory; - -import org.xml.sax.InputSource; -import org.xml.sax.SAXException; - -import com.stevesoft.pat.Regex; import fr.orsay.lri.varna.exceptions.ExceptionFileFormatOrSyntax; import fr.orsay.lri.varna.exceptions.ExceptionLoadingFailed; import fr.orsay.lri.varna.exceptions.ExceptionPermissionDenied; -import fr.orsay.lri.varna.exceptions.ExceptionUnmatchedClosingParentheses; import fr.orsay.lri.varna.factories.RNAFactory; -import fr.orsay.lri.varna.factories.RNAFactory.RNAFileType; import fr.orsay.lri.varna.models.rna.RNA; -import fr.orsay.lri.varna.utils.RNAMLParser; - - - public class RnamlFile extends AlignFile { - public String id; - protected ArrayList result; - - public RnamlFile() - { - super(); - - } - - public RnamlFile(String inFile, String type) throws IOException, ExceptionFileFormatOrSyntax, ParserConfigurationException, SAXException, ExceptionPermissionDenied, ExceptionLoadingFailed, InterruptedException, ExceptionUnmatchedClosingParentheses - { - super(inFile, type); - - } - - public RnamlFile(FileParse source) throws IOException, ExceptionFileFormatOrSyntax, ParserConfigurationException, SAXException, ExceptionPermissionDenied, ExceptionLoadingFailed, InterruptedException, ExceptionUnmatchedClosingParentheses - { - super(source); - - } - -// public RnamlFile(BufferedReader r) throws IOException, ExceptionFileFormatOrSyntax, ParserConfigurationException, SAXException, ExceptionPermissionDenied, ExceptionLoadingFailed -// { -// super(); -// parse(r); -// // sets the index of each sequence in the alignment -// for( int i=0,c=seqs.size(); i seq =new ArrayList(); - //System.out.println(r); - - result = RNAFactory.loadSecStr(r,RNAFileType.FILE_TYPE_RNAML); - - System.out.println("this is the secondary scructure:" +result.toArray()); - System.out.println("this is the secondary scructure:" +result.toString()); - System.out.println("this is the secondary scructure:" +result.size()); - for(int i=0;i allbpsTmp = rnaTmp.getStructure(); -// String[] annot = new String[10000]; -// -// //Annotation[] ann = new Annotation[allbpsTmp.size()]; -// for (int i = 0; i < allbpsTmp.size(); i++) { -// RNAMLParser.BPTemp bp = allbpsTmp.get(i); -// //System.err.println("toto ="+bp); -// int bp5 = bp.pos5; -// annot[bp5]= "("; -// //annot[bp5]= '('; -// System.out.println(annot[bp5]); -// //System.out.println("bp5 ="+bp5); -// int bp3 = bp.pos3; -// -// annot[bp3]= ")"; -// System.out.println(annot[bp3]); -// //System.out.println(annot.get(bp3)); -// -// //String pos1 = annot.substring(bp5, bp5+1); -// //String pos2 = annot.substring(bp3, bp3+1); -// //ann[i] = new Annotation(pos1, "", ' ', 0f); -// //ann[i+1] = new Annotation(pos2, "", ' ', 0f); -// //System.out.println(pos1); -// -// //System.out.println("bp3 ="+bp3); -// //ModeleBP newStyle = bp.createBPStyle(mb, part); -// } -// Annotation[] ann = new Annotation[annot.length+1]; -// for(int i=0;i allbpsTmp = rnaTmp.getStructure(); -// for (int i = 0; i < allbpsTmp.size(); i++) { -// RNAMLParser.BPTemp bp = allbpsTmp.get(i); -// //System.err.println("toto ="+bp); -// int bp5 = bp.pos5; -// //System.out.println("bp5 ="+bp5); -// int bp3 = bp.pos3; - //System.out.println("bp3 ="+bp3); - //ModeleBP newStyle = bp.createBPStyle(mb, part); -// } - //Annotation ann; - //ann = new Annotation(bp5, "", ' ', 0f); - - //} - - - -// return result; - -} - - - public static String print(SequenceI[] s) - { - return "not yet implemented"; - } - - public String print() - { - System.out.print("affiche :"); - return print(getSeqsAsArray()); - } - - /** - * make a friendly ID string. - * - * @param dataName - * @return truncated dataName to after last '/' - */ - private String safeName(String dataName) - { - int b = 0; - while ((b = dataName.indexOf("/")) > -1 && b < dataName.length() ) - { - dataName = dataName.substring(b + 1).trim(); - - } - int e = (dataName.length() - dataName.indexOf("."))+1; - dataName = dataName.substring(1,e).trim(); - return dataName; - } - - public ArrayList getRNA() - { - return result; - } - - public Vector getAnnot() - { - return annotations; - } + public String id; + + protected ArrayList result; + + public RnamlFile() + { + super(); + + } + + public RnamlFile(String inFile, String type) throws IOException + { + super(inFile, type); + + } + + public RnamlFile(FileParse source) throws IOException + { + super(source); + + } + + // public RnamlFile(BufferedReader r) throws IOException, + // ExceptionFileFormatOrSyntax, ParserConfigurationException, SAXException, + // ExceptionPermissionDenied, ExceptionLoadingFailed + // { + // super(); + // parse(r); + // // sets the index of each sequence in the alignment + // for( int i=0,c=seqs.size(); i -1 && b < dataName.length()) + { + dataName = dataName.substring(b + 1).trim(); + + } + int e = (dataName.length() - dataName.indexOf(".")) + 1; + dataName = dataName.substring(1, e).trim(); + return dataName; + } }