// Copyright 2025 linux.do // Copyright 2026 Arctel.net // SPDX-License-Identifier: Apache-2.0 // Package handlers 注册异步任务处理器 package handlers import ( "github.com/Rain-kl/Wavelet/internal/apps/admin/push" "github.com/Rain-kl/Wavelet/internal/apps/openflare" cf "github.com/Rain-kl/Wavelet/internal/apps/openflare/cloudflare" "github.com/Rain-kl/Wavelet/internal/apps/openflare/pages" "github.com/Rain-kl/Wavelet/internal/apps/openflare/tasks" "github.com/Rain-kl/Wavelet/internal/apps/openflare/tls" "github.com/Rain-kl/Wavelet/internal/apps/upload" "github.com/Rain-kl/Wavelet/internal/apps/user" "github.com/Rain-kl/Wavelet/internal/infra/task" ) // Register registers all built-in task handlers and their metadata. func Register() { task.RegisterHandler(upload.StorageMigrationTask, &upload.MigrationHandler{}) task.RegisterTaskMeta(upload.StorageMigrationMeta) // system cleanup task.RegisterHandler(upload.SystemCleanupTask, &upload.SystemCleanupHandler{}) task.RegisterTaskMeta(upload.SystemCleanupMeta) // upload task.RegisterHandler(upload.WarmImageCacheTask, &upload.WarmImageCacheHandler{}) task.RegisterTaskMeta(upload.WarmImageCacheMeta) task.RegisterHandler(upload.RebuildUploadStatsTask, &upload.RebuildUploadStatsHandler{}) task.RegisterTaskMeta(upload.RebuildUploadStatsMeta) // user task.RegisterHandler(user.SendEmailTask, &user.SendEmailHandler{}) task.RegisterTaskMeta(user.SendEmailMeta) // push task.RegisterHandler(push.SendNotificationTask, &push.PushHandler{}) task.RegisterTaskMeta(push.SendNotificationMeta) // openflare task.RegisterHandler(openflare.SSLRenewTask, &openflare.SSLRenewHandler{}) task.RegisterTaskMeta(openflare.SSLRenewMeta) task.RegisterHandler(openflare.WAFIPGroupSyncTask, &openflare.WAFIPGroupSyncHandler{}) task.RegisterTaskMeta(openflare.WAFIPGroupSyncMeta) task.RegisterHandler(openflare.UptimeKumaSyncTask, &openflare.UptimeKumaSyncHandler{}) task.RegisterTaskMeta(openflare.UptimeKumaSyncMeta) task.RegisterHandler(openflare.LogDBSwitchTask, &tasks.LogDBSwitchHandler{}) task.RegisterTaskMeta(openflare.LogDBSwitchMeta) task.RegisterHandler(cf.SyncMemberTask, &cf.SyncMemberTaskHandler{}) task.RegisterTaskMeta(cf.SyncMemberMeta) task.RegisterHandler(cf.SyncGroupTask, &cf.SyncGroupTaskHandler{}) task.RegisterTaskMeta(cf.SyncGroupMeta) task.RegisterHandler(cf.SyncByNodeTask, &cf.SyncByNodeTaskHandler{}) task.RegisterTaskMeta(cf.SyncByNodeMeta) // pages source actions are only dispatched by the Pages domain API/scanner. task.RegisterHandler(pages.PagesSourceScanTask, &pages.SourceScanHandler{}) task.RegisterTaskMeta(pages.PagesSourceScanMeta) task.RegisterHandler(pages.PagesSourceActionTask, &pages.SourceActionHandler{}) task.RegisterTaskMeta(pages.PagesSourceActionMeta) // tls single renew task.RegisterHandler(tls.SSLSingleRenewTask, &tls.SSLSingleRenewHandler{}) task.RegisterTaskMeta(tls.SSLSingleRenewMeta) }