public final AssertSubscriber<T> await(Duration timeout){
  if (cdl.getCount() == 0) {
    return this;
  }
  try {
    if (!cdl.await(timeout.toMillis(),TimeUnit.MILLISECONDS)) {
      throw new AssertionError("No complete or error signal before timeout");
    }
    return this;
  }
 catch (  InterruptedException ex) {
    throw new AssertionError("Wait interrupted",ex);
  }
}

public final AssertSubscriber < T > await ( Duration timeout ) { if ( cdl . getCount ( ) == 0 ) { return this ; } try { if ( ! cdl . await ( timeout . toMillis ( ) , TimeUnit . MILLISECONDS ) ) { throw new AssertionError ( "No complete or error signal before timeout" ) ; } return this ; } catch ( InterruptedException ex ) { throw new AssertionError ( "Wait interrupted" , ex ) ; } }
blocking method that waits until a complete successfully or error signal is received or until a timeout occurs .
