class DefaultCompletableAsyncCompletion implements CompletableAsyncCompletion {

  @Override
  public void join() throws CompletionException, InterruptedException {
    try {
      join(10, TimeUnit.SECONDS);
    } catch (TimeoutException ex) {
      throw new RuntimeException("Default timeout triggered for blocking call to AsyncCompletion::join()", ex);
    }
  }

    DefaultCompletableAsyncCompletion();
    DefaultCompletableAsyncCompletion(CompletableFuture<Void> future);

}