diff --git a/src/main/java/org/redkale/boot/PropertiesAgent.java b/src/main/java/org/redkale/boot/PropertiesAgent.java index 7f6cc3d06..aa5379877 100644 --- a/src/main/java/org/redkale/boot/PropertiesAgent.java +++ b/src/main/java/org/redkale/boot/PropertiesAgent.java @@ -23,14 +23,31 @@ public abstract class PropertiesAgent { public static final String PROP_NAMESPACE_APPLICATION = "application"; + /** + * 编译时进行的操作 + * + * @param conf 节点配置 + */ public void compile(AnyValue conf) { } + /** + * 初始化配置源,配置项需要写入appProperties,并监听配置项的变化 + * + * @param factory 依赖注入资源工厂 + * @param appProperties 全局property.开头的配置项 + * @param conf 节点配置 + */ public abstract void init(ResourceFactory factory, Properties appProperties, AnyValue conf); + /** + * 销毁动作 + * + * @param conf 节点配置 + */ public abstract void destroy(AnyValue conf); protected String getKeyResourceName(String key) { - return key.startsWith("property.") ? key : ("property." + key); + return key.startsWith("system.property.") || key.startsWith("property.") ? key : ("property." + key); } } diff --git a/src/main/java/org/redkale/util/ResourceFactory.java b/src/main/java/org/redkale/util/ResourceFactory.java index 56b8850f7..83ee1262f 100644 --- a/src/main/java/org/redkale/util/ResourceFactory.java +++ b/src/main/java/org/redkale/util/ResourceFactory.java @@ -839,6 +839,7 @@ public final class ResourceFactory { this.elements = new CopyOnWriteArrayList<>(); } + //wrappers=null时才会触发listener的ResourceChangeEvent事件 public ResourceEntry(final String name, T value, final List elements, List wrappers, boolean sync) { this.name = name; this.value = value;