diff --git a/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/capability/annotation/CapabilityHolder.java b/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/AgentComponent.java similarity index 50% rename from Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/capability/annotation/CapabilityHolder.java rename to Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/AgentComponent.java index 4ed0f477..54a9db14 100644 --- a/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/capability/annotation/CapabilityHolder.java +++ b/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/AgentComponent.java @@ -1,9 +1,9 @@ -package work.slhaf.partner.api.agent.factory.capability.annotation; +package work.slhaf.partner.api.agent.factory; import java.lang.annotation.*; @Inherited @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.TYPE) -public @interface CapabilityHolder { +public @interface AgentComponent { } diff --git a/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/capability/CapabilityCheckFactory.java b/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/capability/CapabilityCheckFactory.java index 9b205b4a..ead1480a 100644 --- a/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/capability/CapabilityCheckFactory.java +++ b/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/capability/CapabilityCheckFactory.java @@ -3,6 +3,7 @@ package work.slhaf.partner.api.agent.factory.capability; import cn.hutool.core.util.ClassUtil; import org.reflections.Reflections; import work.slhaf.partner.api.agent.factory.AgentBaseFactory; +import work.slhaf.partner.api.agent.factory.AgentComponent; import work.slhaf.partner.api.agent.factory.capability.annotation.*; import work.slhaf.partner.api.agent.factory.capability.exception.*; import work.slhaf.partner.api.agent.factory.context.AgentRegisterContext; @@ -40,7 +41,7 @@ import static work.slhaf.partner.api.agent.util.AgentUtil.methodSignature; * *
{@link CapabilityCheckFactory#checkInjectCapability()}
- * 检查 {@link InjectCapability} 注解是否只用在 {@link CapabilityHolder} 所标识类的字段上。{@link AgentRunningModule} 与 {@link AgentSubModule} 已经被 {@link CapabilityHolder} 标注 + * 检查 {@link InjectCapability} 注解是否只用在 {@link AgentComponent} 所标识类的字段上。{@link AgentRunningModule} 与 {@link AgentSubModule} 已经被 {@link AgentComponent} 标注 *@InjectCapability注解是否只用在@CapabilityHolder所标识类的字段上
+ * 检查@InjectCapability注解是否只用在@AgentComponent所标识类的字段上
*/
private void checkInjectCapability() {
reflections.getFieldsAnnotatedWith(InjectCapability.class).forEach(field -> {
Class> declaringClass = field.getDeclaringClass();
- if (!isAssignableFromAnnotation(declaringClass, CapabilityHolder.class)) {
- throw new UnMatchedCapabilityException("InjectCapability 注解只能用于 CapabilityHolder 注解所在类,检查该类是否使用了@CapabilityHolder注解或者受其标注的注解或父类: " + declaringClass);
+ if (!isAssignableFromAnnotation(declaringClass, AgentComponent.class)) {
+ throw new UnMatchedCapabilityException("InjectCapability 注解只能用于 AgentComponent 注解所在类,检查该类是否使用了@CapabilityHolder注解或者受其标注的注解或父类: " + declaringClass);
}
});
}
diff --git a/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/capability/CapabilityRegisterFactory.java b/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/capability/CapabilityRegisterFactory.java
index fd674f03..cfbed1fe 100644
--- a/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/capability/CapabilityRegisterFactory.java
+++ b/Partner-Framework/src/main/java/work/slhaf/partner/api/agent/factory/capability/CapabilityRegisterFactory.java
@@ -3,6 +3,7 @@ package work.slhaf.partner.api.agent.factory.capability;
import cn.hutool.core.util.ClassUtil;
import org.reflections.Reflections;
import work.slhaf.partner.api.agent.factory.AgentBaseFactory;
+import work.slhaf.partner.api.agent.factory.AgentComponent;
import work.slhaf.partner.api.agent.factory.capability.annotation.*;
import work.slhaf.partner.api.agent.factory.capability.exception.CapabilityCoreInstancesCreateFailedException;
import work.slhaf.partner.api.agent.factory.capability.exception.CapabilityFactoryExecuteFailedException;
@@ -86,7 +87,7 @@ public class CapabilityRegisterFactory extends AgentBaseFactory {
}
private void setCapabilityHolderInstances() {
- Set