Source File
dialoptions.go
Belonging Package
google.golang.org/grpc
package grpc
import (
internalbackoff
)
type dialOptions struct {
unaryInt UnaryClientInterceptor
streamInt StreamClientInterceptor
chainUnaryInts []UnaryClientInterceptor
chainStreamInts []StreamClientInterceptor
cp Compressor
dc Decompressor
bs internalbackoff.Strategy
block bool
returnLastError bool
insecure bool
timeout time.Duration
scChan <-chan ServiceConfig
authority string
copts transport.ConnectOptions
balancerBuilder balancer.Builder
channelzParentID int64
disableServiceConfig bool
disableRetry bool
disableHealthCheck bool
healthCheckFunc internal.HealthChecker
minConnectTimeout func() time.Duration
defaultServiceConfig *ServiceConfig // defaultServiceConfig is parsed from defaultServiceConfigRawJSON.
type DialOption interface {
apply(*dialOptions)
}
type EmptyDialOption struct{}
func (EmptyDialOption) (*dialOptions) {}
type funcDialOption struct {
f func(*dialOptions)
}
func ( *funcDialOption) ( *dialOptions) {
.f()
}
func ( func(*dialOptions)) *funcDialOption {
return &funcDialOption{
f: ,
}
}
func ( int) DialOption {
return newFuncDialOption(func( *dialOptions) {
.copts.WriteBufferSize =
})
}
func ( int) DialOption {
return newFuncDialOption(func( *dialOptions) {
.copts.ReadBufferSize =
})
}
func ( int32) DialOption {
return newFuncDialOption(func( *dialOptions) {
.copts.InitialWindowSize =
})
}
func ( int32) DialOption {
return newFuncDialOption(func( *dialOptions) {
.copts.InitialConnWindowSize =
})
}
func ( int) DialOption {
return WithDefaultCallOptions(MaxCallRecvMsgSize())
}
func ( ...CallOption) DialOption {
return newFuncDialOption(func( *dialOptions) {
.callOptions = append(.callOptions, ...)
})
}
func ( Codec) DialOption {
return WithDefaultCallOptions(CallCustomCodec())
}
func ( Compressor) DialOption {
return newFuncDialOption(func( *dialOptions) {
.cp =
})
}
func ( Decompressor) DialOption {
return newFuncDialOption(func( *dialOptions) {
.dc =
})
}
func ( string) DialOption {
:= balancer.Get()
if == nil {
panic(fmt.Sprintf("grpc.WithBalancerName: no balancer is registered for name %v", ))
}
return newFuncDialOption(func( *dialOptions) {
.balancerBuilder =
})
}
func ( <-chan ServiceConfig) DialOption {
return newFuncDialOption(func( *dialOptions) {
.scChan =
})
}
func ( ConnectParams) DialOption {
return newFuncDialOption(func( *dialOptions) {
.bs = internalbackoff.Exponential{Config: .Backoff}
.minConnectTimeout = func() time.Duration {
return .MinConnectTimeout
}
})
}
func ( time.Duration) DialOption {
return WithBackoffConfig(BackoffConfig{MaxDelay: })
}
func ( BackoffConfig) DialOption {
:= backoff.DefaultConfig
.MaxDelay = .MaxDelay
return withBackoff(internalbackoff.Exponential{Config: })
}
func ( internalbackoff.Strategy) DialOption {
return newFuncDialOption(func( *dialOptions) {
.bs =
})
}
func () DialOption {
return newFuncDialOption(func( *dialOptions) {
.block = true
})
}
func () DialOption {
return newFuncDialOption(func( *dialOptions) {
.block = true
.returnLastError = true
})
}
func () DialOption {
return newFuncDialOption(func( *dialOptions) {
.insecure = true
})
}
func () DialOption {
return newFuncDialOption(func( *dialOptions) {
.withProxy = false
})
}
func ( credentials.TransportCredentials) DialOption {
return newFuncDialOption(func( *dialOptions) {
.copts.TransportCredentials =
})
}
func ( credentials.PerRPCCredentials) DialOption {
return newFuncDialOption(func( *dialOptions) {
.copts.PerRPCCredentials = append(.copts.PerRPCCredentials, )
})
}
func ( credentials.Bundle) DialOption {
return newFuncDialOption(func( *dialOptions) {
.copts.CredsBundle =
})
}
func ( time.Duration) DialOption {
return newFuncDialOption(func( *dialOptions) {
.timeout =
})
}
func ( func(context.Context, string) (net.Conn, error)) DialOption {
return newFuncDialOption(func( *dialOptions) {
.copts.Dialer =
})
}
func () {
internal.WithHealthCheckFunc = withHealthCheckFunc
}
func ( stats.Handler) DialOption {
return newFuncDialOption(func( *dialOptions) {
.copts.StatsHandler =
})
}
func ( bool) DialOption {
return newFuncDialOption(func( *dialOptions) {
.copts.FailOnNonTempDialError =
})
}
func ( string) DialOption {
return newFuncDialOption(func( *dialOptions) {
.copts.UserAgent =
})
}
func ( keepalive.ClientParameters) DialOption {
if .Time < internal.KeepaliveMinPingTime {
logger.Warningf("Adjusting keepalive ping interval to minimum period of %v", internal.KeepaliveMinPingTime)
.Time = internal.KeepaliveMinPingTime
}
return newFuncDialOption(func( *dialOptions) {
.copts.KeepaliveParams =
})
}
func ( UnaryClientInterceptor) DialOption {
return newFuncDialOption(func( *dialOptions) {
.unaryInt =
})
}
func ( ...UnaryClientInterceptor) DialOption {
return newFuncDialOption(func( *dialOptions) {
.chainUnaryInts = append(.chainUnaryInts, ...)
})
}
func ( StreamClientInterceptor) DialOption {
return newFuncDialOption(func( *dialOptions) {
.streamInt =
})
}
func ( ...StreamClientInterceptor) DialOption {
return newFuncDialOption(func( *dialOptions) {
.chainStreamInts = append(.chainStreamInts, ...)
})
}
func ( string) DialOption {
return newFuncDialOption(func( *dialOptions) {
.authority =
})
}
func ( int64) DialOption {
return newFuncDialOption(func( *dialOptions) {
.channelzParentID =
})
}
func () DialOption {
return newFuncDialOption(func( *dialOptions) {
.disableServiceConfig = true
})
}
func ( string) DialOption {
return newFuncDialOption(func( *dialOptions) {
.defaultServiceConfigRawJSON = &
})
}
func () DialOption {
return newFuncDialOption(func( *dialOptions) {
.disableRetry = true
})
}
func ( uint32) DialOption {
return newFuncDialOption(func( *dialOptions) {
.copts.MaxHeaderListSize = &
})
}
func () DialOption {
return newFuncDialOption(func( *dialOptions) {
.disableHealthCheck = true
})
}
func ( internal.HealthChecker) DialOption {
return newFuncDialOption(func( *dialOptions) {
.healthCheckFunc =
})
}
func () dialOptions {
return dialOptions{
disableRetry: !envconfig.Retry,
healthCheckFunc: internal.HealthCheckFunc,
copts: transport.ConnectOptions{
WriteBufferSize: defaultWriteBufSize,
ReadBufferSize: defaultReadBufSize,
},
resolveNowBackoff: internalbackoff.DefaultExponential.Backoff,
withProxy: true,
}
}
func ( func() time.Duration) DialOption {
return newFuncDialOption(func( *dialOptions) {
.minConnectTimeout =
})
}
func ( func(int) time.Duration) DialOption {
return newFuncDialOption(func( *dialOptions) {
.resolveNowBackoff =
})
}
func ( ...resolver.Builder) DialOption {
return newFuncDialOption(func( *dialOptions) {
.resolvers = append(.resolvers, ...)
})
![]() |
The pages are generated with Golds v0.3.2-preview. (GOOS=darwin GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds. |