// 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), } }