ToyBoomServer/rpc/manager.go
2024-09-02 18:07:30 +00:00

41 lines
704 B
Go

package rpc
import (
"github.com/Timothylock/go-signin-with-apple/apple"
"github.com/nose7en/ToyBoomServer/config"
)
type Manager interface {
AppleCli() *AppleClient
}
var (
mgr Manager = (*manager)(nil)
)
func GetManager() Manager {
return mgr
}
func InitManager() {
mgr = &manager{}
}
type manager struct {
appleCli *AppleClient
}
func (m *manager) AppleCli() *AppleClient {
if m.appleCli == nil {
m.appleCli = &AppleClient{
Client: apple.New(),
teamID: config.GetSettings().AppleCfg.TeamID,
clientID: config.GetSettings().AppleCfg.ClientID,
keyID: config.GetSettings().AppleCfg.KeyID,
secret: config.GetSettings().AppleCfg.Secret,
}
}
return m.appleCli
}