/* * $Id$ * $Date$ */ package org.testng.internal.thread; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; /** * ICountDown adapter using the features in JDK 1.5, e.g. * <CODE>CountDownLatch</CODE>. * * @author <a href="mailto:the_mindstorm@evolva.ro>the_mindstorm</a> * @version $Revision$ */ public class CountDownAdapter implements ICountDown { protected CountDownLatch m_doneLatch; public CountDownAdapter(int count) { m_doneLatch = new CountDownLatch(count); } public void await() throws InterruptedException { m_doneLatch.await(); } public boolean await(long timeout) throws InterruptedException { return m_doneLatch.await(timeout, TimeUnit.MILLISECONDS); } public void countDown() { m_doneLatch.countDown(); } }