2025-02-09 23:00:18 +01:00
|
|
|
import logging
|
|
|
|
from logging import Logger
|
|
|
|
|
2024-12-17 22:14:06 +01:00
|
|
|
from libbot.pycord.classes import PycordBot
|
|
|
|
|
2025-02-09 23:00:18 +01:00
|
|
|
from classes.cache.holo_cache_memcached import HoloCacheMemcached
|
|
|
|
from classes.cache.holo_cache_redis import HoloCacheRedis
|
2025-02-09 23:45:18 +01:00
|
|
|
from modules.cache_manager import create_cache_client
|
2025-02-09 23:00:18 +01:00
|
|
|
|
|
|
|
logger: Logger = logging.getLogger(__name__)
|
|
|
|
|
2024-12-17 22:14:06 +01:00
|
|
|
|
|
|
|
class HoloBot(PycordBot):
|
2025-02-09 23:00:18 +01:00
|
|
|
cache: HoloCacheMemcached | HoloCacheRedis | None = None
|
|
|
|
|
2024-12-17 22:14:06 +01:00
|
|
|
def __init__(self, *args, **kwargs):
|
|
|
|
super().__init__(*args, **kwargs)
|
2025-02-09 23:37:44 +01:00
|
|
|
self._set_cache_engine()
|
2025-02-09 23:00:18 +01:00
|
|
|
|
|
|
|
def _set_cache_engine(self) -> None:
|
|
|
|
if "cache" in self.config and self.config["cache"]["type"] is not None:
|
|
|
|
self.cache = create_cache_client(self.config, self.config["cache"]["type"])
|