.
This commit is contained in:
42
internal/module/ssq_module.go
Normal file
42
internal/module/ssq_module.go
Normal file
@@ -0,0 +1,42 @@
|
||||
package module
|
||||
|
||||
import (
|
||||
"context"
|
||||
"ssq-desk/internal/api"
|
||||
)
|
||||
|
||||
// SsqModule 双色球查询模块
|
||||
type SsqModule struct {
|
||||
BaseModule
|
||||
ssqAPI *api.SsqAPI
|
||||
}
|
||||
|
||||
// NewSsqModule 创建双色球查询模块
|
||||
func NewSsqModule() (*SsqModule, error) {
|
||||
// 延迟初始化,等到 Init() 方法调用时再创建 API(此时数据库已初始化)
|
||||
return &SsqModule{
|
||||
BaseModule: BaseModule{
|
||||
name: "ssq",
|
||||
api: nil, // 延迟初始化
|
||||
},
|
||||
ssqAPI: nil, // 延迟初始化
|
||||
}, nil
|
||||
}
|
||||
|
||||
// Init 初始化模块
|
||||
func (m *SsqModule) Init(ctx context.Context) error {
|
||||
if m.ssqAPI == nil {
|
||||
ssqAPI, err := api.NewSsqAPI()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
m.ssqAPI = ssqAPI
|
||||
m.api = ssqAPI
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// SsqAPI 返回 SSQ API(类型安全)
|
||||
func (m *SsqModule) SsqAPI() *api.SsqAPI {
|
||||
return m.ssqAPI
|
||||
}
|
||||
Reference in New Issue
Block a user