[jbosscache-commits] JBoss Cache SVN: r7685 - in core/trunk/src/main/java/org/jboss/cache/util: concurrent and 1 other directory.

jbosscache-commits at lists.jboss.org jbosscache-commits at lists.jboss.org
Thu Feb 12 10:48:57 EST 2009


Author: manik.surtani at jboss.com
Date: 2009-02-12 10:48:57 -0500 (Thu, 12 Feb 2009)
New Revision: 7685

Removed:
   core/trunk/src/main/java/org/jboss/cache/util/ThreadGate.java
Modified:
   core/trunk/src/main/java/org/jboss/cache/util/concurrent/ReclosableLatch.java
Log:
removed obsolete class

Deleted: core/trunk/src/main/java/org/jboss/cache/util/ThreadGate.java
===================================================================
--- core/trunk/src/main/java/org/jboss/cache/util/ThreadGate.java	2009-02-12 13:51:27 UTC (rev 7684)
+++ core/trunk/src/main/java/org/jboss/cache/util/ThreadGate.java	2009-02-12 15:48:57 UTC (rev 7685)
@@ -1,119 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2000 - 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software 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
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.cache.util;
-
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.locks.Condition;
-import java.util.concurrent.locks.ReentrantLock;
-
-/**
- * A reclosable gate with timeout support.
- *
- * @author Jason T. Greene
- */
-public class ThreadGate
-{
-   private final ReentrantLock lock = new ReentrantLock();
-   private final Condition condition = lock.newCondition();
-
-   private boolean open;
-   private int sequence;
-
-   /**
-    * Open the gate.
-    */
-   public void open()
-   {
-      lock.lock();
-      try
-      {
-         open = true;
-         sequence++;
-         condition.signalAll();
-      }
-      finally
-      {
-         lock.unlock();
-      }
-   }
-
-   /**
-    * Close the gate.
-    */
-   public void close()
-   {
-      lock.lock();
-      try
-      {
-         open = false;
-      }
-      finally
-      {
-         lock.unlock();
-      }
-   }
-
-   /**
-    * Waits for the gate to open.
-    *
-    * @throws InterruptedException if this thread is interrupted
-    */
-   public void await() throws InterruptedException
-   {
-      lock.lock();
-      try
-      {
-         int snapshot = sequence;
-         while (!open && snapshot == sequence)
-            condition.await();
-      }
-      finally
-      {
-         lock.unlock();
-      }
-   }
-
-   /**
-    * Waits for the gate to open or the specified time to elapse.
-    *
-    * @param time the maximum time in milliseconds to wait.
-    * @return false if gate timeout occurred
-    * @throws InterruptedException if this thread is interrupted
-    */
-   public boolean await(long time) throws InterruptedException
-   {
-      lock.lock();
-      try
-      {
-         int snapshot = sequence;
-         boolean success = true;
-         while (!open && snapshot == sequence && success)
-            success = condition.await(time, TimeUnit.MILLISECONDS);
-
-         return success;
-      }
-      finally
-      {
-         lock.unlock();
-      }
-   }
-}
\ No newline at end of file

Modified: core/trunk/src/main/java/org/jboss/cache/util/concurrent/ReclosableLatch.java
===================================================================
--- core/trunk/src/main/java/org/jboss/cache/util/concurrent/ReclosableLatch.java	2009-02-12 13:51:27 UTC (rev 7684)
+++ core/trunk/src/main/java/org/jboss/cache/util/concurrent/ReclosableLatch.java	2009-02-12 15:48:57 UTC (rev 7685)
@@ -25,10 +25,12 @@
 import java.util.concurrent.locks.AbstractQueuedSynchronizer;
 
 /**
- * A better impl of {@link org.jboss.cache.util.ThreadGate}, that uses an {@link java.util.concurrent.locks.AbstractQueuedSynchronizer}.
+ * This latch allows you to set a default state (open or closed), and repeatedly open or close
+ * the latch and have threads wait on it.
  * <p/>
- * This implementation allows you to create a latch with a default state (open or closed), and repeatedly open or close
- * the latch.
+ * This is a better impl of the old <tt>org.jboss.cache.util.ThreadGate</tt> (which doesn't exist anymore), that uses an
+ * {@link java.util.concurrent.locks.AbstractQueuedSynchronizer} while ThreadGate used to use explicit {@link java.util.concurrent.locks.Lock}
+ * objects.
  *
  * @author Manik Surtani (<a href="mailto:manik AT jboss DOT org">manik AT jboss DOT org</a>)
  * @since 3.0




More information about the jbosscache-commits mailing list