def METHOD_NAME(request, *args, **kwargs):
    if condition(request, *args, **kwargs):
        prefix = key_prefix
        if callable(prefix):
            prefix = prefix(request, *args, **kwargs)
        response = cache_page(timeout=timeout, cache=cache, key_prefix=prefix)(
            func
        )(request, *args, **kwargs)
        if cache_control and not cache_control(request, *args, **kwargs):
            response.headers.pop("Expires")
            response.headers.pop("Cache-Control")
    return func(request, *args, **kwargs)