def METHOD_NAME(self, request, view):
    profile = getattr(request.user, "profile", None)
    if profile is not None and profile.concurrency_limit:
        limit = profile.concurrency_limit
    else:
        limit = self.num_requests
    if limit <= 0:
        self._log(
            request,
            "ALLOWING: throttling disabled as configured rate <= 0",
        )
        return True
    if (key := self.get_cache_key(request)) is None:
        return True
    self.key = key
    self.timestamp = timestamp = self.timer()
    request_id = str(uuid4())
    args = [limit, timestamp, request_id, self.duration]
    allowed, count, wait = self.incr_concurrent_requests_count_if_allowed(
        [key], args
    )
    if allowed:
        django_request = getattr(request, "_request")
        setattr(django_request, BASEROW_CONCURRENCY_THROTTLE_REQUEST_ID, request_id)
        log_msg = "ALLOWING: as count={count} < limit={limit}"
    else:
        self._wait = wait
        log_msg = "DENYING: as count={count} >= limit={limit}. Wait {wait} secs"
    self._log(
        request, log_msg, request_id=request_id, count=count, limit=limit, wait=wait
    )
    return bool(allowed)