Versions in this module Expand all Collapse all v1 v1.0.0 Jun 24, 2021 Changes in this version + var ErrBadResolverState = errors.New("bad resolver state") + var ErrNoSubConnAvailable = errors.New("no SubConn is available") + var ErrTransientFailure = TransientFailureError(errors.New("all SubConns are in TransientFailure")) + func Register(b Builder) + func TransientFailureError(err error) error + type Balancer interface + Close func() + HandleResolvedAddrs func([]resolver.Address, error) + HandleSubConnStateChange func(sc SubConn, state connectivity.State) + type BuildOptions struct + ChannelzParentID int64 + CredsBundle credentials.Bundle + DialCreds credentials.TransportCredentials + Dialer func(context.Context, string) (net.Conn, error) + Target resolver.Target + type Builder interface + Build func(cc ClientConn, opts BuildOptions) Balancer + Name func() string + func Get(name string) Builder + type ClientConn interface + NewSubConn func([]resolver.Address, NewSubConnOptions) (SubConn, error) + RemoveSubConn func(SubConn) + ResolveNow func(resolver.ResolveNowOptions) + Target func() string + UpdateBalancerState func(s connectivity.State, p Picker) + UpdateState func(State) + type ClientConnState struct + BalancerConfig serviceconfig.LoadBalancingConfig + ResolverState resolver.State + type ConfigParser interface + ParseConfig func(LoadBalancingConfigJSON json.RawMessage) (serviceconfig.LoadBalancingConfig, error) + type ConnectivityStateEvaluator struct + func (cse *ConnectivityStateEvaluator) RecordTransition(oldState, newState connectivity.State) connectivity.State + type DoneInfo struct + BytesReceived bool + BytesSent bool + Err error + ServerLoad interface{} + Trailer metadata.MD + type NewSubConnOptions struct + CredsBundle credentials.Bundle + HealthCheckEnabled bool + type PickInfo struct + Ctx context.Context + FullMethodName string + type PickResult struct + Done func(DoneInfo) + SubConn SubConn + type Picker interface + Pick func(ctx context.Context, info PickInfo) (conn SubConn, done func(DoneInfo), err error) + type State struct + ConnectivityState connectivity.State + Picker V2Picker + type SubConn interface + Connect func() + UpdateAddresses func([]resolver.Address) + type SubConnState struct + ConnectionError error + ConnectivityState connectivity.State + type V2Balancer interface + Close func() + ResolverError func(error) + UpdateClientConnState func(ClientConnState) error + UpdateSubConnState func(SubConn, SubConnState) + type V2Picker interface + Pick func(info PickInfo) (PickResult, error)