2026-06-19 18:47:36 +08:00
|
|
|
package ruleConfigChecker
|
|
|
|
|
|
|
|
|
|
import (
|
2026-07-26 22:19:41 +08:00
|
|
|
"sync"
|
|
|
|
|
|
2026-08-30 16:03:32 +08:00
|
|
|
"github.com/ssdomei232/goodBaby/drivers/alidns"
|
2026-06-19 18:47:36 +08:00
|
|
|
"github.com/ssdomei232/goodBaby/drivers/bilibili"
|
|
|
|
|
"github.com/ssdomei232/goodBaby/drivers/dingtalk"
|
|
|
|
|
"github.com/ssdomei232/goodBaby/drivers/email"
|
2026-07-29 11:24:23 +08:00
|
|
|
"github.com/ssdomei232/goodBaby/drivers/fwalert"
|
2026-06-19 18:47:36 +08:00
|
|
|
"github.com/ssdomei232/goodBaby/drivers/github"
|
|
|
|
|
"github.com/ssdomei232/goodBaby/drivers/onebot"
|
2026-08-13 09:13:10 +08:00
|
|
|
"github.com/ssdomei232/goodBaby/drivers/rainyun"
|
2026-06-19 18:47:36 +08:00
|
|
|
)
|
|
|
|
|
|
2026-07-26 22:19:41 +08:00
|
|
|
var (
|
|
|
|
|
once sync.Once
|
|
|
|
|
registry *ValidatorRegistry
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
// InitValidatorRegistry 返回全局唯一的规则验证器注册表
|
2026-06-19 18:47:36 +08:00
|
|
|
func InitValidatorRegistry() *ValidatorRegistry {
|
2026-07-26 22:19:41 +08:00
|
|
|
once.Do(func() {
|
|
|
|
|
r := NewValidatorRegistry()
|
2026-06-19 18:47:36 +08:00
|
|
|
|
2026-07-26 22:19:41 +08:00
|
|
|
// 注册所有规则验证器
|
|
|
|
|
r.Register(&bilibili.BilibiliDynamicRuleValidator{})
|
2026-07-26 23:15:02 +08:00
|
|
|
r.Register(&bilibili.BilibiliPrivateMessageRuleValidator{})
|
2026-07-26 22:19:41 +08:00
|
|
|
r.Register(&email.EmailRuleValidator{})
|
|
|
|
|
r.Register(&onebot.OneBotRuleValidator{})
|
|
|
|
|
r.Register(&dingtalk.DingTalkRuleValidator{})
|
|
|
|
|
r.Register(&github.GithubMakeRepositoryPublicRuleValidator{})
|
2026-07-29 11:24:23 +08:00
|
|
|
r.Register(&fwalert.FwalertRuleValidator{})
|
2026-08-13 09:13:10 +08:00
|
|
|
r.Register(&rainyun.RainyunWorkorderRuleValidator{})
|
2026-08-13 14:56:02 +08:00
|
|
|
r.Register(&rainyun.RainyunRunAwayRuleValidator{})
|
2026-08-30 16:03:32 +08:00
|
|
|
r.Register(&alidns.AliDNSDeleteRecordRuleValidator{})
|
2026-06-19 18:47:36 +08:00
|
|
|
|
2026-07-26 22:19:41 +08:00
|
|
|
registry = r
|
|
|
|
|
})
|
2026-06-19 18:47:36 +08:00
|
|
|
return registry
|
|
|
|
|
}
|