| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- from .message import message
- class message_builder:
- def __init__(self) -> None:
- self.__sections = dict()
- self.__default = dict()
- def __add_section(self, section: str) -> object:
- if not section in self.__sections.keys():
- self.__sections[section] = dict()
- def __set_section_key(self, section: str, key: str, value: str) -> None:
- self.__sections[section][key] = value
- def __set_default_key(self, key: str, value: str) -> None:
- self.__default[key] = value
- def set_key(
- self,
- key: str,
- value: str,
- section: str | None = None
- ) -> object:
- key = key.strip()
- value = value.strip()
- if len(key) == 0:
- raise RuntimeError("Key name can nob being empty.")
- if section is None:
- self.__set_default_key(key, value)
- return self
- section = section.strip()
-
- if len(section) == 0:
- raise RuntimeError("Section name can not being empty.")
- self.__add_section(section)
- self.__set_section_key(section, key, value)
- return self
- def build(self, help_type: type | None = None) -> message:
- result = message(self.__default, self.__sections)
- if help_type is None:
- return result
- return help_type(result)
|