JAL-629 Change all stdout and stderr output to use Console.outPrintln and Console...
[jalview.git] / src / jalview / io / RnamlFile.java
index 8fbe43c..f8c384d 100644 (file)
@@ -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<ArrayList> allarray = new ArrayList();
-    ArrayList<ArrayList<SimpleBP>> BP = new ArrayList();
-    ArrayList strucinarray = new ArrayList();
-    SequenceI[] seqs = new SequenceI[result.size()];
+    // ArrayList<ArrayList> allarray = new ArrayList();
+    // ArrayList<ArrayList<SimpleBP>> 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<RNA> 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.