1.add readme
2.modify ValidateFilter, add default filter
diff --git a/docs/cn/RocketMQEventBridgeDatabaseUsage.md b/docs/cn/RocketMQEventBridgeDatabaseUsage.md
new file mode 100644
index 0000000..99e7bf8
--- /dev/null
+++ b/docs/cn/RocketMQEventBridgeDatabaseUsage.md
@@ -0,0 +1,29 @@
+## Apache RocketMQ EventBridge 数据库依赖介绍与使用
+
+RocketMQ EventBridge 使用数据库存储运行过程中定义的规则
+
+
+数据库:
+* 内置数据库h2,主要方便进行本地测试和快速开始
+* mysql数据库,实际生产部署时可以使用
+
+### 内置数据库
+```properties
+# 是否开启本地页面访问
+spring.profiles.active=local
+# h2 sql migration所在目录
+spring.flyway.locations=classpath:db/h2-migration
+```
+本地运行后,访问h2数据库。访问url: localhost:8083:
+
+
+### mysql数据库
+```properties
+## database
+spring.datasource.hikari.jdbc-url=jdbc:mysql://localhost:3306/eventBridge?useUnicode=true&characterEncoding=utf8&useSSL=false
+spring.datasource.hikari.driver-class-name=com.mysql.jdbc.Driver
+spring.datasource.hikari.username=xxxxx
+spring.datasource.hikari.password=xxxxx
+# 注释h2使用的sql migration
+#spring.flyway.locations=classpath:db/h2-migration
+```
\ No newline at end of file
diff --git a/docs/cn/RocketMQEventBridgeRuleValidation.md b/docs/cn/RocketMQEventBridgeRuleValidation.md
new file mode 100644
index 0000000..9f1f402
--- /dev/null
+++ b/docs/cn/RocketMQEventBridgeRuleValidation.md
@@ -0,0 +1,44 @@
+## Apache RocketMQ EventBridge 参数规则验证
+
+RocketMQ EventBridge 如何扩展参数验证
+
+
+### 引入依赖包
+```xml
+<dependency>
+ <groupId>org.apache.rocketmq</groupId>
+ <artifactId>rocketmq-eventbridge-infrastructure</artifactId>
+ <version>1.0.0</version>
+</dependency>
+```
+
+### 如何进行扩展
+```
+public class XXXXAuthValidation implements AuthValidation {
+
+ @Override
+ public Context validate(ServerHttpRequest request, Context ctx) {
+ ...
+ return ctx.put(keyxxx, valxxxx);
+ }
+
+ @Override
+ public String getType() {
+ return "验证器名称";
+ }
+}
+```
+
+### resources目录下增加spi配置
+```text
+/resources/
+|——META-INF
+| |——services
+| |——org.apache.rocketmq.eventbridge.infrastructure.validate.AuthValidation
+| org.apache.rocketmq.eventbridge.infrastructure.validate.XXXXAuthValidation
+```
+
+### 配置
+```properties
+auth.validation=验证器名称(如有多个以逗号分割)
+```
diff --git a/docs/cn/images/h2.png b/docs/cn/images/h2.png
new file mode 100644
index 0000000..109964e
--- /dev/null
+++ b/docs/cn/images/h2.png
Binary files differ
diff --git a/start/src/main/java/org/apache/rocketmq/eventbridge/filter/ValidateFilter.java b/start/src/main/java/org/apache/rocketmq/eventbridge/filter/ValidateFilter.java
index 5d80328..e6f81c2 100644
--- a/start/src/main/java/org/apache/rocketmq/eventbridge/filter/ValidateFilter.java
+++ b/start/src/main/java/org/apache/rocketmq/eventbridge/filter/ValidateFilter.java
@@ -34,6 +34,7 @@
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.atomic.AtomicReference;
+import java.util.stream.Collectors;
@Component
@Order(value = 3)
@@ -47,7 +48,12 @@
@PostConstruct
public void init() {
- Arrays.stream(validationName.split(",")).forEach(action->validations.add(ValidationServiceFactory.getInstance(action)));
+ List<String> validationNames = Arrays.stream(validationName.split(",")).collect(Collectors.toList());
+ boolean match = Arrays.stream(validationName.split(",")).allMatch(validationName-> validationName.equals("default"));
+ if (!match) {
+ validationNames.add(0, "default");
+ }
+ validationNames.forEach(action->validations.add(ValidationServiceFactory.getInstance(action)));
}
@Override