code: public boolean blockUntilConnectedOrTimedOut() throws InterruptedException
      {
          Preconditions.checkState(started.get(), "Client is not started");
  
          log.debug("blockUntilConnectedOrTimedOut() start");
          OperationTrace       trace = startAdvancedTracer("blockUntilConnectedOrTimedOut");
  
          internalBlockUntilConnectedOrTimedOut();
  
          trace.commit();
  
          boolean localIsConnected = state.isConnected();
          log.debug("blockUntilConnectedOrTimedOut() end. isConnected: " + localIsConnected);
  
          return localIsConnected;
      }
docs: This method blocks until the connection to ZK succeeds. Use with caution. The block
  will timeout after the connection timeout (as passed to the constructor) has elapsed
  
  @return true if the connection succeeded, false if not
  @throws InterruptedException interrupted while waiting