guava/src/com/google/common/util/concurrent/ServiceManager.java
@SuppressWarnings("GoodTime") // should accept a java.time.Duration
  public void awaitHealthy(long timeout, TimeUnit unit) throws TimeoutException {
    state.awaitHealthy(timeout, unit);
  }
@SuppressWarnings("GoodTime") // should accept a java.time.Duration
  public void awaitHealthy(long timeout, TimeUnit unit) throws TimeoutException {
    state.awaitHealthy(timeout, unit);
  }
Waits for the {@link ServiceManager} to become {@linkplain #isHealthy() healthy} for no more
than the given time. The manager will become healthy after all the component services have
reached the {@linkplain State#RUNNING running} state.

@param timeout the maximum time to wait
@param unit the time unit of the timeout argument
@throws TimeoutException if not all of the services have finished starting within the deadline
@throws IllegalStateException if the service manager reaches a state from which it cannot
become {@linkplain #isHealthy() healthy}.