1 // Copyright 2020 Google LLC. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 package internal 6 7 import ( 8 "google.golang.org/grpc" 9 ) 10 11 // ConnPool is a pool of grpc.ClientConns. 12 type ConnPool interface { 13 // Conn returns a ClientConn from the pool. 14 // 15 // Conns aren't returned to the pool. 16 Conn() *grpc.ClientConn 17 18 // Num returns the number of connections in the pool. 19 // 20 // It will always return the same value. 21 Num() int 22 23 // Close closes every ClientConn in the pool. 24 // 25 // The error returned by Close may be a single error or multiple errors. 26 Close() error 27 28 // ConnPool implements grpc.ClientConnInterface to enable it to be used directly with generated proto stubs. 29 grpc.ClientConnInterface 30 } 31