mirror of
https://github.com/slhaf/Partner.git
synced 2026-05-12 16:53:04 +08:00
chore: adjust reflect related util's location
This commit is contained in:
@@ -12,8 +12,8 @@ import work.slhaf.partner.framework.agent.factory.capability.exception.UnMatched
|
||||
import work.slhaf.partner.framework.agent.factory.capability.exception.UnMatchedCapabilityMethodException
|
||||
import work.slhaf.partner.framework.agent.factory.component.annotation.AgentComponent
|
||||
import work.slhaf.partner.framework.agent.factory.context.AgentRegisterContext
|
||||
import work.slhaf.partner.framework.agent.util.AgentUtil.isAssignableFromAnnotation
|
||||
import work.slhaf.partner.framework.agent.util.AgentUtil.methodSignature
|
||||
import work.slhaf.partner.framework.agent.factory.util.ReflectUtil.isAssignableFromAnnotation
|
||||
import work.slhaf.partner.framework.agent.factory.util.ReflectUtil.methodSignature
|
||||
|
||||
/**
|
||||
* 校验 Capability 体系注解关系,并将扫描结果写入 `CapabilityFactoryContext`。
|
||||
|
||||
@@ -8,7 +8,7 @@ import work.slhaf.partner.framework.agent.factory.capability.exception.Capabilit
|
||||
import work.slhaf.partner.framework.agent.factory.capability.exception.CapabilityFactoryExecuteFailedException
|
||||
import work.slhaf.partner.framework.agent.factory.capability.exception.DuplicateMethodException
|
||||
import work.slhaf.partner.framework.agent.factory.context.AgentRegisterContext
|
||||
import work.slhaf.partner.framework.agent.util.AgentUtil.methodSignature
|
||||
import work.slhaf.partner.framework.agent.factory.util.ReflectUtil.methodSignature
|
||||
import java.lang.reflect.Method
|
||||
import java.lang.reflect.Proxy
|
||||
import java.util.function.Function
|
||||
|
||||
@@ -7,7 +7,7 @@ import work.slhaf.partner.framework.agent.factory.component.annotation.Init
|
||||
import work.slhaf.partner.framework.agent.factory.component.annotation.InjectModule
|
||||
import work.slhaf.partner.framework.agent.factory.component.exception.ModuleCheckException
|
||||
import work.slhaf.partner.framework.agent.factory.context.AgentRegisterContext
|
||||
import work.slhaf.partner.framework.agent.util.AgentUtil
|
||||
import work.slhaf.partner.framework.agent.factory.util.ReflectUtil
|
||||
|
||||
/**
|
||||
* 校验 Component 层面的注解约束,并缓存 Init 方法扫描结果。
|
||||
@@ -26,7 +26,7 @@ class ComponentAnnotationValidatorFactory : AgentBaseFactory() {
|
||||
reflections.getMethodsAnnotatedWith(Init::class.java)
|
||||
.forEach { method ->
|
||||
val declaringClass = method.declaringClass
|
||||
if (!AgentUtil.isAssignableFromAnnotation(declaringClass, AgentComponent::class.java)) {
|
||||
if (!ReflectUtil.isAssignableFromAnnotation(declaringClass, AgentComponent::class.java)) {
|
||||
throw ModuleCheckException(
|
||||
"@Init 只能用于 AgentComponent 中: " +
|
||||
"${declaringClass.name}#${method.name}"
|
||||
@@ -47,7 +47,7 @@ class ComponentAnnotationValidatorFactory : AgentBaseFactory() {
|
||||
reflections.getFieldsAnnotatedWith(InjectModule::class.java)
|
||||
.forEach { field ->
|
||||
val declaringClass = field.declaringClass
|
||||
if (!AgentUtil.isAssignableFromAnnotation(declaringClass, AgentComponent::class.java)) {
|
||||
if (!ReflectUtil.isAssignableFromAnnotation(declaringClass, AgentComponent::class.java)) {
|
||||
throw ModuleCheckException(
|
||||
"@InjectModule 只能用于 AgentComponent 中: " +
|
||||
"${declaringClass.name}#${field.name}"
|
||||
|
||||
@@ -5,7 +5,7 @@ import work.slhaf.partner.framework.agent.factory.component.annotation.Init
|
||||
import work.slhaf.partner.framework.agent.factory.component.exception.ModuleInitHookExecuteFailedException
|
||||
import work.slhaf.partner.framework.agent.factory.context.AgentContext
|
||||
import work.slhaf.partner.framework.agent.factory.context.AgentRegisterContext
|
||||
import work.slhaf.partner.framework.agent.util.AgentUtil.methodSignature
|
||||
import work.slhaf.partner.framework.agent.factory.util.ReflectUtil.methodSignature
|
||||
import java.lang.reflect.Method
|
||||
|
||||
/**
|
||||
|
||||
@@ -4,7 +4,7 @@ import work.slhaf.partner.framework.agent.factory.AgentBaseFactory
|
||||
import work.slhaf.partner.framework.agent.factory.capability.annotation.CapabilityCore
|
||||
import work.slhaf.partner.framework.agent.factory.component.annotation.AgentComponent
|
||||
import work.slhaf.partner.framework.agent.factory.component.exception.ModuleCheckException
|
||||
import work.slhaf.partner.framework.agent.util.AgentUtil
|
||||
import work.slhaf.partner.framework.agent.factory.util.ReflectUtil
|
||||
|
||||
/**
|
||||
* 校验并收集 `@Shutdown` 方法。
|
||||
@@ -24,9 +24,9 @@ class ShutdownHookCollectorFactory : AgentBaseFactory() {
|
||||
.forEach { method ->
|
||||
val declaringClass = method.declaringClass
|
||||
val isAgentComponentRelated =
|
||||
AgentUtil.isAssignableFromAnnotation(declaringClass, AgentComponent::class.java)
|
||||
ReflectUtil.isAssignableFromAnnotation(declaringClass, AgentComponent::class.java)
|
||||
val isCapabilityCoreRelated =
|
||||
AgentUtil.isAssignableFromAnnotation(declaringClass, CapabilityCore::class.java)
|
||||
ReflectUtil.isAssignableFromAnnotation(declaringClass, CapabilityCore::class.java)
|
||||
|
||||
if (!isAgentComponentRelated && !isCapabilityCoreRelated) {
|
||||
throw ModuleCheckException(
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package work.slhaf.partner.framework.agent.util;
|
||||
package work.slhaf.partner.framework.agent.factory.util;
|
||||
|
||||
import org.reflections.Reflections;
|
||||
|
||||
@@ -8,7 +8,7 @@ import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public final class AgentUtil {
|
||||
public final class ReflectUtil {
|
||||
|
||||
public static boolean isAssignableFromAnnotation(Class<?> clazz, Class<? extends Annotation> targetAnnotation) {
|
||||
Set<Class<?>> visited = new HashSet<>();
|
||||
Reference in New Issue
Block a user