Documentation ¶
Index ¶
- Variables
- func InitServices(ctx context.Context, services map[string]config.ServicesConfig) (map[string]Service, error)
- func Register(name string, newFunc NewService)
- func RegisterStreamInterceptor(name string, newFunc NewStreamInterceptor)
- func RegisterUnaryInterceptor(name string, newFunc NewUnaryInterceptor)
- type NewService
- type NewStreamInterceptor
- type NewUnaryInterceptor
- type Option
- func EnableReflection(enable bool) Option
- func WithLogger(logger zerolog.Logger) Option
- func WithServices(services map[string]Service) Option
- func WithShutdownDeadline(deadline int) Option
- func WithStreamServerInterceptors(in []grpc.StreamServerInterceptor) Option
- func WithUnaryServerInterceptors(in []grpc.UnaryServerInterceptor) Option
- type Server
- type Service
Constants ¶
This section is empty.
Variables ¶
var Services = map[string]NewService{}
Services is a map of service name and its new function.
var StreamInterceptors = map[string]NewStreamInterceptor{}
StreamInterceptors is a map of registered streaming grpc interceptor.
var UnaryInterceptors = map[string]NewUnaryInterceptor{}
UnaryInterceptors is a map of registered unary grpc interceptors.
Functions ¶
func InitServices ¶ added in v1.25.0
func Register ¶
func Register(name string, newFunc NewService)
Register registers a new gRPC service with name and new function.
func RegisterStreamInterceptor ¶
func RegisterStreamInterceptor(name string, newFunc NewStreamInterceptor)
RegisterStreamInterceptor registers a new stream interceptor.
func RegisterUnaryInterceptor ¶
func RegisterUnaryInterceptor(name string, newFunc NewUnaryInterceptor)
RegisterUnaryInterceptor registers a new unary interceptor.
Types ¶
type NewService ¶
NewService is the function that gRPC services need to register at init time. It returns an io.Closer to close the service and a list of service endpoints that need to be unprotected.
type NewStreamInterceptor ¶
type NewStreamInterceptor func(m map[string]interface{}) (grpc.StreamServerInterceptor, int, error)
NewStreamInterceptor is the type that stream interceptors need to register.
type NewUnaryInterceptor ¶
type NewUnaryInterceptor func(m map[string]interface{}) (grpc.UnaryServerInterceptor, int, error)
NewUnaryInterceptor is the type that unary interceptors need to register.
type Option ¶ added in v1.25.0
type Option func(*Server)
func EnableReflection ¶ added in v1.25.0
func WithLogger ¶ added in v1.25.0
func WithServices ¶ added in v1.25.0
func WithShutdownDeadline ¶ added in v1.25.0
func WithStreamServerInterceptors ¶ added in v1.25.0
func WithStreamServerInterceptors(in []grpc.StreamServerInterceptor) Option
func WithUnaryServerInterceptors ¶ added in v1.25.0
func WithUnaryServerInterceptors(in []grpc.UnaryServerInterceptor) Option
type Server ¶
type Server struct { ShutdownDeadline int EnableReflection bool UnaryServerInterceptors []grpc.UnaryServerInterceptor StreamServerInterceptors []grpc.StreamServerInterceptor // contains filtered or unexported fields }
Server is a gRPC server.
func (*Server) GracefulStop ¶
GracefulStop gracefully stops the server.