From 5f0eb2bca5a844d9a2aa4af8b82ac38974824681 Mon Sep 17 00:00:00 2001 From: Cyber MacGeddon Date: Tue, 24 Jun 2025 10:02:02 +0100 Subject: [PATCH] Fixed global dispatch vs flow issue --- .../trustgraph/rev_gateway/dispatcher.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/trustgraph-flow/trustgraph/rev_gateway/dispatcher.py b/trustgraph-flow/trustgraph/rev_gateway/dispatcher.py index 5377a09e..39c45cfc 100644 --- a/trustgraph-flow/trustgraph/rev_gateway/dispatcher.py +++ b/trustgraph-flow/trustgraph/rev_gateway/dispatcher.py @@ -86,10 +86,18 @@ class MessageDispatcher: # Map websocket service name to dispatcher service name dispatcher_service = self.service_mapping.get(service, service) - # Use DispatcherManager to process the request through Pulsar queues - await self.dispatcher_manager.invoke_flow_service( - request_data, responder, flow_id, dispatcher_service - ) + # Check if this is a global service or flow service + from ..gateway.dispatch.manager import global_dispatchers + if dispatcher_service in global_dispatchers: + # Use global service dispatcher + await self.dispatcher_manager.invoke_global_service( + request_data, responder, dispatcher_service + ) + else: + # Use DispatcherManager to process the request through Pulsar queues + await self.dispatcher_manager.invoke_flow_service( + request_data, responder, flow_id, dispatcher_service + ) # Get the response from the responder if responder.completed and responder.response: