{
+ public String base64(T t){
+ String jsonString = JSON.toJSONString(t);
+ JSONObject json = JSONObject.parseObject(jsonString);
+ // 对payload进行base64编码
+ String payload = json.getString("payload");
+ String encodedPayload = Base64.getEncoder().encodeToString(payload.getBytes());
+ json.put("payload", encodedPayload);
+ return json.toJSONString();
+ }
+
+ public static String addId(String jsonString){
+ JSONObject json = JSONObject.parseObject(jsonString);
+ json.put("randomId", IdUtils.getIdStr());
+ return json.toJSONString();
+ }
+}
diff --git a/smart-mqtt-data-persistence/src/main/resources/META-INF/services/org.smartboot.mqtt.broker.plugin.Plugin b/smart-mqtt-data-persistence/src/main/resources/META-INF/services/org.smartboot.mqtt.broker.plugin.Plugin
index 02f209379a7c536c70ec312e927860135ad8bdc9..09da520f148d0c3958eca4135dfc8c56414b3712 100644
--- a/smart-mqtt-data-persistence/src/main/resources/META-INF/services/org.smartboot.mqtt.broker.plugin.Plugin
+++ b/smart-mqtt-data-persistence/src/main/resources/META-INF/services/org.smartboot.mqtt.broker.plugin.Plugin
@@ -1 +1,2 @@
-org.smartboot.mqtt.data.persistence.impl.RedisPlugin
\ No newline at end of file
+org.smartboot.mqtt.data.persistence.impl.RedisPlugin
+org.smartboot.mqtt.data.persistence.impl.KafkaPlugin
\ No newline at end of file
diff --git a/smart-mqtt-data-persistence/target/apidocs/allclasses-frame.html b/smart-mqtt-data-persistence/target/apidocs/allclasses-frame.html
new file mode 100644
index 0000000000000000000000000000000000000000..cca71d36edd6f6b91e6633877792a5b5f01169eb
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/allclasses-frame.html
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+所有类 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+所有类
+
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/allclasses-noframe.html b/smart-mqtt-data-persistence/target/apidocs/allclasses-noframe.html
new file mode 100644
index 0000000000000000000000000000000000000000..cb2e1eaadb056aeaa2449e6884c1fb4502f2e7ca
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/allclasses-noframe.html
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+所有类 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+所有类
+
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/constant-values.html b/smart-mqtt-data-persistence/target/apidocs/constant-values.html
new file mode 100644
index 0000000000000000000000000000000000000000..6ffd8481c362006efd004a17e750cf6fef7560c7
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/constant-values.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+常量字段值 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/deprecated-list.html b/smart-mqtt-data-persistence/target/apidocs/deprecated-list.html
new file mode 100644
index 0000000000000000000000000000000000000000..513fa304c559628707a390e70e983d0b5679437d
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/deprecated-list.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+已过时的列表 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/help-doc.html b/smart-mqtt-data-persistence/target/apidocs/help-doc.html
new file mode 100644
index 0000000000000000000000000000000000000000..55933d41a9b9e171608e55ddcd1167dcb858bd8b
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/help-doc.html
@@ -0,0 +1,231 @@
+
+
+
+
+
+
+API 帮助 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+-
+
概览
+概览 页面是此 API 文档的首页, 提供了所有程序包的列表及其概要。此页面也可能包含这些程序包的总体说明。
+
+-
+
程序包
+每个程序包都有一个页面, 其中包含它的类和接口的列表及其概要。此页面可以包含六个类别:
+
+- 接口 (斜体)
+- 类
+- 枚举
+- 异常错误
+- 错误
+- 注释类型
+
+
+-
+
类/接口
+每个类, 接口, 嵌套类和嵌套接口都有各自的页面。其中每个页面都由三部分 (类/接口说明, 概要表, 以及详细的成员说明) 组成:
+
+- 类继承图
+- 直接子类
+- 所有已知子接口
+- 所有已知实现类
+- 类/接口声明
+- 类/接口说明
+
+
+- 嵌套类概要
+- 字段概要
+- 构造器概要
+- 方法概要
+
+
+- 字段详细资料
+- 构造器详细资料
+- 方法详细资料
+
+每个概要条目都包含该项目的详细说明的第一句。概要条目按字母顺序排列, 而详细说明则按其在源代码中出现的顺序排列。这样保持了程序员所建立的逻辑分组。
+
+-
+
注释类型
+每个注释类型都有各自的页面, 其中包含以下部分:
+
+- 注释类型声明
+- 注释类型说明
+- 必需元素概要
+- 可选元素概要
+- 元素详细资料
+
+
+-
+
枚举
+每个枚举都有各自的页面, 其中包含以下部分:
+
+- 枚举声明
+- 枚举说明
+- 枚举常量概要
+- 枚举常量详细资料
+
+
+-
+
使用
+每个已文档化的程序包, 类和接口都有各自的“使用”页面。此页面介绍了使用给定类或程序包的任何部分的程序包, 类, 方法, 构造器和字段。对于给定的类或接口 A, 其“使用”页面包含 A 的子类, 声明为 A 的字段, 返回 A 的方法, 以及带有类型为 A 的参数的方法和构造器。访问此页面的方法是: 首先转至程序包, 类或接口, 然后单击导航栏中的 "使用" 链接。
+
+-
+
树 (类分层结构)
+对于所有程序包, 有一个类分层结构页面, 以及每个程序包的分层结构。每个分层结构页面都包含类的列表和接口的列表。从java.lang.Object
开始, 按继承结构对类进行排列。接口不从java.lang.Object
继承。
+
+- 查看“概览”页面时, 单击 "树" 将显示所有程序包的分层结构。
+- 查看特定程序包, 类或接口页面时, 单击 "树" 将仅显示该程序包的分层结构。
+
+
+-
+
已过时的 API
+已过时的 API 页面列出了所有已过时的 API。一般由于进行了改进并且通常提供了替代的 API, 所以建议不要使用已过时的 API。在将来的实现过程中, 可能会删除已过时的 API。
+
+-
+
索引
+索引 包含按字母顺序排列的所有类, 接口, 构造器, 方法和字段的列表。
+
+-
+
上一个/下一个
+这些链接使您可以转至下一个或上一个类, 接口, 程序包或相关页面。
+
+-
+
框架/无框架
+这些链接用于显示和隐藏 HTML 框架。所有页面均具有有框架和无框架两种显示方式。
+
+-
+
所有类
+所有类链接显示所有类和接口 (除了非静态嵌套类型)。
+
+-
+
序列化表格
+每个可序列化或可外部化的类都有其序列化字段和方法的说明。此信息对重新实现者有用, 而对使用 API 的开发者则没有什么用处。尽管导航栏中没有链接, 但您可以通过下列方式获取此信息: 转至任何序列化类, 然后单击类说明的 "另请参阅" 部分中的 "序列化表格"。
+
+-
+
常量字段值
+常量字段值页面列出了静态最终字段及其值。
+
+
+
此帮助文件适用于使用标准 doclet 生成的 API 文档。
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/index-all.html b/smart-mqtt-data-persistence/target/apidocs/index-all.html
new file mode 100644
index 0000000000000000000000000000000000000000..22d0f1c4cb103c23876103251ca4fa9f20412784
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/index-all.html
@@ -0,0 +1,309 @@
+
+
+
+
+
+
+索引 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+A B D G I K M O P R S T
+
+
+
A
+
+- addId(String) - 类 中的静态方法org.smartboot.mqtt.data.persistence.utils.StrUtils
+-
+
+
+
+
+
B
+
+- base64(T) - 类 中的方法org.smartboot.mqtt.data.persistence.utils.StrUtils
+-
+
+
+
+
+
D
+
+- DataPersistPlugin<T> - org.smartboot.mqtt.data.persistence中的类
+-
+- DataPersistPlugin() - 类 的构造器org.smartboot.mqtt.data.persistence.DataPersistPlugin
+-
+
+
+
+
+
G
+
+- getAcks() - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.KafkaPluginConfig
+-
+- getBatchSize() - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.KafkaPluginConfig
+-
+- getBuffer() - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.KafkaPluginConfig
+-
+- getConfig() - 类 中的方法org.smartboot.mqtt.data.persistence.DataPersistPlugin
+-
+- getCreateTime() - 类 中的方法org.smartboot.mqtt.data.persistence.nodeinfo.MessageNodeInfo
+-
+- getHost() - 类 中的方法org.smartboot.mqtt.data.persistence.config.PluginConfig
+-
+- getId() - 类 中的静态方法org.smartboot.mqtt.data.persistence.utils.IdUtils
+-
+
生成long 类型的ID
+
+- getIdStr() - 类 中的静态方法org.smartboot.mqtt.data.persistence.utils.IdUtils
+-
+
生成String 类型的ID
+
+- getLingerMs() - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.KafkaPluginConfig
+-
+- getPassword() - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.RedisPluginConfig
+-
+- getPayload() - 类 中的方法org.smartboot.mqtt.data.persistence.nodeinfo.MessageNodeInfo
+-
+- getRetries() - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.KafkaPluginConfig
+-
+- getTimeout() - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.RedisPluginConfig
+-
+- getTopic() - 类 中的方法org.smartboot.mqtt.data.persistence.nodeinfo.MessageNodeInfo
+-
+
+
+
+
+
I
+
+- IdUtils - org.smartboot.mqtt.data.persistence.utils中的类
+-
+- IdUtils() - 类 的构造器org.smartboot.mqtt.data.persistence.utils.IdUtils
+-
+- isBase64() - 类 中的方法org.smartboot.mqtt.data.persistence.config.PluginConfig
+-
+- isRetained() - 类 中的方法org.smartboot.mqtt.data.persistence.nodeinfo.MessageNodeInfo
+-
+- isSimple() - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.RedisPluginConfig
+-
+
+
+
+
+
K
+
+- KafkaPlugin - org.smartboot.mqtt.data.persistence.impl中的类
+-
+- KafkaPlugin() - 类 的构造器org.smartboot.mqtt.data.persistence.impl.KafkaPlugin
+-
+- KafkaPluginConfig - org.smartboot.mqtt.data.persistence.config.imp中的类
+-
+- KafkaPluginConfig() - 类 的构造器org.smartboot.mqtt.data.persistence.config.imp.KafkaPluginConfig
+-
+
+
+
+
+
M
+
+- MessageNodeInfo - org.smartboot.mqtt.data.persistence.nodeinfo中的类
+-
+- MessageNodeInfo(MqttPublishMessage) - 类 的构造器org.smartboot.mqtt.data.persistence.nodeinfo.MessageNodeInfo
+-
+
+
+
+
+
O
+
+- org.smartboot.mqtt.data.persistence - 程序包 org.smartboot.mqtt.data.persistence
+-
+- org.smartboot.mqtt.data.persistence.config - 程序包 org.smartboot.mqtt.data.persistence.config
+-
+- org.smartboot.mqtt.data.persistence.config.imp - 程序包 org.smartboot.mqtt.data.persistence.config.imp
+-
+- org.smartboot.mqtt.data.persistence.impl - 程序包 org.smartboot.mqtt.data.persistence.impl
+-
+- org.smartboot.mqtt.data.persistence.nodeinfo - 程序包 org.smartboot.mqtt.data.persistence.nodeinfo
+-
+- org.smartboot.mqtt.data.persistence.utils - 程序包 org.smartboot.mqtt.data.persistence.utils
+-
+
+
+
+
+
P
+
+- PluginConfig - org.smartboot.mqtt.data.persistence.config中的类
+-
+- PluginConfig() - 类 的构造器org.smartboot.mqtt.data.persistence.config.PluginConfig
+-
+
+
+
+
+
R
+
+- RedisPlugin - org.smartboot.mqtt.data.persistence.impl中的类
+-
+- RedisPlugin() - 类 的构造器org.smartboot.mqtt.data.persistence.impl.RedisPlugin
+-
+- RedisPluginConfig - org.smartboot.mqtt.data.persistence.config.imp中的类
+-
+- RedisPluginConfig() - 类 的构造器org.smartboot.mqtt.data.persistence.config.imp.RedisPluginConfig
+-
+
+
+
+
+
S
+
+- setAcks(String) - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.KafkaPluginConfig
+-
+- setBase64(boolean) - 类 中的方法org.smartboot.mqtt.data.persistence.config.PluginConfig
+-
+- setBatchSize(int) - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.KafkaPluginConfig
+-
+- setBuffer(int) - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.KafkaPluginConfig
+-
+- setConfig(T) - 类 中的方法org.smartboot.mqtt.data.persistence.DataPersistPlugin
+-
+- setHost(String) - 类 中的方法org.smartboot.mqtt.data.persistence.config.PluginConfig
+-
+- setLingerMs(int) - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.KafkaPluginConfig
+-
+- setPassword(String) - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.RedisPluginConfig
+-
+- setRetries(int) - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.KafkaPluginConfig
+-
+- setSimple(boolean) - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.RedisPluginConfig
+-
+- setTimeout(int) - 类 中的方法org.smartboot.mqtt.data.persistence.config.imp.RedisPluginConfig
+-
+- StrUtils<T> - org.smartboot.mqtt.data.persistence.utils中的类
+-
+- StrUtils() - 类 的构造器org.smartboot.mqtt.data.persistence.utils.StrUtils
+-
+
+
+
+
+
T
+
+- toString() - 类 中的方法org.smartboot.mqtt.data.persistence.nodeinfo.MessageNodeInfo
+-
+
+
A B D G I K M O P R S T
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/index.html b/smart-mqtt-data-persistence/target/apidocs/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..d4377a67c3344b0978fb3ed24413db29747999f5
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/index.html
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+smart-mqtt-data-persistence 0.19 API
+
+
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/DataPersistPlugin.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/DataPersistPlugin.html
new file mode 100644
index 0000000000000000000000000000000000000000..a90f189ef20654599e6b114818c7109aa041b93f
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/DataPersistPlugin.html
@@ -0,0 +1,304 @@
+
+
+
+
+
+
+DataPersistPlugin (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+
+
+
+
+- java.lang.Object
+-
+
+- org.smartboot.mqtt.broker.plugin.Plugin
+-
+
+- org.smartboot.mqtt.data.persistence.DataPersistPlugin<T>
+
+
+
+
+
+
+
+
+-
+
+
+
+
+-
+
+
+
方法概要
+
+
+-
+
+
+
从类继承的方法 org.smartboot.mqtt.broker.plugin.Plugin
+install, order, pluginName, uninstall
+
+
+
+
+
+
+
+
+
+-
+
+
+
+
+-
+
+
+
方法详细资料
+
+
+
+
+
+
+
+
+
+
+-
+
getConfig
+public T getConfig()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/class-use/DataPersistPlugin.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/class-use/DataPersistPlugin.html
new file mode 100644
index 0000000000000000000000000000000000000000..a9cd5b5327166a485f2aa491c68b352ed0ae2a1a
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/class-use/DataPersistPlugin.html
@@ -0,0 +1,170 @@
+
+
+
+
+
+
+类 org.smartboot.mqtt.data.persistence.DataPersistPlugin的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/PluginConfig.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/PluginConfig.html
new file mode 100644
index 0000000000000000000000000000000000000000..694530628a71fef7f4794c5fd291ce1b8115e9c8
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/PluginConfig.html
@@ -0,0 +1,316 @@
+
+
+
+
+
+
+PluginConfig (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+
+
+
+
+- java.lang.Object
+-
+
+- org.smartboot.mqtt.data.persistence.config.PluginConfig
+
+
+
+
+
+
+
+-
+
+
+-
+
+
+
构造器详细资料
+
+
+
+
+-
+
PluginConfig
+public PluginConfig()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/class-use/PluginConfig.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/class-use/PluginConfig.html
new file mode 100644
index 0000000000000000000000000000000000000000..3d7541c6a87254c69c9f8c17ce56ee272ce79287
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/class-use/PluginConfig.html
@@ -0,0 +1,170 @@
+
+
+
+
+
+
+类 org.smartboot.mqtt.data.persistence.config.PluginConfig的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/KafkaPluginConfig.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/KafkaPluginConfig.html
new file mode 100644
index 0000000000000000000000000000000000000000..894f2365927022e776746169ef23b395e473c5aa
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/KafkaPluginConfig.html
@@ -0,0 +1,402 @@
+
+
+
+
+
+
+KafkaPluginConfig (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+-
+
+
+
+
+-
+
+
+
方法详细资料
+
+
+
+
+-
+
getAcks
+public String getAcks()
+
+
+
+
+
+
+
+
+
+
+-
+
getRetries
+public int getRetries()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+-
+
getLingerMs
+public int getLingerMs()
+
+
+
+
+
+
+
+
+
+
+-
+
getBuffer
+public int getBuffer()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/RedisPluginConfig.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/RedisPluginConfig.html
new file mode 100644
index 0000000000000000000000000000000000000000..c8f849ed8302cc34a52f7217cee67312dcfa73e3
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/RedisPluginConfig.html
@@ -0,0 +1,350 @@
+
+
+
+
+
+
+RedisPluginConfig (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+-
+
+
+
+
+-
+
+
+
方法详细资料
+
+
+
+
+
+
+
+
+
+
+
+
+-
+
getTimeout
+public int getTimeout()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/class-use/KafkaPluginConfig.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/class-use/KafkaPluginConfig.html
new file mode 100644
index 0000000000000000000000000000000000000000..5e0c21c9967a332fb983cb175f675ae6efd925b6
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/class-use/KafkaPluginConfig.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+类 org.smartboot.mqtt.data.persistence.config.imp.KafkaPluginConfig的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+没有org.smartboot.mqtt.data.persistence.config.imp.KafkaPluginConfig的用法
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/class-use/RedisPluginConfig.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/class-use/RedisPluginConfig.html
new file mode 100644
index 0000000000000000000000000000000000000000..ca7813dd360f50dce5468e25ddd9c9c5707d0fc6
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/class-use/RedisPluginConfig.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+类 org.smartboot.mqtt.data.persistence.config.imp.RedisPluginConfig的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+没有org.smartboot.mqtt.data.persistence.config.imp.RedisPluginConfig的用法
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/package-frame.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/package-frame.html
new file mode 100644
index 0000000000000000000000000000000000000000..9e305d2d996fc73b76dc3d22f77a124e27091546
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/package-frame.html
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.config.imp (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/package-summary.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/package-summary.html
new file mode 100644
index 0000000000000000000000000000000000000000..dc7a935b79c6974819f514ba2bc5aac9b08c1d00
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/package-summary.html
@@ -0,0 +1,148 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.config.imp (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/package-tree.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/package-tree.html
new file mode 100644
index 0000000000000000000000000000000000000000..e7f4523221cc83024a8dcc2a30ece5da35668a6c
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/package-tree.html
@@ -0,0 +1,144 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.config.imp 类分层结构 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/package-use.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/package-use.html
new file mode 100644
index 0000000000000000000000000000000000000000..29d25217fabc93fe6fb8048bbd26dd0be02b89ab
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/imp/package-use.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+程序包 org.smartboot.mqtt.data.persistence.config.imp的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+没有org.smartboot.mqtt.data.persistence.config.imp的用法
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/package-frame.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/package-frame.html
new file mode 100644
index 0000000000000000000000000000000000000000..2ef3079cedb3ade384d0c3ce9260337d0ac32c3c
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/package-frame.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.config (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/package-summary.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/package-summary.html
new file mode 100644
index 0000000000000000000000000000000000000000..e390d2e0701258f2e7c94e81982fbed943b5da9e
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/package-summary.html
@@ -0,0 +1,144 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.config (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/package-tree.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/package-tree.html
new file mode 100644
index 0000000000000000000000000000000000000000..ec643af9a648e4d0175633c43ae0404cd75e9720
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/package-tree.html
@@ -0,0 +1,139 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.config 类分层结构 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/package-use.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/package-use.html
new file mode 100644
index 0000000000000000000000000000000000000000..c504424a9671d53f594054b7ac29617bbb9f4516
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/config/package-use.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+程序包 org.smartboot.mqtt.data.persistence.config的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/KafkaPlugin.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/KafkaPlugin.html
new file mode 100644
index 0000000000000000000000000000000000000000..153e55159e5b0855b789795ca365b6b891cb455a
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/KafkaPlugin.html
@@ -0,0 +1,263 @@
+
+
+
+
+
+
+KafkaPlugin (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+
+
+
+
+
+
+
+-
+
+
+
+
+-
+
+
+
方法概要
+
+
+-
+
+
+
从类继承的方法 org.smartboot.mqtt.broker.plugin.Plugin
+install, order, pluginName, uninstall
+
+
+
+
+
+
+
+
+
+-
+
+
+-
+
+
+
构造器详细资料
+
+
+
+
+-
+
KafkaPlugin
+public KafkaPlugin()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/RedisPlugin.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/RedisPlugin.html
new file mode 100644
index 0000000000000000000000000000000000000000..e4a41db80ecff8a5e12d666d200b886e4d19476f
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/RedisPlugin.html
@@ -0,0 +1,263 @@
+
+
+
+
+
+
+RedisPlugin (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+
+
+
+
+
+
+
+-
+
+
+
+
+-
+
+
+
方法概要
+
+
+-
+
+
+
从类继承的方法 org.smartboot.mqtt.broker.plugin.Plugin
+install, order, pluginName, uninstall
+
+
+
+
+
+
+
+
+
+-
+
+
+-
+
+
+
构造器详细资料
+
+
+
+
+-
+
RedisPlugin
+public RedisPlugin()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/class-use/KafkaPlugin.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/class-use/KafkaPlugin.html
new file mode 100644
index 0000000000000000000000000000000000000000..cca8454bbe181b482e0e957a498441fc7643350d
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/class-use/KafkaPlugin.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+类 org.smartboot.mqtt.data.persistence.impl.KafkaPlugin的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+没有org.smartboot.mqtt.data.persistence.impl.KafkaPlugin的用法
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/class-use/RedisPlugin.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/class-use/RedisPlugin.html
new file mode 100644
index 0000000000000000000000000000000000000000..dd0e516c884acf1264ce9b3d12aef029924a7a41
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/class-use/RedisPlugin.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+类 org.smartboot.mqtt.data.persistence.impl.RedisPlugin的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+没有org.smartboot.mqtt.data.persistence.impl.RedisPlugin的用法
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/package-frame.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/package-frame.html
new file mode 100644
index 0000000000000000000000000000000000000000..a24e6961a3bfb27950561e023c0bc1b7cb634091
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/package-frame.html
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.impl (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/package-summary.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/package-summary.html
new file mode 100644
index 0000000000000000000000000000000000000000..2cd245708036d5fedd2fa33c11f5154fe22b8831
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/package-summary.html
@@ -0,0 +1,148 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.impl (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/package-tree.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/package-tree.html
new file mode 100644
index 0000000000000000000000000000000000000000..681ae7e532ed91476d9cf816610eeec4d2f96d12
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/package-tree.html
@@ -0,0 +1,148 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.impl 类分层结构 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
类分层结构
+
+- java.lang.Object
+
+- org.smartboot.mqtt.broker.plugin.Plugin
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/package-use.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/package-use.html
new file mode 100644
index 0000000000000000000000000000000000000000..c4edffdb8712524418ffa9f1e0cb0430ec6bfdad
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/impl/package-use.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+程序包 org.smartboot.mqtt.data.persistence.impl的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+没有org.smartboot.mqtt.data.persistence.impl的用法
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/MessageNodeInfo.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/MessageNodeInfo.html
new file mode 100644
index 0000000000000000000000000000000000000000..8648569ec70bdb1eb2f9e089df3fc94fe7d09aa2
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/MessageNodeInfo.html
@@ -0,0 +1,338 @@
+
+
+
+
+
+
+MessageNodeInfo (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+
+
+
+
+- java.lang.Object
+-
+
+- org.smartboot.mqtt.data.persistence.nodeinfo.MessageNodeInfo
+
+
+
+
+
+
+-
+
+
+-
+
+
+
构造器概要
+
+构造器
+
+构造器和说明 |
+
+
+MessageNodeInfo(org.smartboot.mqtt.common.message.MqttPublishMessage message) |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/class-use/MessageNodeInfo.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/class-use/MessageNodeInfo.html
new file mode 100644
index 0000000000000000000000000000000000000000..b804063aacf41741a141b3f559c2b72a11ece1c0
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/class-use/MessageNodeInfo.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+类 org.smartboot.mqtt.data.persistence.nodeinfo.MessageNodeInfo的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+没有org.smartboot.mqtt.data.persistence.nodeinfo.MessageNodeInfo的用法
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/package-frame.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/package-frame.html
new file mode 100644
index 0000000000000000000000000000000000000000..51e3908b2d2e4499f5410eccf01a0d8a26657759
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/package-frame.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.nodeinfo (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/package-summary.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/package-summary.html
new file mode 100644
index 0000000000000000000000000000000000000000..bac33e7adb4e1cf946504acfc5b3b28fc9ea7f10
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/package-summary.html
@@ -0,0 +1,144 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.nodeinfo (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/package-tree.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/package-tree.html
new file mode 100644
index 0000000000000000000000000000000000000000..dd30873047c1ab436333e93e9727ffe81a36a7c6
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/package-tree.html
@@ -0,0 +1,139 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.nodeinfo 类分层结构 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/package-use.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/package-use.html
new file mode 100644
index 0000000000000000000000000000000000000000..8ca66c75f9b1b6986cc52876ee2b6d95790dc673
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/nodeinfo/package-use.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+程序包 org.smartboot.mqtt.data.persistence.nodeinfo的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+没有org.smartboot.mqtt.data.persistence.nodeinfo的用法
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/package-frame.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/package-frame.html
new file mode 100644
index 0000000000000000000000000000000000000000..c46e072eac8134201102dd7af51be000996929c2
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/package-frame.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/package-summary.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/package-summary.html
new file mode 100644
index 0000000000000000000000000000000000000000..3d16ee05d835826c395fae35e2bd49d34dd42d65
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/package-summary.html
@@ -0,0 +1,144 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/package-tree.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/package-tree.html
new file mode 100644
index 0000000000000000000000000000000000000000..10fb538caa49b61a44c06d9fb54fd563f5874d47
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/package-tree.html
@@ -0,0 +1,143 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence 类分层结构 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
类分层结构
+
+- java.lang.Object
+
+- org.smartboot.mqtt.broker.plugin.Plugin
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/package-use.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/package-use.html
new file mode 100644
index 0000000000000000000000000000000000000000..c6b1833e360ce762bf3ba2f708fcde403c67a66f
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/package-use.html
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+程序包 org.smartboot.mqtt.data.persistence的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/IdUtils.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/IdUtils.html
new file mode 100644
index 0000000000000000000000000000000000000000..e2ddcd3dfde29bb43faa335a49bc1b9691602a10
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/IdUtils.html
@@ -0,0 +1,298 @@
+
+
+
+
+
+
+IdUtils (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+-
+
+
+-
+
+
+
构造器详细资料
+
+
+
+
+-
+
IdUtils
+public IdUtils()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/StrUtils.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/StrUtils.html
new file mode 100644
index 0000000000000000000000000000000000000000..cacd5122f660766c25df574d5b239374154687fd
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/StrUtils.html
@@ -0,0 +1,288 @@
+
+
+
+
+
+
+StrUtils (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+
+
+
+
+- java.lang.Object
+-
+
+- org.smartboot.mqtt.data.persistence.utils.StrUtils<T>
+
+
+
+
+
+
+
+-
+
+
+-
+
+
+
构造器详细资料
+
+
+
+
+-
+
StrUtils
+public StrUtils()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- 概要:
+- 嵌套 |
+- 字段 |
+- 构造器 |
+- 方法
+
+
+- 详细资料:
+- 字段 |
+- 构造器 |
+- 方法
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/class-use/IdUtils.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/class-use/IdUtils.html
new file mode 100644
index 0000000000000000000000000000000000000000..05e7ad975eab273852f159aef66b2cf2b86c3062
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/class-use/IdUtils.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+类 org.smartboot.mqtt.data.persistence.utils.IdUtils的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+没有org.smartboot.mqtt.data.persistence.utils.IdUtils的用法
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/class-use/StrUtils.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/class-use/StrUtils.html
new file mode 100644
index 0000000000000000000000000000000000000000..e7a596476328d370f5643a3aeb3408893bc2708c
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/class-use/StrUtils.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+类 org.smartboot.mqtt.data.persistence.utils.StrUtils的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+没有org.smartboot.mqtt.data.persistence.utils.StrUtils的用法
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/package-frame.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/package-frame.html
new file mode 100644
index 0000000000000000000000000000000000000000..6a845bf7b5e19a5cebf5ad52751adfe3675aaf47
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/package-frame.html
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.utils (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/package-summary.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/package-summary.html
new file mode 100644
index 0000000000000000000000000000000000000000..46d190f22931e6f01babbd85d4c64701827bf9c3
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/package-summary.html
@@ -0,0 +1,148 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.utils (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/package-tree.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/package-tree.html
new file mode 100644
index 0000000000000000000000000000000000000000..b06ddec4273d86039baef6c881df54b0ee938d05
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/package-tree.html
@@ -0,0 +1,140 @@
+
+
+
+
+
+
+org.smartboot.mqtt.data.persistence.utils 类分层结构 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
类分层结构
+
+- java.lang.Object
+
+- org.smartboot.mqtt.data.persistence.utils.IdUtils
+- org.smartboot.mqtt.data.persistence.utils.StrUtils<T>
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/package-use.html b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/package-use.html
new file mode 100644
index 0000000000000000000000000000000000000000..3983cc47fbf2a8b8bad02a533871e07f161c7687
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/org/smartboot/mqtt/data/persistence/utils/package-use.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+程序包 org.smartboot.mqtt.data.persistence.utils的使用 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+没有org.smartboot.mqtt.data.persistence.utils的用法
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/overview-frame.html b/smart-mqtt-data-persistence/target/apidocs/overview-frame.html
new file mode 100644
index 0000000000000000000000000000000000000000..c87a92623c525a8bff7f68e6f204e78162bf7fef
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/overview-frame.html
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+概览列表 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/overview-summary.html b/smart-mqtt-data-persistence/target/apidocs/overview-summary.html
new file mode 100644
index 0000000000000000000000000000000000000000..7ecf1273f05d2b9412a5df0d83cbbd3bfacb2acc
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/overview-summary.html
@@ -0,0 +1,160 @@
+
+
+
+
+
+
+概览 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/overview-tree.html b/smart-mqtt-data-persistence/target/apidocs/overview-tree.html
new file mode 100644
index 0000000000000000000000000000000000000000..60e3cdccbed351d854e645ac6d59dd80d7f57b25
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/overview-tree.html
@@ -0,0 +1,162 @@
+
+
+
+
+
+
+类分层结构 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
类分层结构
+
+- java.lang.Object
+
+- org.smartboot.mqtt.data.persistence.utils.IdUtils
+- org.smartboot.mqtt.data.persistence.nodeinfo.MessageNodeInfo (implements java.io.Serializable)
+- org.smartboot.mqtt.broker.plugin.Plugin
+
+
+- org.smartboot.mqtt.data.persistence.config.PluginConfig
+
+
+- org.smartboot.mqtt.data.persistence.utils.StrUtils<T>
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/package-list b/smart-mqtt-data-persistence/target/apidocs/package-list
new file mode 100644
index 0000000000000000000000000000000000000000..57291d2261f0bc42b51cb2e2a1e8987f71edea93
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/package-list
@@ -0,0 +1,6 @@
+org.smartboot.mqtt.data.persistence
+org.smartboot.mqtt.data.persistence.config
+org.smartboot.mqtt.data.persistence.config.imp
+org.smartboot.mqtt.data.persistence.impl
+org.smartboot.mqtt.data.persistence.nodeinfo
+org.smartboot.mqtt.data.persistence.utils
diff --git a/smart-mqtt-data-persistence/target/apidocs/script.js b/smart-mqtt-data-persistence/target/apidocs/script.js
new file mode 100644
index 0000000000000000000000000000000000000000..b34635693143ac308ba6d22c29554e5631f64b74
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/script.js
@@ -0,0 +1,30 @@
+function show(type)
+{
+ count = 0;
+ for (var key in methods) {
+ var row = document.getElementById(key);
+ if ((methods[key] & type) != 0) {
+ row.style.display = '';
+ row.className = (count++ % 2) ? rowColor : altColor;
+ }
+ else
+ row.style.display = 'none';
+ }
+ updateTabs(type);
+}
+
+function updateTabs(type)
+{
+ for (var value in tabs) {
+ var sNode = document.getElementById(tabs[value][0]);
+ var spanNode = sNode.firstChild;
+ if (value == type) {
+ sNode.className = activeTableTab;
+ spanNode.innerHTML = tabs[value][1];
+ }
+ else {
+ sNode.className = tableTab;
+ spanNode.innerHTML = "" + tabs[value][1] + "";
+ }
+ }
+}
diff --git a/smart-mqtt-data-persistence/target/apidocs/serialized-form.html b/smart-mqtt-data-persistence/target/apidocs/serialized-form.html
new file mode 100644
index 0000000000000000000000000000000000000000..5c2d401ac3cebce54da186a5f295cf7553abee6b
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/serialized-form.html
@@ -0,0 +1,165 @@
+
+
+
+
+
+
+序列化表格 (smart-mqtt-data-persistence 0.19 API)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Copyright © 2023. All rights reserved.
+
+
diff --git a/smart-mqtt-data-persistence/target/apidocs/stylesheet.css b/smart-mqtt-data-persistence/target/apidocs/stylesheet.css
new file mode 100644
index 0000000000000000000000000000000000000000..98055b22d6d5bed7792d6857aa760cf914c62653
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/apidocs/stylesheet.css
@@ -0,0 +1,574 @@
+/* Javadoc style sheet */
+/*
+Overall document style
+*/
+
+@import url('resources/fonts/dejavu.css');
+
+body {
+ background-color:#ffffff;
+ color:#353833;
+ font-family:'DejaVu Sans', Arial, Helvetica, sans-serif;
+ font-size:14px;
+ margin:0;
+}
+a:link, a:visited {
+ text-decoration:none;
+ color:#4A6782;
+}
+a:hover, a:focus {
+ text-decoration:none;
+ color:#bb7a2a;
+}
+a:active {
+ text-decoration:none;
+ color:#4A6782;
+}
+a[name] {
+ color:#353833;
+}
+a[name]:hover {
+ text-decoration:none;
+ color:#353833;
+}
+pre {
+ font-family:'DejaVu Sans Mono', monospace;
+ font-size:14px;
+}
+h1 {
+ font-size:20px;
+}
+h2 {
+ font-size:18px;
+}
+h3 {
+ font-size:16px;
+ font-style:italic;
+}
+h4 {
+ font-size:13px;
+}
+h5 {
+ font-size:12px;
+}
+h6 {
+ font-size:11px;
+}
+ul {
+ list-style-type:disc;
+}
+code, tt {
+ font-family:'DejaVu Sans Mono', monospace;
+ font-size:14px;
+ padding-top:4px;
+ margin-top:8px;
+ line-height:1.4em;
+}
+dt code {
+ font-family:'DejaVu Sans Mono', monospace;
+ font-size:14px;
+ padding-top:4px;
+}
+table tr td dt code {
+ font-family:'DejaVu Sans Mono', monospace;
+ font-size:14px;
+ vertical-align:top;
+ padding-top:4px;
+}
+sup {
+ font-size:8px;
+}
+/*
+Document title and Copyright styles
+*/
+.clear {
+ clear:both;
+ height:0px;
+ overflow:hidden;
+}
+.aboutLanguage {
+ float:right;
+ padding:0px 21px;
+ font-size:11px;
+ z-index:200;
+ margin-top:-9px;
+}
+.legalCopy {
+ margin-left:.5em;
+}
+.bar a, .bar a:link, .bar a:visited, .bar a:active {
+ color:#FFFFFF;
+ text-decoration:none;
+}
+.bar a:hover, .bar a:focus {
+ color:#bb7a2a;
+}
+.tab {
+ background-color:#0066FF;
+ color:#ffffff;
+ padding:8px;
+ width:5em;
+ font-weight:bold;
+}
+/*
+Navigation bar styles
+*/
+.bar {
+ background-color:#4D7A97;
+ color:#FFFFFF;
+ padding:.8em .5em .4em .8em;
+ height:auto;/*height:1.8em;*/
+ font-size:11px;
+ margin:0;
+}
+.topNav {
+ background-color:#4D7A97;
+ color:#FFFFFF;
+ float:left;
+ padding:0;
+ width:100%;
+ clear:right;
+ height:2.8em;
+ padding-top:10px;
+ overflow:hidden;
+ font-size:12px;
+}
+.bottomNav {
+ margin-top:10px;
+ background-color:#4D7A97;
+ color:#FFFFFF;
+ float:left;
+ padding:0;
+ width:100%;
+ clear:right;
+ height:2.8em;
+ padding-top:10px;
+ overflow:hidden;
+ font-size:12px;
+}
+.subNav {
+ background-color:#dee3e9;
+ float:left;
+ width:100%;
+ overflow:hidden;
+ font-size:12px;
+}
+.subNav div {
+ clear:left;
+ float:left;
+ padding:0 0 5px 6px;
+ text-transform:uppercase;
+}
+ul.navList, ul.subNavList {
+ float:left;
+ margin:0 25px 0 0;
+ padding:0;
+}
+ul.navList li{
+ list-style:none;
+ float:left;
+ padding: 5px 6px;
+ text-transform:uppercase;
+}
+ul.subNavList li{
+ list-style:none;
+ float:left;
+}
+.topNav a:link, .topNav a:active, .topNav a:visited, .bottomNav a:link, .bottomNav a:active, .bottomNav a:visited {
+ color:#FFFFFF;
+ text-decoration:none;
+ text-transform:uppercase;
+}
+.topNav a:hover, .bottomNav a:hover {
+ text-decoration:none;
+ color:#bb7a2a;
+ text-transform:uppercase;
+}
+.navBarCell1Rev {
+ background-color:#F8981D;
+ color:#253441;
+ margin: auto 5px;
+}
+.skipNav {
+ position:absolute;
+ top:auto;
+ left:-9999px;
+ overflow:hidden;
+}
+/*
+Page header and footer styles
+*/
+.header, .footer {
+ clear:both;
+ margin:0 20px;
+ padding:5px 0 0 0;
+}
+.indexHeader {
+ margin:10px;
+ position:relative;
+}
+.indexHeader span{
+ margin-right:15px;
+}
+.indexHeader h1 {
+ font-size:13px;
+}
+.title {
+ color:#2c4557;
+ margin:10px 0;
+}
+.subTitle {
+ margin:5px 0 0 0;
+}
+.header ul {
+ margin:0 0 15px 0;
+ padding:0;
+}
+.footer ul {
+ margin:20px 0 5px 0;
+}
+.header ul li, .footer ul li {
+ list-style:none;
+ font-size:13px;
+}
+/*
+Heading styles
+*/
+div.details ul.blockList ul.blockList ul.blockList li.blockList h4, div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 {
+ background-color:#dee3e9;
+ border:1px solid #d0d9e0;
+ margin:0 0 6px -8px;
+ padding:7px 5px;
+}
+ul.blockList ul.blockList ul.blockList li.blockList h3 {
+ background-color:#dee3e9;
+ border:1px solid #d0d9e0;
+ margin:0 0 6px -8px;
+ padding:7px 5px;
+}
+ul.blockList ul.blockList li.blockList h3 {
+ padding:0;
+ margin:15px 0;
+}
+ul.blockList li.blockList h2 {
+ padding:0px 0 20px 0;
+}
+/*
+Page layout container styles
+*/
+.contentContainer, .sourceContainer, .classUseContainer, .serializedFormContainer, .constantValuesContainer {
+ clear:both;
+ padding:10px 20px;
+ position:relative;
+}
+.indexContainer {
+ margin:10px;
+ position:relative;
+ font-size:12px;
+}
+.indexContainer h2 {
+ font-size:13px;
+ padding:0 0 3px 0;
+}
+.indexContainer ul {
+ margin:0;
+ padding:0;
+}
+.indexContainer ul li {
+ list-style:none;
+ padding-top:2px;
+}
+.contentContainer .description dl dt, .contentContainer .details dl dt, .serializedFormContainer dl dt {
+ font-size:12px;
+ font-weight:bold;
+ margin:10px 0 0 0;
+ color:#4E4E4E;
+}
+.contentContainer .description dl dd, .contentContainer .details dl dd, .serializedFormContainer dl dd {
+ margin:5px 0 10px 0px;
+ font-size:14px;
+ font-family:'DejaVu Sans Mono',monospace;
+}
+.serializedFormContainer dl.nameValue dt {
+ margin-left:1px;
+ font-size:1.1em;
+ display:inline;
+ font-weight:bold;
+}
+.serializedFormContainer dl.nameValue dd {
+ margin:0 0 0 1px;
+ font-size:1.1em;
+ display:inline;
+}
+/*
+List styles
+*/
+ul.horizontal li {
+ display:inline;
+ font-size:0.9em;
+}
+ul.inheritance {
+ margin:0;
+ padding:0;
+}
+ul.inheritance li {
+ display:inline;
+ list-style:none;
+}
+ul.inheritance li ul.inheritance {
+ margin-left:15px;
+ padding-left:15px;
+ padding-top:1px;
+}
+ul.blockList, ul.blockListLast {
+ margin:10px 0 10px 0;
+ padding:0;
+}
+ul.blockList li.blockList, ul.blockListLast li.blockList {
+ list-style:none;
+ margin-bottom:15px;
+ line-height:1.4;
+}
+ul.blockList ul.blockList li.blockList, ul.blockList ul.blockListLast li.blockList {
+ padding:0px 20px 5px 10px;
+ border:1px solid #ededed;
+ background-color:#f8f8f8;
+}
+ul.blockList ul.blockList ul.blockList li.blockList, ul.blockList ul.blockList ul.blockListLast li.blockList {
+ padding:0 0 5px 8px;
+ background-color:#ffffff;
+ border:none;
+}
+ul.blockList ul.blockList ul.blockList ul.blockList li.blockList {
+ margin-left:0;
+ padding-left:0;
+ padding-bottom:15px;
+ border:none;
+}
+ul.blockList ul.blockList ul.blockList ul.blockList li.blockListLast {
+ list-style:none;
+ border-bottom:none;
+ padding-bottom:0;
+}
+table tr td dl, table tr td dl dt, table tr td dl dd {
+ margin-top:0;
+ margin-bottom:1px;
+}
+/*
+Table styles
+*/
+.overviewSummary, .memberSummary, .typeSummary, .useSummary, .constantsSummary, .deprecatedSummary {
+ width:100%;
+ border-left:1px solid #EEE;
+ border-right:1px solid #EEE;
+ border-bottom:1px solid #EEE;
+}
+.overviewSummary, .memberSummary {
+ padding:0px;
+}
+.overviewSummary caption, .memberSummary caption, .typeSummary caption,
+.useSummary caption, .constantsSummary caption, .deprecatedSummary caption {
+ position:relative;
+ text-align:left;
+ background-repeat:no-repeat;
+ color:#253441;
+ font-weight:bold;
+ clear:none;
+ overflow:hidden;
+ padding:0px;
+ padding-top:10px;
+ padding-left:1px;
+ margin:0px;
+ white-space:pre;
+}
+.overviewSummary caption a:link, .memberSummary caption a:link, .typeSummary caption a:link,
+.useSummary caption a:link, .constantsSummary caption a:link, .deprecatedSummary caption a:link,
+.overviewSummary caption a:hover, .memberSummary caption a:hover, .typeSummary caption a:hover,
+.useSummary caption a:hover, .constantsSummary caption a:hover, .deprecatedSummary caption a:hover,
+.overviewSummary caption a:active, .memberSummary caption a:active, .typeSummary caption a:active,
+.useSummary caption a:active, .constantsSummary caption a:active, .deprecatedSummary caption a:active,
+.overviewSummary caption a:visited, .memberSummary caption a:visited, .typeSummary caption a:visited,
+.useSummary caption a:visited, .constantsSummary caption a:visited, .deprecatedSummary caption a:visited {
+ color:#FFFFFF;
+}
+.overviewSummary caption span, .memberSummary caption span, .typeSummary caption span,
+.useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span {
+ white-space:nowrap;
+ padding-top:5px;
+ padding-left:12px;
+ padding-right:12px;
+ padding-bottom:7px;
+ display:inline-block;
+ float:left;
+ background-color:#F8981D;
+ border: none;
+ height:16px;
+}
+.memberSummary caption span.activeTableTab span {
+ white-space:nowrap;
+ padding-top:5px;
+ padding-left:12px;
+ padding-right:12px;
+ margin-right:3px;
+ display:inline-block;
+ float:left;
+ background-color:#F8981D;
+ height:16px;
+}
+.memberSummary caption span.tableTab span {
+ white-space:nowrap;
+ padding-top:5px;
+ padding-left:12px;
+ padding-right:12px;
+ margin-right:3px;
+ display:inline-block;
+ float:left;
+ background-color:#4D7A97;
+ height:16px;
+}
+.memberSummary caption span.tableTab, .memberSummary caption span.activeTableTab {
+ padding-top:0px;
+ padding-left:0px;
+ padding-right:0px;
+ background-image:none;
+ float:none;
+ display:inline;
+}
+.overviewSummary .tabEnd, .memberSummary .tabEnd, .typeSummary .tabEnd,
+.useSummary .tabEnd, .constantsSummary .tabEnd, .deprecatedSummary .tabEnd {
+ display:none;
+ width:5px;
+ position:relative;
+ float:left;
+ background-color:#F8981D;
+}
+.memberSummary .activeTableTab .tabEnd {
+ display:none;
+ width:5px;
+ margin-right:3px;
+ position:relative;
+ float:left;
+ background-color:#F8981D;
+}
+.memberSummary .tableTab .tabEnd {
+ display:none;
+ width:5px;
+ margin-right:3px;
+ position:relative;
+ background-color:#4D7A97;
+ float:left;
+
+}
+.overviewSummary td, .memberSummary td, .typeSummary td,
+.useSummary td, .constantsSummary td, .deprecatedSummary td {
+ text-align:left;
+ padding:0px 0px 12px 10px;
+}
+th.colOne, th.colFirst, th.colLast, .useSummary th, .constantsSummary th,
+td.colOne, td.colFirst, td.colLast, .useSummary td, .constantsSummary td{
+ vertical-align:top;
+ padding-right:0px;
+ padding-top:8px;
+ padding-bottom:3px;
+}
+th.colFirst, th.colLast, th.colOne, .constantsSummary th {
+ background:#dee3e9;
+ text-align:left;
+ padding:8px 3px 3px 7px;
+}
+td.colFirst, th.colFirst {
+ white-space:nowrap;
+ font-size:13px;
+}
+td.colLast, th.colLast {
+ font-size:13px;
+}
+td.colOne, th.colOne {
+ font-size:13px;
+}
+.overviewSummary td.colFirst, .overviewSummary th.colFirst,
+.useSummary td.colFirst, .useSummary th.colFirst,
+.overviewSummary td.colOne, .overviewSummary th.colOne,
+.memberSummary td.colFirst, .memberSummary th.colFirst,
+.memberSummary td.colOne, .memberSummary th.colOne,
+.typeSummary td.colFirst{
+ width:25%;
+ vertical-align:top;
+}
+td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover {
+ font-weight:bold;
+}
+.tableSubHeadingColor {
+ background-color:#EEEEFF;
+}
+.altColor {
+ background-color:#FFFFFF;
+}
+.rowColor {
+ background-color:#EEEEEF;
+}
+/*
+Content styles
+*/
+.description pre {
+ margin-top:0;
+}
+.deprecatedContent {
+ margin:0;
+ padding:10px 0;
+}
+.docSummary {
+ padding:0;
+}
+
+ul.blockList ul.blockList ul.blockList li.blockList h3 {
+ font-style:normal;
+}
+
+div.block {
+ font-size:14px;
+ font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif;
+}
+
+td.colLast div {
+ padding-top:0px;
+}
+
+
+td.colLast a {
+ padding-bottom:3px;
+}
+/*
+Formatting effect styles
+*/
+.sourceLineNo {
+ color:green;
+ padding:0 30px 0 0;
+}
+h1.hidden {
+ visibility:hidden;
+ overflow:hidden;
+ font-size:10px;
+}
+.block {
+ display:block;
+ margin:3px 10px 2px 0px;
+ color:#474747;
+}
+.deprecatedLabel, .descfrmTypeLabel, .memberNameLabel, .memberNameLink,
+.overrideSpecifyLabel, .packageHierarchyLabel, .paramLabel, .returnLabel,
+.seeLabel, .simpleTagLabel, .throwsLabel, .typeNameLabel, .typeNameLink {
+ font-weight:bold;
+}
+.deprecationComment, .emphasizedPhrase, .interfaceName {
+ font-style:italic;
+}
+
+div.block div.block span.deprecationComment, div.block div.block span.emphasizedPhrase,
+div.block div.block span.interfaceName {
+ font-style:normal;
+}
+
+div.contentContainer ul.blockList li.blockList h2{
+ padding-bottom:0px;
+}
diff --git a/smart-mqtt-data-persistence/target/classes/META-INF/services/org.smartboot.mqtt.broker.plugin.Plugin b/smart-mqtt-data-persistence/target/classes/META-INF/services/org.smartboot.mqtt.broker.plugin.Plugin
new file mode 100644
index 0000000000000000000000000000000000000000..09da520f148d0c3958eca4135dfc8c56414b3712
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/classes/META-INF/services/org.smartboot.mqtt.broker.plugin.Plugin
@@ -0,0 +1,2 @@
+org.smartboot.mqtt.data.persistence.impl.RedisPlugin
+org.smartboot.mqtt.data.persistence.impl.KafkaPlugin
\ No newline at end of file
diff --git a/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/DataPersistPlugin.class b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/DataPersistPlugin.class
new file mode 100644
index 0000000000000000000000000000000000000000..c226bb8223217d5bafaa2a98310eeaa6d16ab43a
Binary files /dev/null and b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/DataPersistPlugin.class differ
diff --git a/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/config/PluginConfig.class b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/config/PluginConfig.class
new file mode 100644
index 0000000000000000000000000000000000000000..32d494c7f0bf5e271bb80676e097daa9a12241fc
Binary files /dev/null and b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/config/PluginConfig.class differ
diff --git a/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/config/imp/KafkaPluginConfig.class b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/config/imp/KafkaPluginConfig.class
new file mode 100644
index 0000000000000000000000000000000000000000..dd5321312af1af8883709e21748397e90740df9c
Binary files /dev/null and b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/config/imp/KafkaPluginConfig.class differ
diff --git a/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/config/imp/RedisPluginConfig.class b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/config/imp/RedisPluginConfig.class
new file mode 100644
index 0000000000000000000000000000000000000000..ab1ba5bb0f1b51621fc774ba5ff693f6e56424af
Binary files /dev/null and b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/config/imp/RedisPluginConfig.class differ
diff --git a/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/impl/KafkaPlugin$1.class b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/impl/KafkaPlugin$1.class
new file mode 100644
index 0000000000000000000000000000000000000000..794364fe299b5f77fa6bc86cece506ca9815fad7
Binary files /dev/null and b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/impl/KafkaPlugin$1.class differ
diff --git a/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/impl/KafkaPlugin.class b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/impl/KafkaPlugin.class
new file mode 100644
index 0000000000000000000000000000000000000000..4734018fea6d7ef56138ea8cb275c44dc33c06e5
Binary files /dev/null and b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/impl/KafkaPlugin.class differ
diff --git a/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/impl/RedisPlugin.class b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/impl/RedisPlugin.class
new file mode 100644
index 0000000000000000000000000000000000000000..8f48f5613a52226332c2e474111fad33df55e556
Binary files /dev/null and b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/impl/RedisPlugin.class differ
diff --git a/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/nodeinfo/MessageNodeInfo.class b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/nodeinfo/MessageNodeInfo.class
new file mode 100644
index 0000000000000000000000000000000000000000..f183777043afefa46ef41941538472a9b2d33a94
Binary files /dev/null and b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/nodeinfo/MessageNodeInfo.class differ
diff --git a/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/utils/IdUtils.class b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/utils/IdUtils.class
new file mode 100644
index 0000000000000000000000000000000000000000..ff5ef186f782c4dd99b566440e6432a150222258
Binary files /dev/null and b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/utils/IdUtils.class differ
diff --git a/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/utils/StrUtils.class b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/utils/StrUtils.class
new file mode 100644
index 0000000000000000000000000000000000000000..6f54c0eb66ac5d1658da23e63013d985d8f63740
Binary files /dev/null and b/smart-mqtt-data-persistence/target/classes/org/smartboot/mqtt/data/persistence/utils/StrUtils.class differ
diff --git a/smart-mqtt-data-persistence/target/javadoc-bundle-options/javadoc-options-javadoc-resources.xml b/smart-mqtt-data-persistence/target/javadoc-bundle-options/javadoc-options-javadoc-resources.xml
new file mode 100644
index 0000000000000000000000000000000000000000..8b89c977b1ee3e2eef78b7510558066a2834b957
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/javadoc-bundle-options/javadoc-options-javadoc-resources.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+ src/main/javadoc
+
diff --git a/smart-mqtt-data-persistence/target/javadoc-bundle-options/package-list b/smart-mqtt-data-persistence/target/javadoc-bundle-options/package-list
new file mode 100644
index 0000000000000000000000000000000000000000..364356e3d989d159b57260374b17dd548268f505
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/javadoc-bundle-options/package-list
@@ -0,0 +1,209 @@
+java.applet
+java.awt
+java.awt.color
+java.awt.datatransfer
+java.awt.dnd
+java.awt.event
+java.awt.font
+java.awt.geom
+java.awt.im
+java.awt.im.spi
+java.awt.image
+java.awt.image.renderable
+java.awt.print
+java.beans
+java.beans.beancontext
+java.io
+java.lang
+java.lang.annotation
+java.lang.instrument
+java.lang.invoke
+java.lang.management
+java.lang.ref
+java.lang.reflect
+java.math
+java.net
+java.nio
+java.nio.channels
+java.nio.channels.spi
+java.nio.charset
+java.nio.charset.spi
+java.nio.file
+java.nio.file.attribute
+java.nio.file.spi
+java.rmi
+java.rmi.activation
+java.rmi.dgc
+java.rmi.registry
+java.rmi.server
+java.security
+java.security.acl
+java.security.cert
+java.security.interfaces
+java.security.spec
+java.sql
+java.text
+java.text.spi
+java.util
+java.util.concurrent
+java.util.concurrent.atomic
+java.util.concurrent.locks
+java.util.jar
+java.util.logging
+java.util.prefs
+java.util.regex
+java.util.spi
+java.util.zip
+javax.accessibility
+javax.activation
+javax.activity
+javax.annotation
+javax.annotation.processing
+javax.crypto
+javax.crypto.interfaces
+javax.crypto.spec
+javax.imageio
+javax.imageio.event
+javax.imageio.metadata
+javax.imageio.plugins.bmp
+javax.imageio.plugins.jpeg
+javax.imageio.spi
+javax.imageio.stream
+javax.jws
+javax.jws.soap
+javax.lang.model
+javax.lang.model.element
+javax.lang.model.type
+javax.lang.model.util
+javax.management
+javax.management.loading
+javax.management.modelmbean
+javax.management.monitor
+javax.management.openmbean
+javax.management.relation
+javax.management.remote
+javax.management.remote.rmi
+javax.management.timer
+javax.naming
+javax.naming.directory
+javax.naming.event
+javax.naming.ldap
+javax.naming.spi
+javax.net
+javax.net.ssl
+javax.print
+javax.print.attribute
+javax.print.attribute.standard
+javax.print.event
+javax.rmi
+javax.rmi.CORBA
+javax.rmi.ssl
+javax.script
+javax.security.auth
+javax.security.auth.callback
+javax.security.auth.kerberos
+javax.security.auth.login
+javax.security.auth.spi
+javax.security.auth.x500
+javax.security.cert
+javax.security.sasl
+javax.sound.midi
+javax.sound.midi.spi
+javax.sound.sampled
+javax.sound.sampled.spi
+javax.sql
+javax.sql.rowset
+javax.sql.rowset.serial
+javax.sql.rowset.spi
+javax.swing
+javax.swing.border
+javax.swing.colorchooser
+javax.swing.event
+javax.swing.filechooser
+javax.swing.plaf
+javax.swing.plaf.basic
+javax.swing.plaf.metal
+javax.swing.plaf.multi
+javax.swing.plaf.nimbus
+javax.swing.plaf.synth
+javax.swing.table
+javax.swing.text
+javax.swing.text.html
+javax.swing.text.html.parser
+javax.swing.text.rtf
+javax.swing.tree
+javax.swing.undo
+javax.tools
+javax.transaction
+javax.transaction.xa
+javax.xml
+javax.xml.bind
+javax.xml.bind.annotation
+javax.xml.bind.annotation.adapters
+javax.xml.bind.attachment
+javax.xml.bind.helpers
+javax.xml.bind.util
+javax.xml.crypto
+javax.xml.crypto.dom
+javax.xml.crypto.dsig
+javax.xml.crypto.dsig.dom
+javax.xml.crypto.dsig.keyinfo
+javax.xml.crypto.dsig.spec
+javax.xml.datatype
+javax.xml.namespace
+javax.xml.parsers
+javax.xml.soap
+javax.xml.stream
+javax.xml.stream.events
+javax.xml.stream.util
+javax.xml.transform
+javax.xml.transform.dom
+javax.xml.transform.sax
+javax.xml.transform.stax
+javax.xml.transform.stream
+javax.xml.validation
+javax.xml.ws
+javax.xml.ws.handler
+javax.xml.ws.handler.soap
+javax.xml.ws.http
+javax.xml.ws.soap
+javax.xml.ws.spi
+javax.xml.ws.spi.http
+javax.xml.ws.wsaddressing
+javax.xml.xpath
+org.ietf.jgss
+org.omg.CORBA
+org.omg.CORBA.DynAnyPackage
+org.omg.CORBA.ORBPackage
+org.omg.CORBA.TypeCodePackage
+org.omg.CORBA.portable
+org.omg.CORBA_2_3
+org.omg.CORBA_2_3.portable
+org.omg.CosNaming
+org.omg.CosNaming.NamingContextExtPackage
+org.omg.CosNaming.NamingContextPackage
+org.omg.Dynamic
+org.omg.DynamicAny
+org.omg.DynamicAny.DynAnyFactoryPackage
+org.omg.DynamicAny.DynAnyPackage
+org.omg.IOP
+org.omg.IOP.CodecFactoryPackage
+org.omg.IOP.CodecPackage
+org.omg.Messaging
+org.omg.PortableInterceptor
+org.omg.PortableInterceptor.ORBInitInfoPackage
+org.omg.PortableServer
+org.omg.PortableServer.CurrentPackage
+org.omg.PortableServer.POAManagerPackage
+org.omg.PortableServer.POAPackage
+org.omg.PortableServer.ServantLocatorPackage
+org.omg.PortableServer.portable
+org.omg.SendingContext
+org.omg.stub.java.rmi
+org.w3c.dom
+org.w3c.dom.bootstrap
+org.w3c.dom.events
+org.w3c.dom.ls
+org.xml.sax
+org.xml.sax.ext
+org.xml.sax.helpers
\ No newline at end of file
diff --git a/smart-mqtt-data-persistence/target/maven-archiver/pom.properties b/smart-mqtt-data-persistence/target/maven-archiver/pom.properties
new file mode 100644
index 0000000000000000000000000000000000000000..5bf31468927ac555c86f9ed054c3cd14968af614
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/maven-archiver/pom.properties
@@ -0,0 +1,5 @@
+#Generated by Maven
+#Tue Sep 19 10:59:38 CST 2023
+version=0.19
+groupId=org.smartboot.mqtt
+artifactId=smart-mqtt-data-persistence
diff --git a/smart-mqtt-data-persistence/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/smart-mqtt-data-persistence/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
new file mode 100644
index 0000000000000000000000000000000000000000..2dddf7d69294043bd769b4864c67777d43f6be6b
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
@@ -0,0 +1,10 @@
+org\smartboot\mqtt\data\persistence\config\imp\RedisPluginConfig.class
+org\smartboot\mqtt\data\persistence\utils\IdUtils.class
+org\smartboot\mqtt\data\persistence\config\imp\KafkaPluginConfig.class
+org\smartboot\mqtt\data\persistence\impl\KafkaPlugin.class
+org\smartboot\mqtt\data\persistence\config\PluginConfig.class
+org\smartboot\mqtt\data\persistence\nodeinfo\MessageNodeInfo.class
+org\smartboot\mqtt\data\persistence\impl\KafkaPlugin$1.class
+org\smartboot\mqtt\data\persistence\impl\RedisPlugin.class
+org\smartboot\mqtt\data\persistence\DataPersistPlugin.class
+org\smartboot\mqtt\data\persistence\utils\StrUtils.class
diff --git a/smart-mqtt-data-persistence/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/smart-mqtt-data-persistence/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
new file mode 100644
index 0000000000000000000000000000000000000000..74634e4daed0780ef54fe092df18be3c9a941605
--- /dev/null
+++ b/smart-mqtt-data-persistence/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
@@ -0,0 +1,9 @@
+F:\code_project\JavaProject\smart-mqtt-master\smart-mqtt-data-persistence\src\main\java\org\smartboot\mqtt\data\persistence\config\imp\KafkaPluginConfig.java
+F:\code_project\JavaProject\smart-mqtt-master\smart-mqtt-data-persistence\src\main\java\org\smartboot\mqtt\data\persistence\impl\KafkaPlugin.java
+F:\code_project\JavaProject\smart-mqtt-master\smart-mqtt-data-persistence\src\main\java\org\smartboot\mqtt\data\persistence\impl\RedisPlugin.java
+F:\code_project\JavaProject\smart-mqtt-master\smart-mqtt-data-persistence\src\main\java\org\smartboot\mqtt\data\persistence\utils\StrUtils.java
+F:\code_project\JavaProject\smart-mqtt-master\smart-mqtt-data-persistence\src\main\java\org\smartboot\mqtt\data\persistence\utils\IdUtils.java
+F:\code_project\JavaProject\smart-mqtt-master\smart-mqtt-data-persistence\src\main\java\org\smartboot\mqtt\data\persistence\config\imp\RedisPluginConfig.java
+F:\code_project\JavaProject\smart-mqtt-master\smart-mqtt-data-persistence\src\main\java\org\smartboot\mqtt\data\persistence\DataPersistPlugin.java
+F:\code_project\JavaProject\smart-mqtt-master\smart-mqtt-data-persistence\src\main\java\org\smartboot\mqtt\data\persistence\nodeinfo\MessageNodeInfo.java
+F:\code_project\JavaProject\smart-mqtt-master\smart-mqtt-data-persistence\src\main\java\org\smartboot\mqtt\data\persistence\config\PluginConfig.java
diff --git a/smart-mqtt-data-persistence/target/original-smart-mqtt-data-persistence-0.19.jar b/smart-mqtt-data-persistence/target/original-smart-mqtt-data-persistence-0.19.jar
new file mode 100644
index 0000000000000000000000000000000000000000..e1101ac6f9edf790cc12179cbbedd4367e47755e
Binary files /dev/null and b/smart-mqtt-data-persistence/target/original-smart-mqtt-data-persistence-0.19.jar differ
diff --git a/smart-mqtt-data-persistence/target/smart-mqtt-data-persistence-0.19-javadoc.jar b/smart-mqtt-data-persistence/target/smart-mqtt-data-persistence-0.19-javadoc.jar
new file mode 100644
index 0000000000000000000000000000000000000000..911d09e6354877082ba3952299b33eb35f81fc42
Binary files /dev/null and b/smart-mqtt-data-persistence/target/smart-mqtt-data-persistence-0.19-javadoc.jar differ
diff --git a/smart-mqtt-data-persistence/target/smart-mqtt-data-persistence-0.19-sources.jar b/smart-mqtt-data-persistence/target/smart-mqtt-data-persistence-0.19-sources.jar
new file mode 100644
index 0000000000000000000000000000000000000000..d73a281fb6b7e86e579880a4e0ee67b58a6d7fcd
Binary files /dev/null and b/smart-mqtt-data-persistence/target/smart-mqtt-data-persistence-0.19-sources.jar differ
diff --git a/smart-mqtt-data-persistence/target/smart-mqtt-data-persistence-0.19.jar b/smart-mqtt-data-persistence/target/smart-mqtt-data-persistence-0.19.jar
new file mode 100644
index 0000000000000000000000000000000000000000..305d3cb01b380570feb8baa756e90347dc48e3a6
Binary files /dev/null and b/smart-mqtt-data-persistence/target/smart-mqtt-data-persistence-0.19.jar differ