protected function idleReconnectIfNeeded(LdapOperationInterface $operation)
    {
        // An auth operation will force a reconnect anyways, so avoid extra work
        if (!$this->connection->getConfig()->getIdleReconnect() || $operation instanceof AuthenticationOperation) {
            return;
        }

        if ($this->connection->getIdleTime() >= $this->connection->getConfig()->getIdleReconnect()) {
            $this->connection->close()->connect();
        }
    }