go-micro.dev/v5@v5.12.0/util/pool/options.go (about) 1 package pool 2 3 import ( 4 "time" 5 6 "go-micro.dev/v5/transport" 7 ) 8 9 type Options struct { 10 Transport transport.Transport 11 TTL time.Duration 12 CloseTimeout time.Duration 13 Size int 14 } 15 16 type Option func(*Options) 17 18 func Size(i int) Option { 19 return func(o *Options) { 20 o.Size = i 21 } 22 } 23 24 func Transport(t transport.Transport) Option { 25 return func(o *Options) { 26 o.Transport = t 27 } 28 } 29 30 func TTL(t time.Duration) Option { 31 return func(o *Options) { 32 o.TTL = t 33 } 34 } 35 36 func CloseTimeout(t time.Duration) Option { 37 return func(o *Options) { 38 o.CloseTimeout = t 39 } 40 }