code: void onTransportIdle() {
      isActive = false;
      if (shutdownFuture == null) {
        return;
      }
      if (shutdownFuture.isDone()) {
        shutdownDelayed = false;
        shutdownFuture = scheduler
            .schedule(shutdownTask, maxConnectionIdleInNanos, TimeUnit.NANOSECONDS);
      } else {
        nextIdleMonitorTime = ticker.nanoTime() + maxConnectionIdleInNanos;
      }
    }
docs: There are no outstanding RPCs on the transport.