docs: @Override
    public void connect() {
      if (!canRun.compareAndSet(true, false) || clientBase.isDone()) {
        throw new IllegalStateException("There is already a connection thread running for " + this.clientBase);
      }
      executorService.execute(clientBase);
      logger.info("New connection executed: {}", this.clientBase);
    }