OXIESEC PANEL
- Current Dir:
/
/
opt
/
cloudlinux
/
venv
/
lib
/
python3.11
/
site-packages
/
setoptconf
Server IP: 2a02:4780:11:1084:0:327f:3464:10
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
09/05/2025 09:34:06 AM
rwxr-xr-x
📄
__init__.py
188 bytes
12/18/2024 10:23:15 AM
rw-r--r--
📁
__pycache__
-
02/07/2025 10:01:35 PM
rwxr-xr-x
📄
config.py
2.29 KB
12/18/2024 10:23:15 AM
rw-r--r--
📄
datatype.py
3.03 KB
12/18/2024 10:23:15 AM
rw-r--r--
📄
exception.py
372 bytes
12/18/2024 10:23:15 AM
rw-r--r--
📄
manager.py
1.1 KB
12/18/2024 10:23:15 AM
rw-r--r--
📄
setting.py
1.67 KB
12/18/2024 10:23:15 AM
rw-r--r--
📁
source
-
02/07/2025 10:01:35 PM
rwxr-xr-x
📄
util.py
241 bytes
12/18/2024 10:23:15 AM
rw-r--r--
Editing: manager.py
Close
from copy import deepcopy from .config import Configuration from .setting import Setting from .source.base import Source __all__ = ("ConfigurationManager",) class ConfigurationManager(object): def __init__(self, name): self.name = name self.settings = [] def add(self, setting): if isinstance(setting, Setting): self.settings.append(setting) else: raise TypeError("Can only add objects of type Setting") def retrieve(self, *sources): to_process = [] for source in reversed(sources): if isinstance(source, Source): to_process.append(source) elif isinstance(source, type) and issubclass(source, Source): to_process.append(source()) else: raise TypeError("All sources must be a Source") config = Configuration(settings=self.settings) for source in to_process: config = source.get_config( deepcopy(self.settings), manager=self, parent=config ) config.validate() return config