diff --git a/rpc/client/conn.go b/rpc/client/conn.go index 9fc7a51..f208413 100644 --- a/rpc/client/conn.go +++ b/rpc/client/conn.go @@ -2,8 +2,16 @@ package client import ( "io" + + "google.golang.org/grpc" ) +// Conn is an interface for grpc client connection. +type Conn interface { + grpc.ClientConnInterface + io.Closer +} + // Conn returns underlying connection. // // Returns non-nil result after the first Init() call diff --git a/rpc/client/options.go b/rpc/client/options.go index 0575dfc..22358a3 100644 --- a/rpc/client/options.go +++ b/rpc/client/options.go @@ -25,7 +25,7 @@ type cfg struct { tlsCfg *tls.Config grpcDialOpts []grpc.DialOption - conn *grpc.ClientConn + conn Conn } const ( @@ -114,7 +114,7 @@ func WithTLSCfg(v *tls.Config) Option { // WithGRPCConn returns option to specify // gRPC virtual connection. -func WithGRPCConn(v *grpc.ClientConn) Option { +func WithGRPCConn(v Conn) Option { return func(c *cfg) { if v != nil { c.conn = v