41 lines
704 B
Go
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
|
|
}
|