package tickevent import ( "gitlink.org.cn/cloudream/common/pkgs/logger" scevt "gitlink.org.cn/cloudream/jcs-pub/common/pkgs/mq/scanner/event" "gitlink.org.cn/cloudream/jcs-pub/scanner/internal/event" ) type CheckHubState struct { } func NewCheckHubState() *CheckHubState { return &CheckHubState{} } func (e *CheckHubState) Execute(ctx ExecuteContext) { log := logger.WithType[CheckHubState]("TickEvent") log.Debugf("begin") defer log.Debugf("end") hubs, err := ctx.Args.DB.Hub().GetAllHubs(ctx.Args.DB.DefCtx()) if err != nil { log.Warnf("get all hubs failed, err: %s", err.Error()) return } for _, hub := range hubs { ctx.Args.EventExecutor.Post(event.NewHubCheckState(scevt.NewHubCheckState(hub.HubID)), event.ExecuteOption{ IsEmergency: true, DontMerge: true, }) } }