X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2FRnamlFile.java;h=aa2ab4b77f59a5b85c3790d7a7e7ea00a3f76123;hb=eb3e681d6e82ccdd5d312d1981dfb306e7f479f0;hp=8fbe43cb799c40bef2698e9e8f61b459fd951dfe;hpb=ee198b3ca3687f18a2ee186f4e7c7330f4ea30f0;p=jalview.git diff --git a/src/jalview/io/RnamlFile.java b/src/jalview/io/RnamlFile.java index 8fbe43c..aa2ab4b 100644 --- a/src/jalview/io/RnamlFile.java +++ b/src/jalview/io/RnamlFile.java @@ -20,7 +20,7 @@ */ package jalview.io; -import jalview.analysis.SecStrConsensus.SimpleBP; +import jalview.analysis.Rna; import jalview.datamodel.AlignmentAnnotation; import jalview.datamodel.Annotation; import jalview.datamodel.Sequence; @@ -32,6 +32,7 @@ import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.util.ArrayList; +import java.util.List; import com.stevesoft.pat.Regex; @@ -53,10 +54,9 @@ public class RnamlFile extends AlignFile } - public RnamlFile(String inFile, DataSourceType sourceType) - throws IOException + public RnamlFile(String inFile, DataSourceType type) throws IOException { - super(inFile, sourceType); + super(inFile, type); } @@ -103,43 +103,43 @@ public class RnamlFile extends AlignFile } catch (ExceptionPermissionDenied pdx) { errormessage = MessageManager.formatMessage( - "exception.rnaml_couldnt_access_datasource", - new String[] { pdx.getMessage() }); + "exception.rnaml_couldnt_access_datasource", new String[] + { pdx.getMessage() }); throw new IOException(pdx); } catch (ExceptionLoadingFailed lf) { errormessage = MessageManager.formatMessage( - "exception.ranml_couldnt_process_data", - new String[] { lf.getMessage() }); + "exception.ranml_couldnt_process_data", new String[] + { lf.getMessage() }); throw new IOException(lf); } catch (ExceptionFileFormatOrSyntax iff) { - errormessage = MessageManager.formatMessage( - "exception.ranml_invalid_file", - new String[] { iff.getMessage() }); + errormessage = MessageManager + .formatMessage("exception.ranml_invalid_file", new String[] + { iff.getMessage() }); throw new IOException(iff); } catch (Exception x) { error = true; errormessage = MessageManager.formatMessage( - "exception.ranml_problem_parsing_data", - new String[] { x.getMessage() }); + "exception.ranml_problem_parsing_data", new String[] + { x.getMessage() }); throw new IOException(errormessage, x); } } @SuppressWarnings("unchecked") - public void _parse() throws FileNotFoundException, - ExceptionPermissionDenied, ExceptionLoadingFailed, - ExceptionFileFormatOrSyntax + public void _parse() + throws FileNotFoundException, ExceptionPermissionDenied, + ExceptionLoadingFailed, ExceptionFileFormatOrSyntax { result = RNAFactory.loadSecStrRNAML(getReader()); - ArrayList allarray = new ArrayList(); - ArrayList> BP = new ArrayList(); - ArrayList strucinarray = new ArrayList(); - SequenceI[] seqs = new SequenceI[result.size()]; + // ArrayList allarray = new ArrayList(); + // ArrayList> BP = new ArrayList(); + // ArrayList strucinarray = new ArrayList(); + SequenceI[] sqs = new SequenceI[result.size()]; for (int i = 0; i < result.size(); i++) { @@ -159,9 +159,11 @@ public class RnamlFile extends AlignFile id += "." + i; } } - seqs[i] = new Sequence(id, seq, begin, end); - - seqs[i].setEnd(seqs[i].findPosition(seqs[i].getLength())); + sqs[i] = new Sequence(id, seq, begin, end); + if (seq.length() != (end - begin + 1)) + { + sqs[i].setEnd(sqs[i].findPosition(sqs[i].getLength())); + } String[] annot = new String[rna.length()]; Annotation[] ann = new Annotation[rna.length()]; @@ -173,42 +175,36 @@ public class RnamlFile extends AlignFile for (int k = 0; k < rna.length(); k++) { ann[k] = new Annotation(annot[k], "", - jalview.schemes.ResidueProperties.getRNASecStrucState( - annot[k]).charAt(0), 0f); + Rna.getRNASecStrucState(annot[k]).charAt(0), 0f); } AlignmentAnnotation align = new AlignmentAnnotation( "Secondary Structure", - current.getID().trim().length() > 0 ? "Secondary Structure for " - + current.getID() - : "", ann); + current.getID().trim().length() > 0 + ? "Secondary Structure for " + current.getID() + : "", + ann); - seqs[i].addAlignmentAnnotation(align); - seqs[i].setRNA(result.get(i)); + sqs[i].addAlignmentAnnotation(align); + sqs[i].setRNA(result.get(i)); - allarray.add(strucinarray); + // allarray.add(strucinarray); annotations.addElement(align); - BP.add(align.bps); + // BP.add(align.bps); } - setSeqs(seqs); - } - - public static String print(SequenceI[] s) - { - return "not yet implemented"; + setSeqs(sqs); } @Override - public String print() + public String print(SequenceI[] s, boolean jvSuffix) { - System.out.print("print :"); - return print(getSeqsAsArray()); + return "not yet implemented"; } - public ArrayList getRNA() + public List getRNA() { return result; } @@ -216,8 +212,8 @@ public class RnamlFile extends AlignFile // public static void main(String[] args) { // Pattern p= Pattern.compile("(.+)[.][^.]+"); // Matcher m = p.matcher("toto.xml.zip"); - // System.out.println(m.matches()); - // System.out.println(m.group(1)); + // jalview.bin.Console.outPrintln(m.matches()); + // jalview.bin.Console.outPrintln(m.group(1)); // } /** * make a friendly ID string.