From 9ba3a88e8c38123ddfe05568aeeac7541efd5332 Mon Sep 17 00:00:00 2001 From: Joel Wetzell Date: Sat, 7 Feb 2026 09:53:48 -0600 Subject: [PATCH] add removeModule function to router --- router.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/router.go b/router.go index 2789411..5e28f1e 100644 --- a/router.go +++ b/router.go @@ -26,7 +26,6 @@ type Router struct { tracer trace.Tracer } -// TODO(jwetzell): support removing module func (r *Router) addModule(moduleDecl config.ModuleConfig) error { if moduleDecl.Id == "" { return errors.New("module id cannot be empty") @@ -50,6 +49,16 @@ func (r *Router) addModule(moduleDecl config.ModuleConfig) error { return nil } +func (r *Router) removeModule(moduleId string) error { + moduleInstance, ok := r.ModuleInstances[moduleId] + if !ok { + return errors.New("module id not found") + } + moduleInstance.Stop() + delete(r.ModuleInstances, moduleId) + return nil +} + // TODO(jwetzell): support removing route func (r *Router) addRoute(routeDecl config.RouteConfig) error { routeInstance, err := route.NewRoute(routeDecl)