2022-09-09 18:26:08 +08:00
|
|
|
package application
|
|
|
|
|
|
2023-02-13 21:11:16 +08:00
|
|
|
import (
|
2024-01-21 22:52:20 +08:00
|
|
|
"mayfly-go/pkg/ioc"
|
2023-12-27 22:59:20 +08:00
|
|
|
"sync"
|
2023-02-13 21:11:16 +08:00
|
|
|
)
|
2022-09-09 18:26:08 +08:00
|
|
|
|
2024-01-22 11:35:28 +08:00
|
|
|
func InitIoc() {
|
2024-01-21 22:52:20 +08:00
|
|
|
ioc.Register(new(instanceAppImpl), ioc.WithComponentName("DbInstanceApp"))
|
|
|
|
|
ioc.Register(new(dbAppImpl), ioc.WithComponentName("DbApp"))
|
|
|
|
|
ioc.Register(new(dbSqlExecAppImpl), ioc.WithComponentName("DbSqlExecApp"))
|
|
|
|
|
ioc.Register(new(dbSqlAppImpl), ioc.WithComponentName("DbSqlApp"))
|
|
|
|
|
ioc.Register(new(dataSyncAppImpl), ioc.WithComponentName("DbDataSyncTaskApp"))
|
2024-03-15 09:01:51 +00:00
|
|
|
ioc.Register(new(dbTransferAppImpl), ioc.WithComponentName("DbTransferTaskApp"))
|
2024-10-20 03:52:23 +00:00
|
|
|
ioc.Register(new(dbTransferFileAppImpl), ioc.WithComponentName("DbTransferFileApp"))
|
2024-01-23 04:06:08 +00:00
|
|
|
|
|
|
|
|
ioc.Register(newDbScheduler(), ioc.WithComponentName("DbScheduler"))
|
|
|
|
|
ioc.Register(new(DbBackupApp), ioc.WithComponentName("DbBackupApp"))
|
|
|
|
|
ioc.Register(new(DbRestoreApp), ioc.WithComponentName("DbRestoreApp"))
|
|
|
|
|
ioc.Register(newDbBinlogApp(), ioc.WithComponentName("DbBinlogApp"))
|
2024-01-21 22:52:20 +08:00
|
|
|
}
|
|
|
|
|
|
2023-12-27 22:59:20 +08:00
|
|
|
func Init() {
|
|
|
|
|
sync.OnceFunc(func() {
|
2024-10-20 03:52:23 +00:00
|
|
|
//if err := GetDbBackupApp().Init(); err != nil {
|
|
|
|
|
// panic(fmt.Sprintf("初始化 DbBackupApp 失败: %v", err))
|
|
|
|
|
//}
|
|
|
|
|
//if err := GetDbRestoreApp().Init(); err != nil {
|
|
|
|
|
// panic(fmt.Sprintf("初始化 DbRestoreApp 失败: %v", err))
|
|
|
|
|
//}
|
|
|
|
|
//if err := GetDbBinlogApp().Init(); err != nil {
|
|
|
|
|
// panic(fmt.Sprintf("初始化 DbBinlogApp 失败: %v", err))
|
|
|
|
|
//}
|
2024-01-21 22:52:20 +08:00
|
|
|
GetDataSyncTaskApp().InitCronJob()
|
2024-10-20 03:52:23 +00:00
|
|
|
GetDbTransferTaskApp().InitCronJob()
|
2024-02-29 22:12:50 +08:00
|
|
|
InitDbFlowHandler()
|
2023-12-27 22:59:20 +08:00
|
|
|
})()
|
|
|
|
|
}
|
|
|
|
|
|
2024-02-29 22:12:50 +08:00
|
|
|
func GetDbSqlExecApp() DbSqlExec {
|
|
|
|
|
return ioc.Get[DbSqlExec]("DbSqlExecApp")
|
|
|
|
|
}
|
|
|
|
|
|
2023-12-27 22:59:20 +08:00
|
|
|
func GetDbBackupApp() *DbBackupApp {
|
2024-01-23 04:06:08 +00:00
|
|
|
return ioc.Get[*DbBackupApp]("DbBackupApp")
|
2023-12-27 22:59:20 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func GetDbRestoreApp() *DbRestoreApp {
|
2024-01-23 04:06:08 +00:00
|
|
|
return ioc.Get[*DbRestoreApp]("DbRestoreApp")
|
2023-12-27 22:59:20 +08:00
|
|
|
}
|
|
|
|
|
|
2024-01-05 08:55:34 +08:00
|
|
|
func GetDbBinlogApp() *DbBinlogApp {
|
2024-01-23 04:06:08 +00:00
|
|
|
return ioc.Get[*DbBinlogApp]("DbBinlogApp")
|
2024-01-05 08:55:34 +08:00
|
|
|
}
|
2024-01-05 05:31:32 +00:00
|
|
|
|
|
|
|
|
func GetDataSyncTaskApp() DataSyncTask {
|
2024-01-21 22:52:20 +08:00
|
|
|
return ioc.Get[DataSyncTask]("DbDataSyncTaskApp")
|
2024-01-05 05:31:32 +00:00
|
|
|
}
|
2024-03-15 09:01:51 +00:00
|
|
|
func GetDbTransferTaskApp() DbTransferTask {
|
|
|
|
|
return ioc.Get[DbTransferTask]("DbTransferTaskApp")
|
|
|
|
|
}
|