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.
26 lines
551 B
26 lines
551 B
package grpc
|
|
|
|
import (
|
|
pb "{{.ModPrefix}}{{.Name}}/api"
|
|
|
|
"github.com/go-kratos/kratos/pkg/conf/paladin"
|
|
"github.com/go-kratos/kratos/pkg/net/rpc/warden"
|
|
)
|
|
|
|
// New new a grpc server.
|
|
func New(svc pb.DemoServer) (ws *warden.Server, err error) {
|
|
var (
|
|
cfg warden.ServerConfig
|
|
ct paladin.TOML
|
|
)
|
|
if err = paladin.Get("grpc.toml").Unmarshal(&ct); err != nil {
|
|
return
|
|
}
|
|
if err = ct.Get("Server").UnmarshalTOML(&cfg); err != nil {
|
|
return
|
|
}
|
|
ws = warden.NewServer(&cfg)
|
|
pb.RegisterDemoServer(ws.Server(), svc)
|
|
ws, err = ws.Start()
|
|
return
|
|
}
|
|
|