refactored
This commit is contained in:
+7
-7
@@ -1,15 +1,15 @@
|
||||
from abc import ABC
|
||||
from msg_montainer import MsgContainer
|
||||
from msg_container import MsgContainer
|
||||
from msg_sink import MsgSink
|
||||
|
||||
class MsgSource(ABC):
|
||||
def __init__(self):
|
||||
self.sinks = {}
|
||||
self.sinks = []
|
||||
|
||||
def register_recv(self, name: str, sink: MsgSink):
|
||||
self.sinks[name] = {'sink': sink}
|
||||
def register_recv(self, sink: MsgSink):
|
||||
self.sinks.append(sink)
|
||||
|
||||
def call_sinks(self, msg: MsgContainer):
|
||||
if msg.name in self.sinks:
|
||||
sink = self.sinks[msg.name]['sink']
|
||||
sink.on_recv(msg)
|
||||
for sink in self.sinks:
|
||||
if sink.is_msg(msg):
|
||||
sink.on_recv(msg)
|
||||
|
||||
Reference in New Issue
Block a user