JAL-2089 patch broken merge to master for Release 2.10.0b1
[jalview.git] / src / jalview / io / PIRFile.java
index e6181fd..5f5c23c 100755 (executable)
@@ -1,26 +1,30 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5)
- * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- * 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
 
-import java.io.*;
-import java.util.*;
+import jalview.datamodel.Sequence;
+import jalview.datamodel.SequenceI;
 
-import jalview.datamodel.*;
+import java.io.IOException;
+import java.util.Vector;
 
 public class PIRFile extends AlignFile
 {
@@ -42,6 +46,7 @@ public class PIRFile extends AlignFile
     super(source);
   }
 
+  @Override
   public void parse() throws IOException
   {
     StringBuffer sequence;
@@ -96,6 +101,7 @@ public class PIRFile extends AlignFile
     }
   }
 
+  @Override
   public String print()
   {
     return print(getSeqsAsArray());
@@ -127,16 +133,19 @@ public class PIRFile extends AlignFile
         // tRNA N3
         // other functional RNA N1
 
-        out.append(">N1;" + s[i].getName() + "\n");
+        out.append(">N1;" + s[i].getName());
+        out.append(newline);
         if (s[i].getDescription() == null)
         {
           out.append(s[i].getName() + " "
                   + (s[i].getEnd() - s[i].getStart() + 1));
-          out.append(is_NA ? " bases\n" : " residues\n");
+          out.append(is_NA ? " bases" : " residues");
+          out.append(newline);
         }
         else
         {
-          out.append(s[i].getDescription() + "\n");
+          out.append(s[i].getDescription());
+          out.append(newline);
         }
       }
       else
@@ -144,27 +153,31 @@ public class PIRFile extends AlignFile
 
         if (useModellerOutput)
         {
-          out.append(">P1;" + s[i].getName() + "\n");
+          out.append(">P1;" + s[i].getName());
+          out.append(newline);
           md = new ModellerDescription(s[i]);
-          out.append(md.getDescriptionLine() + "\n");
+          out.append(md.getDescriptionLine());
+          out.append(newline);
         }
         else
         {
-          out.append(">P1;" + printId(s[i]) + "\n");
+          out.append(">P1;" + printId(s[i]));
+          out.append(newline);
           if (s[i].getDescription() != null)
           {
-            out.append(s[i].getDescription() + "\n");
+            out.append(s[i].getDescription());
+            out.append(newline);
           }
           else
           {
-            out
-                    .append(s[i].getName() + " "
-                            + (s[i].getEnd() - s[i].getStart() + 1)
-                            + " residues\n");
+            out.append(s[i].getName() + " "
+                    + (s[i].getEnd() - s[i].getStart() + 1) + " residues");
+            out.append(newline);
           }
         }
       }
-      int nochunks = (seq.length() / len) + 1;
+      int nochunks = (seq.length() / len)
+              + (seq.length() % len > 0 ? 1 : 0);
 
       for (int j = 0; j < nochunks; j++)
       {
@@ -173,11 +186,13 @@ public class PIRFile extends AlignFile
 
         if (end < seq.length())
         {
-          out.append(seq.substring(start, end) + "\n");
+          out.append(seq.substring(start, end));
+          out.append(newline);
         }
         else if (start < seq.length())
         {
-          out.append(seq.substring(start) + "\n");
+          out.append(seq.substring(start));
+          out.append(newline);
         }
       }