JAL-3210 Barebones gradle/buildship/eclipse. See README
[jalview.git] / src / jalview / datamodel / HiddenColumns.java
index 458bde7..2d43f02 100644 (file)
@@ -86,20 +86,6 @@ public class HiddenColumns
    */
   private List<int[]> hiddenColumns = new ArrayList<>();
 
-  private BitSet hiddenBitSet;
-
-  public BitSet getBitset()
-  {
-    if (hiddenBitSet == null)
-    {
-      hiddenBitSet = new BitSet();
-      for (int[] range : hiddenColumns)
-      {
-        hiddenBitSet.set(range[0], range[1] + 1);
-      }
-    }
-    return hiddenBitSet;
-  }
   /**
    * Constructor
    */
@@ -227,7 +213,6 @@ public class HiddenColumns
               prevHiddenCount);
     } finally
     {
-      hiddenBitSet = null;
       LOCK.writeLock().unlock();
     }
   }
@@ -279,7 +264,6 @@ public class HiddenColumns
       insertRangeAtOverlap(i, start, end, region);
       added = true;
     }
-    hiddenBitSet = null;
     return added;
   }
 
@@ -326,7 +310,6 @@ public class HiddenColumns
     }
     numColumns += region[1] - oldend;
     hiddenColumns.subList(i + 1, endi + 1).clear();
-    hiddenBitSet = null;
   }
 
   /**
@@ -347,7 +330,6 @@ public class HiddenColumns
 
     } finally
     {
-      hiddenBitSet = null;
       LOCK.writeLock().unlock();
     }
   }
@@ -374,7 +356,6 @@ public class HiddenColumns
 
     } finally
     {
-      hiddenBitSet = null;
       LOCK.writeLock().unlock();
     }
   }
@@ -418,7 +399,6 @@ public class HiddenColumns
       }
     } finally
     {
-      hiddenBitSet = null;
       LOCK.writeLock().unlock();
     }
   }
@@ -640,7 +620,6 @@ public class HiddenColumns
 
     } finally
     {
-      hiddenBitSet = null;
       LOCK.readLock().unlock();
     }
   }
@@ -819,7 +798,7 @@ public class HiddenColumns
       for (int firstSet = tohide
               .nextSetBit(start), lastSet = start; firstSet >= start
                       && lastSet <= end; firstSet = tohide
-                              .nextSetBit(lastSet))
+                      .nextSetBit(lastSet))
       {
         lastSet = tohide.nextClearBit(firstSet);
         if (lastSet <= end)
@@ -834,7 +813,6 @@ public class HiddenColumns
       cursor = new HiddenColumnsCursor(hiddenColumns);
     } finally
     {
-      hiddenBitSet = null;
       LOCK.writeLock().unlock();
     }
   }
@@ -916,7 +894,6 @@ public class HiddenColumns
       }
     } finally
     {
-      hiddenBitSet = null;
       LOCK.writeLock().unlock();
     }
   }
@@ -932,12 +909,16 @@ public class HiddenColumns
     {
       LOCK.writeLock().lock();
 
-      getBitset().andNot(updates);
+      BitSet hiddenBitSet = new BitSet();
+      for (int[] range : hiddenColumns)
+      {
+        hiddenBitSet.set(range[0], range[1] + 1);
+      }
+      hiddenBitSet.andNot(updates);
       hiddenColumns.clear();
       hideColumns(hiddenBitSet);
     } finally
     {
-      hiddenBitSet = null;
       LOCK.writeLock().unlock();
     }
   }