File size: 869 Bytes
22a3c56 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
"""Proxy management module"""
from typing import Optional
from ..core.database import Database
from ..core.models import ProxyConfig
class ProxyManager:
"""Proxy configuration manager"""
def __init__(self, db: Database):
self.db = db
async def get_proxy_url(self) -> Optional[str]:
"""Get proxy URL if enabled, otherwise return None"""
config = await self.db.get_proxy_config()
if config.proxy_enabled and config.proxy_url:
return config.proxy_url
return None
async def update_proxy_config(self, enabled: bool, proxy_url: Optional[str]):
"""Update proxy configuration"""
await self.db.update_proxy_config(enabled, proxy_url)
async def get_proxy_config(self) -> ProxyConfig:
"""Get proxy configuration"""
return await self.db.get_proxy_config()
|