@@ -9,26 +9,34 @@ import (
99
1010type Interceptor = func (ctx context.Context , method string ) (context.Context , error )
1111
12- func UnaryServerInterceptor (intercept Interceptor ) grpc.ServerOption {
13- return grpc .UnaryInterceptor (
14- func (ctx context.Context , req interface {}, info * grpc.UnaryServerInfo , handler grpc.UnaryHandler ) (interface {}, error ) {
15- newCtx , err := intercept (ctx , info .FullMethod )
16- if err != nil {
17- return nil , err
18- }
19- return handler (newCtx , req )
20- })
12+ func UnaryServerInterceptorOption (intercept Interceptor ) grpc.ServerOption {
13+ return grpc .UnaryInterceptor (UnaryServerInterceptor (intercept ))
2114}
2215
23- func StreamServerInterceptor (intercept Interceptor ) grpc.ServerOption {
24- return grpc .StreamInterceptor (
25- func (srv interface {}, stream grpc.ServerStream , info * grpc.StreamServerInfo , handler grpc.StreamHandler ) error {
26- newCtx , err := intercept (stream .Context (), info .FullMethod )
27- if err != nil {
28- return err
29- }
30- wrapped := grpc_middleware .WrapServerStream (stream )
31- wrapped .WrappedContext = newCtx
32- return handler (srv , wrapped )
33- })
16+ func StreamServerInterceptorOption (intercept Interceptor ) grpc.ServerOption {
17+ return grpc .StreamInterceptor (StreamServerInterceptor (intercept ))
18+ }
19+
20+ // StreamServerInterceptor returns a new unary server interceptors that performs per-request auth.
21+ func StreamServerInterceptor (intercept Interceptor ) grpc.StreamServerInterceptor {
22+ return func (srv interface {}, stream grpc.ServerStream , info * grpc.StreamServerInfo , handler grpc.StreamHandler ) error {
23+ newCtx , err := intercept (stream .Context (), info .FullMethod )
24+ if err != nil {
25+ return err
26+ }
27+ wrapped := grpc_middleware .WrapServerStream (stream )
28+ wrapped .WrappedContext = newCtx
29+ return handler (srv , wrapped )
30+ }
31+ }
32+
33+ // UnaryServerInterceptor returns a new unary server interceptors that performs per-request auth.
34+ func UnaryServerInterceptor (intercept Interceptor ) grpc.UnaryServerInterceptor {
35+ return func (ctx context.Context , req interface {}, info * grpc.UnaryServerInfo , handler grpc.UnaryHandler ) (interface {}, error ) {
36+ newCtx , err := intercept (ctx , info .FullMethod )
37+ if err != nil {
38+ return nil , err
39+ }
40+ return handler (newCtx , req )
41+ }
3442}
0 commit comments