class StoppableCountDownLatch {

  public void await() throws InterruptedException {
    do {
      stopper.checkCancelInProgress(null);
    } while (!delegate.await(retryIntervalNanos, NANOSECONDS));
  }

  public  StoppableCountDownLatch(final CancelCriterion stopper, final int count);
    StoppableCountDownLatch(final CancelCriterion stopper, final int count,
      final long retryIntervalNanos, final NanoTimer nanoTimer);

}