Я пишу клиент, реализующий специальный протокол, и у меня есть фабрика для него. Моя проблема заключается в следующем: у моего клиента двухдиапазонная связь, и иногда я хочу сказать ему «отправить эти данные». Но все, что у меня есть, это объект фабрики:
class MyFactory(ClientFactory):
protocol = MyProtocol
def __init__(self, recv_callback):
self.recv_callback = recv_callback
def send_message(self, msg):
self.protocol.send_message(msg)
Итак, я создаю фабрику и имею объект фабрики, а не объект протокола. Когда вызывается send_message
выше, я получаю сообщение об ошибке, потому что self. протокол
- это просто класс, а не объект.
Как я могу это сделать? Следует ли мне также предоставить протокол для подключения в дополнение к фабрике?
Спасибо