py.lib.aw_config

Yohn Y. 2024-05-05 Parent:b76a704f31b1 Child:26be458b26bb

3:bac1fe0751a9 Go to Latest

py.lib.aw_config/src/aw_config/file.py

. Декорируем возможные ошибки в чтении файла конфигурации.

History
     1.1 --- a/src/aw_config/file.py	Sat May 04 20:36:03 2024 +0300
     1.2 +++ b/src/aw_config/file.py	Sun May 05 11:32:45 2024 +0300
     1.3 @@ -114,7 +114,17 @@
     1.4          """\
     1.5          Производим разбор файла конфигурации и создаём корневой раздел конфигурации
     1.6          """
     1.7 -        return ConfigFileContent(toml.load(self.file_name))
     1.8 +        try:
     1.9 +            return ConfigFileContent(toml.load(self.file_name))
    1.10 +
    1.11 +        except OSError as e:
    1.12 +            raise ConfigFileError(f'Ошибка чтения файла "{self.file_name}": {e}')
    1.13 +
    1.14 +        except toml.TomlDecodeError as e:
    1.15 +            raise ConfigFileError(f'Ошибка в разборе файла конфигурации: {e}')
    1.16 +
    1.17 +        except ValueError as e:
    1.18 +            raise ConfigFileError(f'Ошибка разбора файла конфигурации: {ConfigFileError.fmt_error(e)}')
    1.19  
    1.20      def __exit__(self, exc_type, exc_val, exc_tb):
    1.21          pass