JAL-1620 version bump and release notes
[jalview.git] / src / jalview / analysis / Dna.java
index 16cae49..79dcab4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2b1)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
@@ -128,7 +128,8 @@ public class Dna
     {
       SequenceI newseq = translateCodingRegion(selection[s], seqstring[s],
               viscontigs, codons, gapCharacter,
-              (product != null) ? product[s] : null, false); // possibly anonymous
+              (product != null) ? product[s] : null, false); // possibly
+                                                             // anonymous
       // product
       if (newseq != null)
       {
@@ -424,7 +425,9 @@ public class Dna
    *          Definition of global ORF alignment reference frame
    * @param gapCharacter
    * @return sequence ready to be added to alignment.
-   * @deprecated Use {@link #translateCodingRegion(SequenceI,String,int[],AlignedCodonFrame,char,DBRefEntry,boolean)} instead
+   * @deprecated Use
+   *             {@link #translateCodingRegion(SequenceI,String,int[],AlignedCodonFrame,char,DBRefEntry,boolean)}
+   *             instead
    */
   public static SequenceI translateCodingRegion(SequenceI selection,
           String seqstring, int[] viscontigs, AlignedCodonFrame codons,
@@ -446,7 +449,8 @@ public class Dna
    * @param codons
    *          Definition of global ORF alignment reference frame
    * @param gapCharacter
-   * @param starForStop when true stop codons will translate as '*', otherwise as 'X'  
+   * @param starForStop
+   *          when true stop codons will translate as '*', otherwise as 'X'
    * @return sequence ready to be added to alignment.
    */
   public static SequenceI translateCodingRegion(SequenceI selection,
@@ -509,7 +513,7 @@ public class Dna
             // edit scontigs
             skipint[0] = vismapping.shift(skipint[0]);
             skipint[1] = vismapping.shift(skipint[1]);
-            for (vc = 0; vc < scontigs.length; )
+            for (vc = 0; vc < scontigs.length;)
             {
               if (scontigs[vc + 1] < skipint[0])
               {
@@ -517,16 +521,19 @@ public class Dna
                 vc += 2;
                 continue;
               }
-              if (scontigs[vc]>skipint[1])
+              if (scontigs[vc] > skipint[1])
               {
                 // finished editing so
                 break;
               }
-              // Edit the contig list to include the skipped region which did not translate
+              // Edit the contig list to include the skipped region which did
+              // not translate
               int[] t;
               // from : s1 e1 s2 e2 s3 e3
-              // to s:  s1 e1 s2 k0 k1 e2 s3 e3
-              // list increases by one unless one boundary (s2==k0 or e2==k1) matches, and decreases by one if skipint intersects whole visible contig 
+              // to s: s1 e1 s2 k0 k1 e2 s3 e3
+              // list increases by one unless one boundary (s2==k0 or e2==k1)
+              // matches, and decreases by one if skipint intersects whole
+              // visible contig
               if (scontigs[vc] <= skipint[0])
               {
                 if (skipint[0] == scontigs[vc])
@@ -536,11 +543,11 @@ public class Dna
                   if (scontigs[vc + 1] > skipint[1])
                   {
                     scontigs[vc] = skipint[1];
-                    vc+=2;
+                    vc += 2;
                   }
                   else
                   {
-                    if (scontigs[vc+1]==skipint[1])
+                    if (scontigs[vc + 1] == skipint[1])
                     {
                       // remove the contig
                       t = new int[scontigs.length - 2];
@@ -551,32 +558,38 @@ public class Dna
                       if (vc + 2 < t.length)
                       {
                         System.arraycopy(scontigs, vc + 2, t, vc, t.length
-                              - vc + 2);
+                                - vc + 2);
                       }
-                      scontigs=t;
-                    } else {
+                      scontigs = t;
+                    }
+                    else
+                    {
                       // truncate contig to before the skipint region
-                      scontigs[vc+1] = skipint[0]-1;
-                      vc+=2;
+                      scontigs[vc + 1] = skipint[0] - 1;
+                      vc += 2;
                     }
                   }
                 }
                 else
                 {
                   // scontig starts before start of skipint
-                  if (scontigs[vc+1]<skipint[1]) {
+                  if (scontigs[vc + 1] < skipint[1])
+                  {
                     // skipint truncates end of scontig
-                    scontigs[vc+1] = skipint[0]-1; 
-                    vc+=2;
-                  } else {
+                    scontigs[vc + 1] = skipint[0] - 1;
+                    vc += 2;
+                  }
+                  else
+                  {
                     // divide region to new contigs
                     t = new int[scontigs.length + 2];
-                    System.arraycopy(scontigs, 0, t, 0, vc +1);
-                    t[vc+1] = skipint[0];
-                    t[vc+2] = skipint[1];
-                    System.arraycopy(scontigs, vc + 1, t, vc+3, scontigs.length-(vc+1));
-                    scontigs=t;
-                    vc+=4;
+                    System.arraycopy(scontigs, 0, t, 0, vc + 1);
+                    t[vc + 1] = skipint[0];
+                    t[vc + 2] = skipint[1];
+                    System.arraycopy(scontigs, vc + 1, t, vc + 3,
+                            scontigs.length - (vc + 1));
+                    scontigs = t;
+                    vc += 4;
                   }
                 }
               }
@@ -643,10 +656,15 @@ public class Dna
               protein.toString());
       if (rf != 0)
       {
-        if (jalview.bin.Cache.log!=null) {
-          jalview.bin.Cache.log.debug("trimming contigs for incomplete terminal codon.");
-        } else {
-          System.err.println("trimming contigs for incomplete terminal codon.");
+        if (jalview.bin.Cache.log != null)
+        {
+          jalview.bin.Cache.log
+                  .debug("trimming contigs for incomplete terminal codon.");
+        }
+        else
+        {
+          System.err
+                  .println("trimming contigs for incomplete terminal codon.");
         }
         // map and trim contigs to ORF region
         vc = scontigs.length - 1;
@@ -760,7 +778,8 @@ public class Dna
   private static void transferCodedFeatures(SequenceI dna, SequenceI pep,
           MapList map, Hashtable featureTypes, Hashtable featureGroups)
   {
-    SequenceFeature[] sf = (dna.getDatasetSequence()!=null ? dna.getDatasetSequence() : dna).getSequenceFeatures();
+    SequenceFeature[] sf = (dna.getDatasetSequence() != null ? dna
+            .getDatasetSequence() : dna).getSequenceFeatures();
     Boolean fgstate;
     jalview.datamodel.DBRefEntry[] dnarefs = jalview.util.DBRefUtils
             .selectRefs(dna.getDBRef(),