docs: public void cancel() {
      Exchange exchangeToCancel;
      RealConnection connectionToCancel;
      synchronized (connectionPool) {
        canceled = true;
        exchangeToCancel = exchange;
        connectionToCancel = exchangeFinder != null && exchangeFinder.connectingConnection() != null
            ? exchangeFinder.connectingConnection()
            : connection;
      }
      if (exchangeToCancel != null) {
        exchangeToCancel.cancel();
      } else if (connectionToCancel != null) {
        connectionToCancel.cancel();
      }
    }