mirror of
https://github.com/Cog-Creators/Red-DiscordBot.git
synced 2025-11-06 11:18:54 -05:00
43 lines
1.1 KiB
Python
43 lines
1.1 KiB
Python
import asyncio
|
|
import contextlib
|
|
import logging
|
|
import urllib.parse
|
|
from typing import Mapping, Optional, TYPE_CHECKING, Union
|
|
|
|
import aiohttp
|
|
from lavalink.rest_api import LoadResult
|
|
|
|
from redbot.core import Config
|
|
from redbot.core.bot import Red
|
|
from redbot.core.commands import Cog
|
|
|
|
from ..audio_dataclasses import Query
|
|
from ..audio_logging import IS_DEBUG, debug_exc_log
|
|
|
|
if TYPE_CHECKING:
|
|
from .. import Audio
|
|
|
|
_API_URL = "https://redbot.app/"
|
|
|
|
log = logging.getLogger("red.cogs.Audio.api.GlobalDB")
|
|
|
|
|
|
class GlobalCacheWrapper:
|
|
def __init__(
|
|
self, bot: Red, config: Config, session: aiohttp.ClientSession, cog: Union["Audio", Cog]
|
|
):
|
|
# Place Holder for the Global Cache PR
|
|
self.bot = bot
|
|
self.config = config
|
|
self.session = session
|
|
self.api_key = None
|
|
self._handshake_token = ""
|
|
self.can_write = False
|
|
self._handshake_token = ""
|
|
self.has_api_key = None
|
|
self._token: Mapping[str, str] = {}
|
|
self.cog = cog
|
|
|
|
def update_token(self, new_token: Mapping[str, str]):
|
|
self._token = new_token
|