You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

65 lines
2.2 KiB

2 months ago
package server
import (
"github.com/go-kratos/kratos/v2/log"
"github.com/go-kratos/kratos/v2/middleware/recovery"
"github.com/go-kratos/kratos/v2/transport/grpc"
"matchmaking-system/internal/conf"
"matchmaking-system/internal/service"
backend "matchmaking-system/api/matchmaking/v1/backend"
block "matchmaking-system/api/matchmaking/v1/block"
forex "matchmaking-system/api/matchmaking/v1/forex"
money "matchmaking-system/api/matchmaking/v1/money"
option "matchmaking-system/api/matchmaking/v1/option"
order "matchmaking-system/api/matchmaking/v1/order"
share "matchmaking-system/api/matchmaking/v1/share"
virtually "matchmaking-system/api/matchmaking/v1/virtually"
)
// NewGRPCServer
//
// @Description:
// @param c
// @param s
// @param logger
// @return *grpc.Server
func NewGRPCServer(c *conf.Server, s *service.ConduitService, logger log.Logger) *grpc.Server {
var opts = []grpc.ServerOption{
grpc.Middleware(
recovery.Recovery(),
),
}
if c.Grpc.Network != "" {
opts = append(opts, grpc.Network(c.Grpc.Network))
}
if c.Grpc.Addr != "" {
opts = append(opts, grpc.Address(c.Grpc.Addr))
}
srv := grpc.NewServer(opts...)
order.RegisterOrderServer(srv, s) // Order pre
virtually.RegisterSpotsServer(srv, s) // Spot
virtually.RegisterSecondServer(srv, s) // Second
virtually.RegisterContractServer(srv, s) // Contract
forex.RegisterForexServer(srv, s) // Forex
money.RegisterMoneyServer(srv, s) // Money
backend.RegisterBackendServer(srv, s) // Backend
share.RegisterShareUsServer(srv, s) // Us
share.RegisterShareThaServer(srv, s) // Tha
share.RegisterShareIdnServer(srv, s) // Idn
share.RegisterShareInrServer(srv, s) // Inr
share.RegisterShareMysServer(srv, s) // Mys
share.RegisterShareSgdServer(srv, s) // Sgd
share.RegisterShareGbxServer(srv, s) // Gbx
share.RegisterShareHkdServer(srv, s) // Hkd
share.RegisterShareEurServer(srv, s) // Eur
share.RegisterShareFurServer(srv, s) // Fur
share.RegisterShareJpyServer(srv, s) // Jpy
share.RegisterShareBrlServer(srv, s) // Brl
block.RegisterBlockTradeServer(srv, s) // Block stock
option.RegisterOptionInrServer(srv, s) // Option inr
return srv
}