diff --git a/src/main/java/module-info.java b/src/main/java/module-info.java
index 7906d2a12..74ebd13b4 100644
--- a/src/main/java/module-info.java
+++ b/src/main/java/module-info.java
@@ -27,7 +27,6 @@ module org.redkale {
exports org.redkale.convert.proto;
exports org.redkale.convert.spi;
exports org.redkale.inject;
- exports org.redkale.inject.spi;
exports org.redkale.lock;
exports org.redkale.lock.spi;
exports org.redkale.mq;
@@ -50,7 +49,6 @@ module org.redkale {
uses org.redkale.cache.spi.CacheManagerProvider;
uses org.redkale.cluster.spi.ClusterAgentProvider;
uses org.redkale.convert.spi.ConvertProvider;
- uses org.redkale.inject.spi.ResourceAnnotationProvider;
uses org.redkale.mq.spi.MessageAgentProvider;
uses org.redkale.schedule.spi.ScheduleManagerProvider;
uses org.redkale.source.spi.CacheSourceProvider;
diff --git a/src/main/java/org/redkale/inject/spi/ResourceAnnotationProvider.java b/src/main/java/org/redkale/inject/ResourceAnnotationLoader.java
similarity index 52%
rename from src/main/java/org/redkale/inject/spi/ResourceAnnotationProvider.java
rename to src/main/java/org/redkale/inject/ResourceAnnotationLoader.java
index 20ca2343c..0548d1c01 100644
--- a/src/main/java/org/redkale/inject/spi/ResourceAnnotationProvider.java
+++ b/src/main/java/org/redkale/inject/ResourceAnnotationLoader.java
@@ -1,26 +1,24 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-package org.redkale.inject.spi;
-
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Field;
-import org.redkale.inject.ResourceFactory;
-
-/**
- * 自定义注入加载器
- *
- *
- * 详情见: https://redkale.org
- *
- * @author zhangjx
- * @param Annotation
- */
-public interface ResourceAnnotationProvider {
-
- public void load(ResourceFactory factory, String srcResourceName, Object srcObj, T annotation, Field field, Object attachment);
-
- public Class annotationType();
-}
+/*
+ *
+ */
+package org.redkale.inject;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Field;
+
+/**
+ * 自定义注入加载器
+ *
+ *
+ * 详情见: https://redkale.org
+ *
+ * @since 2.8.0
+ * @author zhangjx
+ * @param Annotation
+ */
+public interface ResourceAnnotationLoader {
+
+ public void load(ResourceFactory factory, String srcResourceName, Object srcObj, T annotation, Field field, Object attachment);
+
+ public Class annotationType();
+}
diff --git a/src/main/java/org/redkale/inject/ResourceFactory.java b/src/main/java/org/redkale/inject/ResourceFactory.java
index 87afd031e..45bed8bf4 100644
--- a/src/main/java/org/redkale/inject/ResourceFactory.java
+++ b/src/main/java/org/redkale/inject/ResourceFactory.java
@@ -18,7 +18,6 @@ import java.util.logging.*;
import org.redkale.annotation.*;
import org.redkale.convert.*;
import org.redkale.convert.json.JsonConvert;
-import org.redkale.inject.spi.ResourceAnnotationProvider;
import org.redkale.util.RedkaleClassLoader;
import org.redkale.util.RedkaleException;
import org.redkale.util.TypeToken;
@@ -52,7 +51,7 @@ public final class ResourceFactory {
private final List> chidren = new CopyOnWriteArrayList<>();
- private final ConcurrentHashMap, ResourceAnnotationProvider> resAnnotationProviderMap = new ConcurrentHashMap();
+ private final ConcurrentHashMap, ResourceAnnotationLoader> resAnnotationLoaderMap = new ConcurrentHashMap();
private final ConcurrentHashMap resTypeLoaderMap = new ConcurrentHashMap();
@@ -60,16 +59,6 @@ public final class ResourceFactory {
private ResourceFactory(ResourceFactory parent) {
this.parent = parent;
- if (parent == null) {
- ServiceLoader loaders = ServiceLoader.load(ResourceAnnotationProvider.class);
- RedkaleClassLoader.putServiceLoader(ResourceAnnotationProvider.class);
- Iterator it = loaders.iterator();
- while (it.hasNext()) {
- ResourceAnnotationProvider ril = it.next();
- RedkaleClassLoader.putReflectionPublicConstructors(ril.getClass(), ril.getClass().getName());
- this.resAnnotationProviderMap.put(ril.annotationType(), ril);
- }
- }
}
/**
@@ -857,7 +846,7 @@ public final class ResourceFactory {
try {
list.add(srcObj);
Class clazz = srcObj.getClass();
- final boolean diyLoaderFlag = !parentRoot().resAnnotationProviderMap.isEmpty();
+ final boolean diyLoaderFlag = !parentRoot().resAnnotationLoaderMap.isEmpty();
do {
if (java.lang.Enum.class.isAssignableFrom(clazz)) {
break;
@@ -897,7 +886,7 @@ public final class ResourceFactory {
}
}
if (flag && diyLoaderFlag) {
- parentRoot().resAnnotationProviderMap.values().stream().forEach(iloader -> {
+ parentRoot().resAnnotationLoaderMap.values().stream().forEach(iloader -> {
Annotation ann = field.getAnnotation(iloader.annotationType());
if (ann != null) {
iloader.load(this, srcResourceName, srcObj, ann, field, attachment);
@@ -1062,9 +1051,9 @@ public final class ResourceFactory {
}
}
- public void register(final ResourceAnnotationProvider loader) {
+ public void register(final ResourceAnnotationLoader loader) {
Objects.requireNonNull(loader);
- parentRoot().resAnnotationProviderMap.put(loader.annotationType(), loader);
+ parentRoot().resAnnotationLoaderMap.put(loader.annotationType(), loader);
}
public void register(final ResourceTypeLoader rs, final Type... clazzs) {
diff --git a/src/main/java/org/redkale/mq/spi/MessageModuleEngine.java b/src/main/java/org/redkale/mq/spi/MessageModuleEngine.java
index 118ff06f9..35e807a1b 100644
--- a/src/main/java/org/redkale/mq/spi/MessageModuleEngine.java
+++ b/src/main/java/org/redkale/mq/spi/MessageModuleEngine.java
@@ -23,10 +23,10 @@ import org.redkale.boot.ClassFilter;
import org.redkale.boot.ModuleEngine;
import org.redkale.boot.NodeServer;
import org.redkale.convert.json.JsonConvert;
+import org.redkale.inject.ResourceAnnotationLoader;
import org.redkale.inject.ResourceEvent;
import org.redkale.inject.ResourceFactory;
import org.redkale.inject.ResourceTypeLoader;
-import org.redkale.inject.spi.ResourceAnnotationProvider;
import org.redkale.mq.MessageConsumer;
import org.redkale.mq.MessageManager;
import org.redkale.mq.MessageProducer;
@@ -187,7 +187,7 @@ public class MessageModuleEngine extends ModuleEngine {
}
this.messageAgents = mqs;
//------------------------------------ 注册 ResourceProducer MessageProducer ------------------------------------
- resourceFactory.register(new ResourceAnnotationProvider() {
+ resourceFactory.register(new ResourceAnnotationLoader() {
@Override
public void load(ResourceFactory rf, String srcResourceName, Object srcObj, ResourceProducer annotation, Field field, Object attachment) {
if (field.getType() != MessageProducer.class) {
diff --git a/src/test/java/org/redkale/test/inject/ResourceAnnotationTest.java b/src/test/java/org/redkale/test/inject/ResourceAnnotationTest.java
index 02a316aef..ce3042faf 100644
--- a/src/test/java/org/redkale/test/inject/ResourceAnnotationTest.java
+++ b/src/test/java/org/redkale/test/inject/ResourceAnnotationTest.java
@@ -12,8 +12,8 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.reflect.Field;
import org.junit.jupiter.api.*;
import org.redkale.convert.json.JsonConvert;
+import org.redkale.inject.ResourceAnnotationLoader;
import org.redkale.inject.ResourceFactory;
-import org.redkale.inject.spi.ResourceAnnotationProvider;
/**
*
@@ -38,7 +38,7 @@ public class ResourceAnnotationTest {
if (!main) Assertions.assertEquals(new File("conf/test.xml").toString(), bean.conf.toString());
}
- public static class CustomConfProvider implements ResourceAnnotationProvider {
+ public static class CustomConfProvider implements ResourceAnnotationLoader {
@Override
public void load(ResourceFactory factory, String srcResourceName, Object srcObj, CustomConf annotation, Field field, Object attachment) {