33 lines
1.0 KiB
Go
33 lines
1.0 KiB
Go
// Code scaffolded by goctl. Safe to edit.
|
|
// goctl 1.9.2
|
|
|
|
package svc
|
|
|
|
import (
|
|
"github.com/zero-ppanel/zero-ppanel/apps/api/internal/config"
|
|
"github.com/zero-ppanel/zero-ppanel/apps/api/internal/middleware"
|
|
coreClient "github.com/zero-ppanel/zero-ppanel/apps/rpc/core/coreclient"
|
|
"github.com/zero-ppanel/zero-ppanel/pkg/signature"
|
|
"github.com/zeromicro/go-zero/core/stores/redis"
|
|
"github.com/zeromicro/go-zero/zrpc"
|
|
)
|
|
|
|
type ServiceContext struct {
|
|
Config config.Config
|
|
CoreRpc coreClient.Core
|
|
SignatureMiddleware *middleware.SignatureMiddleware
|
|
DecryptMiddleware *middleware.DecryptMiddleware
|
|
}
|
|
|
|
func NewServiceContext(c config.Config) *ServiceContext {
|
|
rds := redis.MustNewRedis(c.CacheRedis)
|
|
nonceStore := signature.NewRedisNonceStore(rds)
|
|
|
|
return &ServiceContext{
|
|
Config: c,
|
|
CoreRpc: coreClient.NewCore(zrpc.MustNewClient(c.CoreRpc)),
|
|
SignatureMiddleware: middleware.NewSignatureMiddleware(c, nonceStore),
|
|
DecryptMiddleware: middleware.NewDecryptMiddleware(c),
|
|
}
|
|
}
|