From 43c2c648ac7a868660a400c5a159a6ef5f84e05f Mon Sep 17 00:00:00 2001 From: slhafzjw Date: Tue, 21 Apr 2026 09:05:51 +0800 Subject: [PATCH] refactor(framework): support inject Standalone module into Sub module --- .../agent/factory/component/ComponentInjectorFactory.kt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Partner-Framework/src/main/java/work/slhaf/partner/framework/agent/factory/component/ComponentInjectorFactory.kt b/Partner-Framework/src/main/java/work/slhaf/partner/framework/agent/factory/component/ComponentInjectorFactory.kt index 67fb7d14..8edbfaa8 100644 --- a/Partner-Framework/src/main/java/work/slhaf/partner/framework/agent/factory/component/ComponentInjectorFactory.kt +++ b/Partner-Framework/src/main/java/work/slhaf/partner/framework/agent/factory/component/ComponentInjectorFactory.kt @@ -13,6 +13,7 @@ import java.lang.reflect.Modifier * * 注入关系: * - `sub + standalone -> running` + * - `standalone -> sub` * - `sub + standalone -> standalone` * - `sub + standalone -> additionalComponent` * @@ -44,6 +45,11 @@ class ComponentInjectorFactory : AgentBaseFactory() { standaloneModules.forEach { it.injectTarget.add(running.instance) } } + subModules.forEach { sub -> + injectIntoTarget(sub.instance, standaloneInstances) + standaloneModules.forEach { it.injectTarget.add(sub.instance) } + } + standaloneModules.forEach { standalone -> val providersForStandalone = subInstances + standaloneInstances.filter { it !== standalone.instance } injectIntoTarget(standalone.instance, providersForStandalone)