Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
This commit is contained in:
2021-03-24 15:32:19 +03:00
parent 225cdfd469
commit 9030637204
3 changed files with 29 additions and 80 deletions

25
grpc.go
View File

@@ -28,6 +28,7 @@ type grpcClient struct {
codecs map[string]encoding.Codec
pool *pool
once atomic.Value
init bool
sync.RWMutex
}
@@ -315,6 +316,9 @@ func (g *grpcClient) newGRPCCodec(ct string) (codec.Codec, error) {
}
func (g *grpcClient) Init(opts ...client.Option) error {
if len(opts) == 0 && g.init {
return nil
}
size := g.opts.PoolSize
ttl := g.opts.PoolTTL
@@ -330,6 +334,27 @@ func (g *grpcClient) Init(opts ...client.Option) error {
g.pool.Unlock()
}
if err := g.opts.Broker.Init(); err != nil {
return err
}
if err := g.opts.Tracer.Init(); err != nil {
return err
}
if err := g.opts.Router.Init(); err != nil {
return err
}
if err := g.opts.Logger.Init(); err != nil {
return err
}
if err := g.opts.Meter.Init(); err != nil {
return err
}
if err := g.opts.Transport.Init(); err != nil {
return err
}
g.init = true
return nil
}