16 lines
352 B
Python
16 lines
352 B
Python
from abc import ABC
|
|
from msg_container import MsgContainer
|
|
from msg_listener import MsgListener
|
|
|
|
class MsgTalker(ABC):
|
|
def __init__(self):
|
|
self.sinks = []
|
|
|
|
def register_listener(self, sink: MsgListener):
|
|
self.sinks.append(sink)
|
|
|
|
def call_listener(self, msg: MsgContainer):
|
|
for sink in self.sinks:
|
|
if sink.is_msg(msg):
|
|
sink.on_recv(msg)
|