def _get_file_url(url, size, kind): k = (kind, url, size) cached = _GRIDFS_CACHE.get(k) if cached: return cached doc = MEDIA_CACHE.get_file(url, size, kind) if doc: u = f"/media/{str(doc._id)}" _GRIDFS_CACHE[k] = u return u # MEDIA_CACHE.cache(url, kind) _logger.error(f"cache not available for {url}/{size}/{kind}") return url
def _get_file_url(url, size, kind) -> str: k = (url, size, kind) cached = _FILE_URL_CACHE.get(k) if cached: return cached doc = MEDIA_CACHE.get_file(*k) if doc: out = f"/media/{str(doc._id)}" _FILE_URL_CACHE[k] = out return out _logger.error(f"cache not available for {url}/{size}/{kind}") if url.startswith(BASE_URL): return url p = urlparse(url) return f"/p/{p.scheme}" + p._replace(scheme="").geturl()[1:]