Merge branch 'releases/Release_2_11_3_Branch'
[jalview.git] / src / jalview / io / RnamlFile.java
index eb623d3..aa2ab4b 100644 (file)
@@ -103,35 +103,35 @@ 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());
@@ -160,8 +160,10 @@ public class RnamlFile extends AlignFile
         }
       }
       sqs[i] = new Sequence(id, seq, begin, end);
-
-      sqs[i].setEnd(sqs[i].findPosition(sqs[i].getLength()));
+      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()];
 
@@ -172,15 +174,16 @@ public class RnamlFile extends AlignFile
       }
       for (int k = 0; k < rna.length(); k++)
       {
-        ann[k] = new Annotation(annot[k], "", Rna.getRNASecStrucState(
-                annot[k]).charAt(0), 0f);
+        ann[k] = new Annotation(annot[k], "",
+                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);
 
       sqs[i].addAlignmentAnnotation(align);
       sqs[i].setRNA(result.get(i));
@@ -209,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.