From bba84dbe39682ca5fc333be58018245470136f56 Mon Sep 17 00:00:00 2001 From: Cyber MacGeddon Date: Fri, 2 May 2025 15:26:36 +0100 Subject: [PATCH] Working for multiple interfaces --- .../trustgraph/gateway/dispatch/manager.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/trustgraph-flow/trustgraph/gateway/dispatch/manager.py b/trustgraph-flow/trustgraph/gateway/dispatch/manager.py index 793d758a..8ba8c658 100644 --- a/trustgraph-flow/trustgraph/gateway/dispatch/manager.py +++ b/trustgraph-flow/trustgraph/gateway/dispatch/manager.py @@ -121,18 +121,23 @@ class DispatcherManager: flow = params.get("flow") kind = params.get("kind") + if flow not in self.flows: + raise RuntimeError("Invalid flow") + if kind not in request_response_dispatchers: raise RuntimeError("Invalid kind") key = (flow, kind) - if flow not in self.flows: - raise RuntimeError("Invalid flow") - if key in self.dispatchers: return await self.dispatchers[key].process(data, responder) - qconfig = self.flows[flow]["interfaces"]["embeddings"] + intf_defs = self.flows[flow]["interfaces"] + + if kind not in intf_defs: + raise RuntimeError("This kind not supported by flow") + + qconfig = intf_defs[kind] dispatcher = request_response_dispatchers[kind]( pulsar_client = self.pulsar_client,