Files
tools/executor/mediator.py
RemiZOffAlex 26083ad0a4
All checks were successful
Test Actions / Builder (push) Successful in 27s
Добавить executor/mediator.py
2025-10-19 13:36:57 +03:00

51 lines
1.3 KiB
Python

__author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru'
class Mediator:
def __init__(self):
self.__values = {}
def get(self, name):
assert name in self.__values, f'Ключ {name} в настройках не найден'
return self.__values[name]
def set(self, name, value):
self.__values[name] = value
def emit(self, name, *args, **kwargs):
assert name in self.__values, f'Ключ {name} в настройках не найден'
method = self.__values[name]
response = method(*args, **kwargs)
return response
def register(self, name, function):
self.__values[name] = function
def __contains__(self, key):
if key in self.__values:
return True
else:
return False
def __delitem__(self, key):
del self.__values[key]
def __getitem__(self, key):
value = self.__values[key]
return value
def __setitem__(self, key, value):
self.__values[key] = value
def __iter__(self):
for name in self.__values.keys():
yield name
def __repr__(self):
result = []
for key in self.__values:
value = self.__values[key]
result.append(f'{key}: {value}')
return '/n'.join(result)