Update config_utils.py

This commit is contained in:
Eukanj827 2022-08-03 21:00:46 +08:00
parent e06c03a579
commit 730e66cdf0
1 changed files with 20 additions and 3 deletions

View File

@ -55,7 +55,12 @@ CONFIG_OPTIONS = {
'LOG-level': ['DEBUG', 'INFO', 'WARNING', 'ERROR']
}
#function name: check_config_validity
#description: Checks the validity of the passed parameter
#arguments: section, option, value
#return value: bool and string
#date: 2022/8/
#contact: 1865997821
def check_config_validity(section, option, value):
config_item = '%s-%s' % (section, option)
# exceptional cases:
@ -87,6 +92,16 @@ def check_config_validity(section, option, value):
return True, None
#function name: load_sys_configs
#description: Create and load the modification file
#arguments: The configuration to modify
#return value: a new configuration file
#noteTo facilitate the user to modify the configuration items through the
#configuration file easily, we add inline comments to the file, but we need to remove the inline comments while parsing.
#Otherwise, it will cause the read configuration items to be wrong.
#date: 2022/8/
#contact: 1865997821
def load_sys_configs(confile):
# Note: To facilitate the user to modify the configuration items through the
# configuration file easily, we add inline comments to the file, but we need
@ -96,6 +111,8 @@ def load_sys_configs(confile):
with open(file=confile, mode='r') as fp:
configs.read_file(fp)
# Define a class that encapsulates the modification item
class ConfigWrapper(object):
def __getattribute__(self, name):
try:
@ -122,7 +139,7 @@ def load_sys_configs(confile):
return ConfigWrapper()
# Defines a class that updates the encapsulated modification file
class ConfigUpdater:
def __init__(self, filepath):
self.config = ConfigParser(inline_comment_prefixes=None)
@ -170,7 +187,7 @@ class ConfigUpdater:
self.fp.flush()
self.fp.close()
# Defines a class that dynamically displays a modified item
class DynamicConfig:
@staticmethod
def get(*args, **kwargs):