Skip to content

Commit 55ca81d

Browse files
committed
added disconnect feature to python client
1 parent 6271df9 commit 55ca81d

2 files changed

Lines changed: 9 additions & 1 deletion

File tree

moleculer/client.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,23 @@ def on_channel_open(self, channel):
1414
self.channel: Channel = channel
1515
self.add_on_channel_close_callback()
1616
info_queue = 'MOL.INFO.{node_id}'.format(node_id=self.NODE_ID)
17+
disconnect_queue = 'MOL.DISCONNECT.{node_id}'.format(node_id=self.NODE_ID)
1718
self.setup_queue(info_queue)
19+
self.setup_queue(disconnect_queue)
1820
self.channel.queue_bind(self.on_bindok, info_queue, 'MOL.INFO')
21+
self.channel.queue_bind(self.on_bindok, disconnect_queue, 'MOL.DISCONNECT')
1922
self.channel.basic_consume(self.process_info_packages, info_queue)
23+
self.channel.basic_consume(self.on_node_disconnect, disconnect_queue)
2024
self.discover_packet()
2125

2226
def process_info_packages(self, unused_channel, basic_deliver, properties, body):
2327
info_packet = json.loads(body)
2428
self.network.add_node(info_packet)
2529

30+
def on_node_disconnect(self, unused_channel, basic_deliver, properties, body):
31+
disconnect_package = json.loads(body)
32+
self.network.disconnect_node(disconnect_package['sender'])
33+
2634
def emit(self, event_name, data=None):
2735
candidates = self.get_emit_candidates(event_name)
2836
if len(candidates) == 0:

moleculer/consumer.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ def response(self, channel, basic_deliver, properties, body):
8282
# TODO: handle responses from other services
8383

8484
def event(self, channel, basic_deliver, properties, body):
85-
print('EVENT!!!!')
85+
# print('EVENT!!!!')
8686
event_packet = json.loads(body)
8787
sender, event, data = event_packet['sender'], event_packet['event'], event_packet['data']
8888
event_handler(sender, event, data)

0 commit comments

Comments
 (0)