from ..config import ConfigUnit, Translation from typing import Optional class ModemsConfig(ConfigUnit): NAME = 'modems' _strings: Translation def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self._strings = Translation('modems') @classmethod def schema(cls) -> Optional[dict]: return { 'type': 'dict', 'schema': { 'ip': cls._addr_schema(required=True, only_ip=True), 'gateway_ip': cls._addr_schema(required=False, only_ip=True), 'legacy_auth': {'type': 'boolean', 'required': True} } } def getshortname(self, modem: str, lang=Translation.DEFAULT_LANGUAGE): return self._strings.get(lang)[modem]['short'] def getfullname(self, modem: str, lang=Translation.DEFAULT_LANGUAGE): return self._strings.get(lang)[modem]['full']